
C를 배워야 하는 이유
- 컴퓨터 작동에 대한 전반적인 이해
- 알고리즘 & 자료구조 수업 예습
- 선 파이썬 , 후 C를 추천한다
기본베이스
#include <stdio.h>
int main() {
}
return 0;
1. 라이브러리 호출
#include <stdio.h>
2. main 함수
int main() {
}
int는 return을 0이라는 정수형으로 해주기 때문, 이해 안되면 일단 이해 안해도 된다.
3. 함수 끝
return 0;
함수 실행을 끝냈다는 뜻이다!
파이썬과 다른사항
- {} 안에 실행하고자 하는 코드를 입력한다
- 한줄이 끝나면 ';'를 입력한다
<변수, 상수, 메모리>
변수(variables) : 데이터를 담는 박스라고 생각하면 된다.
상수 : 정해진 수, 안 바뀐다.
메모리(ram) : 변수와 상수가 들어갈 수 있는 위치. (1bit *8 = 1byte = 32bit)
(c언어는 자료형을 통해 변수에 메모리를 먼저 할당하기 때문에 자료형을 변수 앞에 적어줘야 한다는 것만 알고 있으면 된다.)
cf) 자료형 : 아래 설명 참고

자료형이 int인 변수 x 선언
int x;
자료형이 int 인 x를 선언하면, 컴퓨터는 int 자료형을 가진 변수x에게 특정 위치에서부터 4byte의 메모리를 할당한다.
#include <stdio.h>
int main() {
int x;
x = 5;
printf("%d", x);
printf("변수 x의 메모리크기는 %d 입니다", sizeof(x));
return 0;
}
변수 x에 정수형 데이터 5를 담은것이다.
(나머지 내용은 자료형 설명 참고)
sizseof(x) : 메모리 크기 함수
#include <stdio.h>
int main() {
int x;
x = 50;
float y = 123456789.123456789;
double z = 123456789.123456789;
printf("x=%d\n", x);
printf("y=%.2f\n", y);
printf("z=%.2f\n", z);
return 0;
}
%d : 정수
%f : 실수
%.2f : 실수를 소숫점 둘째 자리까지 나타내라는 뜻이다
#include <stdio.h>
int main() {
float a = 3.141592f;
double b = 3.141592;
int c = 123;
printf("a=%.2f \n", a);
printf("c=%5d \n", c);
printf("b=%6.3f \n", b);
return 0;
}
결과는 다음과 같다.
a=3.14
c= 123
b= 3.142
%.2f : 실수형을 소숫점 2자리까지 나타낸다.
%5d : 정수형을 5자리로 맞춘다. (숫자가 5자리가 안되면 앞자리를 비우고,
5자리를 넘어가면 그냥 표시한다)
%6.3f : 실수형을 6자리로 맞추고 소숫점 3자리까지 나타낸다.
(double : float와 같은 실수형인데 8byte를 할당한다)
#include <stdio.h>
#include <limits.h>
int main() {
int x = INT_MAX;
printf("int형의 최댓값 x는 %d 입니다.\n", x);
printf("x+1은 %d입니다.\n", x + 1);
return 0;
}
결과
int형의 최댓값 x는 2147483647 입니다.
x+1은 -2147483648입니다.
최댓값 다음 값은 최솟값이다
최소, 최댓값 라이브러리 생성
<limits.h>
정수형 최댓값
INT_MAX
사칙연산은 파이썬이랑 동일하다
#include <stdio.h>
int main() {
int x = 10;
int y = 20;
printf("x+y=%d 입니다\n", x + y);
return 0;
}
#include <stdio.h>
int main() {
int x = 10;
int y = 20;
printf("x/y=%d 입니다.\n", x/y);
return 0;
}
결과
x/y=0입니다.
나누기 '/' 는 정수부(몫)만 출력한다.
'프로그래밍 > C언어' 카테고리의 다른 글
6. c언어 반복문 for, while (0) | 2023.01.31 |
---|---|
5. c언어 if 문 if, if else, else (1) | 2023.01.21 |
4. c언어 scanf 문자 입력 받기, 형변환 (0) | 2023.01.21 |
3. c언어 연산자 증감, 복합대입, 관계, 로직, 조건, 비트 (0) | 2023.01.20 |
2. c언어 자료형 문자형, 정수형, 실수형, 기수법 (0) | 2023.01.20 |
댓글