전체 글

거거거중지 행행행리각
c언어

비트, 비교, 논리 연산자

c언어와 같이 배우는 전공과목중 컴퓨터 구조가 있습니다. 거기서는 지금 불 대수와 and, or, not, xor 과 시프트 게이트 회로를 배우고 있는데요. 이것을 c언어에서도 연산자로 처리해줄 수 있다는 것, 아시나요? 이번시간은 그런 수의 논리연산을 해주는 비트연산자, 항의 논리연산을 해주는 논리연산자, 두 항을 비교하는 비교연산자를 알아보겠습니다. 복습해보자면, AND연산은 두 입력을 곱해주는 논리곱이였습니다. OR연산은 두 입력을 더해주는 논리합이구요. NOT연산은 입력값을 반전시키는 데요. XOR은 두 입력이 다르면 1을 출력하는 배타적 논리합이였습니다. 마지막으로 쉬프트는 모든 비트를 그대로 한칸씩 옆으로 이동시키는 연산을 했습니다. 이런 연산을 c언어에서 그대로 할 수 있습니다! 비트연산자를..

c언어

산술, 대입연산 예제

산술, 대입연산자를 배우고 코드로 한번 써먹지를 못했었는데, 이번시간은 순차구조(1), (2) 학습지에 있는 예제를 풀어보는 시간을 가져봅시다! 학습지 1 과제1> 두 수를 입력 받아 곱셈을 한 결과를 출력하는 프로그램을 작성해보자. #include void main(){ int a, b; scanf("%d %d", &a, &b); printf("결과: %d", a*b); // 출력될 때 " "안에 써있는 내용대로 "결과: (a*b값)"이 출력됩니다. } 과제2> 두 수를 입력 받아 두 수의 몫과 나머지를 구하는 프로그램을 작성해보자. #include void main(){ int a, b; scanf("%d %d", &a, &b); printf("몫: %d, 나머지: %d", a/b, a%b); // ..

c언어

다양한 자료형, 상수화

'일정 길이의 메모리에 대한 정보를 해석해주는 방법'이 자료형이라 전 시간 했었죠. 그리고 간단한 자료형의 종류 4가지를 알아봤는데, 이번에는 한번 자료형에 대해서 깊숙히 들어가보는 시간을 가져봅시다. 학교에서도 벌써 다시 한주가 지나서 산업교사 선생님의 수업이 진행되는 월요일이 되었습니다. 오늘의 시간에는 잠시동안 여려울수도 있어도 꼭 알아두어야할 자료형의 종류와 변수가 저장되는 공간인 메모리에 대해 언급하는 시간이 되었습니다. 예전 시간에 변수에 대해서 배웠습니다. 상수를 담는 그릇을 변수라 했는데, 과연 변수는 어떻게 상수를 저장하게 될까요? 바로 컴퓨터의 저장공간을 사용합니다. 거기서 저장할 상수를 기억(메모리)하도록 하는 것입니다. 그래서 모든 변수가 숫자, 문자, 문자열같은 모든 상수를 기억할..

c언어

산술, 대입 연산자, 형 확장

컴퓨터의 기본구조는 뭐였었죠? 바로 헤더파일과 main()함수 였습니다. 여기에 직접 변수를 선언해서 값을 입력해 넣어주거나 출력해보도록 하는데요. 오늘은 그 값을 사칙연산을 사용해서 맘껏 바꾸는 방법을 배울 것입니다. 바로, 산술연산자라는 얘인데요. 쉽게 말해서 덧셈, 뺄셈, 곱셈, 나눗셈을 c언어에서 할 수 있게 하는 기호입니다. 추가로 여기에 나머지연산자(%)가 들어간 것이 독특합니다. 아마 친숙한 기호이기에 더욱 쉽게 이해할 수 있겠는데, 그러면 c언어에서 사칙연산과 같이 따라다니는 ' = '도 쓰일까요? 있습니다. 대신에 =는 단순대입연산자라 쓰이는데요. 기본적으로 알고있는 양 옆의 항이 같다는 기호로 쓰이는 것이 아니라, 오른쪽의 변수나 상수를 왼쪽의 변수로 대입하는 역할을 합니다. (양 옆의..

c언어

C언어 자료형

지난시간 알아봤던 코드중 해석을 오묘하게 했던 코드가 있습니다. 바로 int 인데요, 그냥 평범한 10진수 정수를 담는 변수를 뜻한다 했는데, 지난시간 맞닥트린 입력코드에서 소수를 넣지못하는 에러는 과연 어떻게 해결할 수 있을까요? 과연 c언어에서 소수와 같은 다양한 수의 표현은 어떻게 변수로 담아야 할지, 이번시간은 그 해답을 쥐고있는 자료형에 대해서 학습해보았습니다. 형식문자에도 다양한 종류가 있었습니다. 다시 한번 복습겸 표를 가져오자면 아래같이 많은데요. 서식문자 자료형 의미 %d int 10진수 정수 %i %c char 문자 %f float, double 고정소수점 방식 실수 %e 부동소수점 방식 실수 (소문자) %E 부동소수점 방식 실수 (대문자) %o unsigned int 8진수 정수 %u..

c언어

입출력 함수

맨처음 c언어로 처음에 글자를 출력할 때 사용했던 코드인 printf 함수가 있었는데요, 이 것을 사용하면서 #include라는 헤더파일도 사용했었습니다. 이번 시간에는 과연 그것이 뭔지, printf함수에 대해 깊게 알아보고 printf함수의 짝꿍인 scanf도 알아 보았습니다! printf는 화면에 글자를 나타내는 대표적인 출력함수 입니다. 출력함수... 출력이라고 하면 따라오는 반댓말이 있습니다. 바로 입력인데요, 이 입력과 출력을 해주는 c언어의 함수가 있습니다. 그러니까 c언어에서 키보드로 글자를 입력받는 역할을 하는 함수(=입력함수)와 글자를 실행되는 화면에 출력하는 역할을 하는 함수(=출력함수)가 있는 것입니다. 우선 먼저 이야기할 출력함수는 사실 printf함수 말고도 여러가지가 있습니다...

c언어

상수와 변수

컴퓨터는 모두 수로 되어있다는 사실 아시나요? 이번시간에서는 컴퓨터의 수의 종류에 대해서 알아보았습니다! 변수와 상수, 둘다 어디선가 들어봤던 조금은 익숙한 단어일텐데요. 어디 c언어에서 이 둘이 뭔지 볼까요? 컴퓨터의 수에는 상수와 변수가 있습니다. 상수는 우리가 흔하게 알던 그 수이지만, 변수는 좀 다릅니다. 변하는 수라고도 하는데, 정확히는 상수를 담는 그릇을 변수라고 합니다! 상수는 수학에서 본 그 수 입니다. 여기서는 기본적인 숫자상수와 문자, 문자열상수도 존재하는데요. 숫자상수는 '1', '2', '3.4' 같은 것인지는 알겠는데, 문자상수와 문자열 상수는 뭘까요? 컴퓨터에서는 모든 정보가 수로 되어있기 때문에 문자도 숫자로 이해하게 됩니다. 그래서 문자는 ASCII(아스키)코드의 규칙에 따라..

c언어

형식문자, 이스케이프 문자

형식문자, 이스케이프문자. 둘 다 무슨 뜻일까요? 지난 시간에 언급됐던 생소한 단어입니다. 기억을 더듬어보자면 %는 형식문자를 표현하는 문자고, \는 이스케이프 문자를 표현하는 특수문자라고 했었는데요. 자세히 알아봅시다! 특수문자라 부르는, 이스케이프 문자(Escape sequence)에는 여러가지가 있습니다. 앞으로 개행이나 탭을 할 때 많이 사용하게될 문자인데요, 모두 표로 정리해서 쓰자면 아래와 같습니다. Escape sequence 영문 표현 의미 \0 NULL 공백문자 \a Bell 알람문자 \b back space 백 스페이스 \f form feed(FF) 새 페이지로 \n new line 다음 줄로(개행) \r carriage return(CR) 현재 행의 맨앞으로 \t horizontal ..

도솔비
등고자비