[C언어] 중간고사

 


1. C언어의 이해

  1. 1프로그래밍(Programming)은 을 만드는 행위를 말한다.
  2. 2C는 실질적으로 모든 컴퓨터 시스템에서 사용할 수 있도록 설계된 이다.
  3. 3윈도우 운영체제 만들어진 프로그램은 리눅스와 같은 다른 운영체제에서도 사용 가능하기 때문에 이다.
  4. 4C언어를 이용해 프로그래밍을 하려면 하고 다양한 종류의 컴파일러가 있다.


2.  C언어 컴파일러 설치

  1. 1함수는 이름이 있고 이름 앞에 이 있고 함수 이름 뒤에 ‘()’(괄호)가 붙고, 함수의 코드는 ‘{ }’(중괄호)로 묶어서 표현한다.
  2. 2printf()는 출력을 담당하는 프로그램이며  제공한다.
  3. 3scanf() 함수는 C언어의 표준 입력 함수로, 사용자로부터 에 맞춰 입력 받을 수 있게 해준다.


3. printf()와 데이터 형식

  1. 1printf() 함수는 화면에 큰따옴표(“ “) 안의 내용을 출력하기 위한 함수로  등의 데이터를 다양한 형태로 화면에 출력할 수 있다.
  2. 2printf( )는 괄호 안에 큰따옴표로 감싸면 숫자도 무조건 문자로 취급하고 하기 위해 특별한 서식이 필요한데 이를 서식문자라 한다.
  3. 3정수형 숫자를 출력하는 서식은  등이 있고, 실수형 숫자를 출력하는 서식에는 %f, %7.1f, %7.3f 등이 있다. 또한 문자열을 출력하는 서식에는 %s, %10s 등이 있다.
  4. 4역 슬래시 ’\(\)’ 와 특수 문자의 조합으로 C언어에서 특별할 동작이나 문자를 표현하고자 할 때 사용하는데 이런 문자를 라고도 한다


4. 변수의 이해

  1. 1C 프로그램은 숫자, 문자, 단어들로 이루어진 데이터를 사용하는데, 이런 데이터의 종류를 자료형(data type)이라고 한다. 변수(Variable)는 데이터(data)를 저장하기 위해 프로그램에 의해 을 의미하고 이렇게 저장된 값은 변경될 수 있다.
  2. 2변수의 이름은 특정한 규칙을 가지고 있어 하나의 프로그램에서 같은 이름의 변수를 사용할 수 없어서 .
  3. 3대입 연산자(assignment operator)는 인데 C언어에서는이 대입 연산자를 등호(=)로 표현한다.
  4. 4상수는 변하지 않는 데이터를 담아 놓은 공간으로 변수와 비슷하지만, 한번 데이터를 저장하면 프로그램 실행 시 는 차이점이 있다.


5. 데이터 단위 및 진법 변환

  1. 1비트는 컴퓨터는 전기의 흐름을 디지털화 하여 0과 1로 표현되는 신호에 의해 동작하고 바이트는 컴퓨터에서 를 의미한다.
  2. 2진수는 진법으로 나타내어진 수를 의미하고 진법을 나타내는 기본수를 라 한다.
  3. 3진법은 기수로 사용하는 수를 n으로 표현하면 0부터 n개의 숫자를 사용해서 수를 표현하는 방법이며 표현은 까지로 표현한다.


6. 데이터 형식과 배열

  1. 1데이터 형식(자료형, Data Type)은 선언할 변수의 종류를 의미로 C언어에서는 변수들은 사용하기 전에 반드시  등의 데이터 형식을 선언해야 한다.
  2. 2숫자형 데이터 형식은 숫자로 표현되는 형식으로, C언어에서 사용되는 숫자형 데이터 형식은 이 있다.
  3. 3미국 표준 협회(ANSI)’ 에 의해서 제정된 가 대표적인 문자를 숫자로 표현하는 코드이다.
  4. 4리터럴(literal)상수는 이름을 지니지 않는 상수로 연산을 위해서는 30, 40과 같이 프로그램상에 표현되는 숫자도 메모리 공간에 저장되어야 한다. 심볼릭(symbolic) 상수는 이다.
  5. 5자동형 변환은 자동적으로 발생하는 형태의 데이터 형식 변환으로 이라고도 한다.


7. 연산자의 이해 1 : 산술 연산자, 관계 연산자

  1. 1컴퓨터는 수식(expression)을 이용하여 여러 가지 연산 처리를 하고 프로그램 언어에서 수식은 의 조합으로 구성되어 있다.
  2. 2연산자 우선순위는 콤마 < 대입 < 논리 < 관계 < 산술 < 단항 < 괄호 순로 괄호 연산자가 가장 우선순위가 높다. 은 변수 또는 상수 앞에 ‘()’을 써주고 정수와 실수를 나누면 실수가 되어 result2에 실수의 값이 대입한다.
  3. 3대입 연산자는 연산자의 이며, 그 기능을 가장 늦게 수행한다. 증감 연산자는 피연산자를 1씩 증가 혹은 1씩 감소시킬 때 사용하는 연산자이다.
  4. 4관계연산자는 2개의 피연산자 크기를 비교하기 위한 연산자로 결과값은 을 가진다.


8. 연산자의 이해 2 : 논리 연산자, 비트 연산자, 조건 연산자

  1. 1참과 거짓은 기본적으로 참(true)은 1로, 거짓(false)은 0로 표현되고, C 언어는 참과 거짓이라는 상수는 없으며 으로, 0이 아닌 값을 참으로 간주한다.
  2. 2논리 연산자는 여러 개의 조건을 조합하여 참과 거짓을 따지는 연산자로, 결과값은 을 가진다.
  3. 3비트 연산자는 비트(bit) 단위로 논리 연산을 할 때 사용하는 연산자이며, 비트 단위로 전체 비트를 왼쪽이나 오른쪽으로 이동시킬 때도 사용한다. 비트 연산자는 으로 구성된 이진수 각 자리에 대해 연산을 한다.
  4. 4조건 삼항 연산자는 C 언어에서 유일하게 를 갖는 삼항 연산자이며, 연산식 exp1이 0이 아닌 값(참을 의미)으로 평가되면, 삼항 연산자의 평가값은 두 번째 연산식인 exp2의 값으로 평가된다.


9. 제어구조 : 기본 if문, if~else문

  1. 1기본 if문은 프로그래밍 언어에서 제어문은 시키거나 또는 조건에 따라 실행해야 할 명령문을 제어하는 데 사용하는 명령문으로 일반적으로 프로그램은 위에서부터 아래로 순차적으로 실행된다.
  2. 2if~else문은 기본 if 문과는 달리 조건식이 에 따라실행할 명령문을 구분하여 실행하는 조건문이다.


10. 제어구조 : 다중 선택, 중첩 if문, switch~case문

  1. 1다중 선택 if ~ else 문은 if ~ else 문이 확장된 형태로 다중 선택 if ~ else 문 안에 있는 문장은 단순 if 문으로 조건식을 차례로 비교한다. 다중 선택 if~else 문 안에 있는  차례로 비교하여 실행이 이루어진다.
  2. 2중첩 if문은 if문을 한 번 실행하고 그 결과에 다시 다른 if문을 실행하는 것으로 가능하면 하여 조건식을 명확히 하는 것이 좋다.
  3. 3은 주어진 조건식의 값에 따라 여러 개의 명령문 중에서 어느 특정한 명령문만을 실행 하고자 할 때 사용한다


11. 제어구조 : 단순 for문

  1. 1반복문은 여러 번 수행해야 할 작업을  반복문의 사용은 아주 중요하고, 대표적인 반복문은 for문과 while, do~while 문이 있다.
  2. 2for문은 반복횟수를 명확히 알고 있을 때 주로 사용하고, while문은 해야 할 때 주로 사용한다.
  3. 3for문의 형식은 괄호 안에 이 세미콜론(;)으로 구분되어 있으며, 중괄호({ }) 안에 반복할 문장이 나는데 반복할 문장이 하나뿐이라면 중괄호를 생략해도 된다.


12. 제어구조 : 중첩 for문

  1. 1중첩반복문은 반복문 안에 또 다른 반복문이 포함되는 경우이며, 중첩for문은 for문 내부에 또 다른 for문이 들어 있는 형태이다. 총 반복 횟수는 이다.
  2. 2for문에 여러 개의 초기값과 증감식을 사용할 수 있고, 초기값이 하나일 필요 없고 초기값이 여러 개일 때는 하며 증감식도 하나 이상 사용 가능하다.


13. 제어구조 : while문, do~while문

  1. 1while문은 조건식이 true(참)일 경우에 계속해서 반복하는 반복문이기 때문에 조건에 따라 해야 할 때 주로 사용한다. while 문은 for문과 달리 초기식과 증감식을 사용하지 않고 조건식에 대해서만 참인 경우에 반복을 계속한다.
  2. 2for문에서 사용하는 초깃값은 while문에서는 while문 밖에서 초기화 하고 사용하고 for문에서의 증감식은 while문 안에서 사용되고 만 사용한다.
  3. 3무한반복문은 컴퓨터에서 프로그램이 으로, 반복문에 종료 조건이 없거나, 종료 조건과 만날 수 없을 때 생기고, 무한반복문를 위한 while문은 조건식이 무조건 참이어야 한다.
  4. 4do~while문은 조건에 따라 반복을 계속할지를 결정할 때 사용하는 것은 while 문과 동일하고, 조건식을 확인하기 전에 하므로 무조건 한 번은 실행된다.


14. 기타 제어문 : break문, continue문, goto문, return문

  1. 1break문은 으로 for, while, do~while과 같은 반복문을 탈출할 때 사용하고, if문과 결합하여 무한 반복문 안에서 주로 사용된다. 그리고 무한 반복을 돌다가 특정 조건을 만족하면 프로그램을 종료하는 역할을 한다.
  2. 2continue문을 만나면 을 건너뛰고 반복문을 처음부터 다시 수행하게 된다.
  3. 3goto문은 지정된 레이블로 건너뛰게 하는 명령문으로 하게 만드는 단점이 있어 잘 사용되지는 않는다.
  4. 4return문은 현재 실행하는 함수를 끝내고 해당 함수를 호출한 곳으로 돌아가게 하고, 하고 호출한 함수로 제어를 반환한다.



댓글 쓰기

다음 이전

POST ADS1

POST ADS 2