일지

Day 13 - (0307) / C언어

joo_coding 2025. 3. 7. 09:27

<컴퓨터의 동작원리>

서버의 화면은 터미널 같은 검은 화면밖에 없다.

그래서 계속 터미널 같은 화면으로 연습하는거다.

 

컴퓨터를 사용할 수 있게 도와주는 것이 OS이다.

운영체제(Operating System)

 

[메인보드] <-power

  [CPU]   - >    [RAM]    ...    [SSD]

. 연산장치         기억장치        보조기억장치

.

.                       [GPU]

.

[출력장치] 모니터,스피커

 

저장 한거
저장 안한거

<C언어>

*저장을 생활화하자 : Ctrl + [s]

 

저급언어

절차지향언어

컴파일언어

병렬처리 (어려움)

대소문자 구분

주석 // (컨+슬래시)

/* 여러

    줄

    주석*/

 

리눅스가 윈도우 보다 가볍기 때문에

서버체계로 많이 사용한다.

대신 비어있는 만큼 세팅 해야할게 많다.

 

<c언어 입문>

#include <stdio.h>

int main() {
printf("Hello, c!\n");
return 0;
}


 

stdio.h <- printf 를 부르는 / h는 헤더

 

int main() <- int + main 이라는 함수

main 함수는 무조건 1개 밖에 못씀

{ 중괄호 } 사용 필수

 

main 이라는 함수의 덩어리는,

printf("Hello, C!\n"); <- \n 줄바꿈 필수

 

return 0: <- 0은 종료코드 = 나 종료됐어 라는 뜻

 

 

<printf 함수>

#include <stdio.h>

int main() {
printf("Hello, c!\n");
printf("변수에 저장된 숫자는 %d입니다.",10);
printf("\n변수에 저장된 숫자는 %d%d입니다.",10,20);

printf("%%c를 사용한 결과 : %c\n","a"); // 문자
printf("%%s를 사용한 결과 : %s\n", "즐거운 C언어"); // 문자열
 
printf("%%f를 사용한 결과 : %f\n", 0.123456);
printf("%%f를 사용한 결과 : %f\n", 0.123456789); // 소수점 6자리까지만 표현 (반올림)

printf("%%o를 사용한 결과 : %o\n", 123); // 8진 정수
printf("%%x를 사용한 결과 : %x\n",123); // 16진 정수
 
printf("%%g를 사용한 결과 : %g\n", 0.001234); // 값에 따라 %f or %e
printf("%%g를 사용한 결과 : %g\n", 0.00001234); // 값에 따라 %f or %e
printf("%%G를 사용한 결과 : %G\n", 0.000001234); // 값에 따라 %f or %E

return 0;
}

 

 

<scanf 함수>

#include <stdio.h>

int main() {

int num01, num02;
printf("첫번째 정수를 입력하세요:");
scanf("%d", &num01);
printf("두번째 정수를 입력하세요:");
scanf("%d", &num02);

printf("입력하신 두 정수의 합은 %d입니다.\n", num01 + num02);

return 0;
}

 

#include <stdio.h>

int main() {

int num01, num02;
printf("첫번째 정수를 입력하세요:");
scanf("%d", &num01);
printf("두번째 정수를 입력하세요:");
scanf("%d", &num02);

printf("입력하신 두 정수의 합은 %d입니다.\n", num01 + num02);


int num01, num02; //여러개의 정수를 한번에 입력받아 출력하기

printf("두 개의 정수를 입력하세요:");
scanf("%d %d", &num01, &num02);

printf("입력하신 두 정수를 8진수로 나타내면 %o%o가 되고,\n", num01, num02);
printf("입력하신 두 정수를 16진수로 나타내면 %x%x가 됩니다.\n", num01, num02);

 
return 0;
}

--

< 변수 선언과 초기화 >

#include <stdio.h>

int main() { // 선언과 초기화!!!
int num; // 변수'선언': 정수화 예약어 (무조건 int값만 받을 수 있음)
num = 0; // '초기화' 작업: 0으로 지정해줘야함 >
int num2 = 0; // 위에 두줄 한번에 하는법
// 아무튼 중요한건, 선언했으면 무조건 초기화 부터해라
printf("%d", num);

return 0;
}
선언과 초기화는 세트다.

 

<변수와 상수>

상수를 사용할 때에는 무조건 선언과 초기화를 동시에 해야한다.

한동안 쓸 일 없을거임

 

 

<정수형 타입>

#include <stdio.h>

int main() {
short num_1 = 32767;
printf("변수 num에 저장된 값은 %d입니다.\n", num_1);

unsigned short num_2 = 65535;
printf("%d\n", num_2);
num_2++;
printf("%d\n", num_2);
 
int num_3 = 2147483647;
printf("변수 num에 저장된 값은 %d입니다.\n", num_3);

int num_4 = 2147483648;
printf("변수 num에 저장된 값은 %d입니다.\n", num_4);

return 0;

}

 

 

0이 양수, 1이 음수

 

<서식 지정자>