주차 | 진도 | 기본 숙제 | 추가 숙제 |
1주차(7.1~7.7) | Chapter 1~2 | VS 설치하고 인증하기 | 2-2 확인문제 3번 풀어보기 |
<기본 숙제: VS 설치하고 인증하기>
<추가 숙제: 2-2 확인문제 3번 풀어보기>
[코드]
[실행 결과]
Chapter 1. 프로그램 만들기
1. 프로그램과 C언어
1) 프로그램: 일의 순서를 나열한 것
2) C 언어의 장점
(1) 시스템 프로그래밍: 하드웨어 제어 가능
(2) 이식성을 갖춘 프로그래밍: 다른 기종의 컴퓨터에서도 프로그램 사용 가능
(3) 함수를 이용한 개별 프로그래밍 → 에러 수정 & 유지 보수 용이
2. 컴파일과 컴파일러 사용법
컴파일 과정: 소스 파일 → 전처리 → 전처리된 소스 파일 → 컴파일 → 개체 파일 → 링크 → 실행 파일
1) 전처리: 전처리 지시자에 따라 소스 파일 가공. 전처리 지시자의 예 - #include
2) 컴파일: 소스 코드(프로그래밍 언어)를 기계어로 바꾸는 과정, 컴파일러를 통해 이루어짐.
3) 개체 파일(object file): CPU가 해석할 수 있는 instructino들로 이루어진 기계어 파일.
그러나 바로 실행 불가하므로 운영체제가 인식할 수 있는 형태의 실행 파일로 바꾸어야 함.
4) 링크:개체 파일에 startup code를 결합하는 과정.
5) startup code: 프로그램 실행 전 준비 작업 수행. main 함수를 호출하여 프로그램 코드를 실행함.
Chapter 2. 상수와 데이터 출력
1. C 프로그램의 구조와 데이터 출력 방법
1) 프로그램과 main 함수 구조
(1) main 함수 = Head(= function prototype) + Body
#include <stdio.h>
int main(void){
// printf("Hello, World!\n"); 한 줄 전체를 주석 처리
int a = 10 /* 라인 내 주석 */ + 20;
printf("%d"\n, a);
return 0;
}
* head: int main(void)
* body: { } 내부
(2) 주석: //, /* */
(3) body: 세미콜론으로 문장의 끝 표시, 한 줄에 한 문장만, 일정한 간격으로 들여쓰기
2) printf()
(1) 제어 문자
\n | 줄바꿈 |
\b | 커서 왼쪽으로 |
\r | 커서 맨 앞으로 |
\a | 벨소리 냄 |
(2) 정수와 실수 출력
%d | 정수 |
%lf | 실수 |
2. 상수와 데이터 표현 방법
1) 문자와 문자열 상수
%c | 문자(e.g. 'A') |
%s | 문자열(e.g. "A") |
2) 상수가 컴파일 된 후의 비트 형태
상수 종류 | 크기 | 바뀌는 형태 |
정수 | 4바이트 | 2진수 |
** 양수: 빈 공간 모두 0으로 채움 e.g. 10 = 00000000 00000000 00000000 00001010 ** 음수: 2의 보수(원래 수 → 0과 1 바꿈; 1의 보수 → 1 더함) e.g. -10 = 11111111 11111111 11111111 11110110 |
||
실수 | 8바이트 | IEEE 754 표준 double형 |
** 부호 비트(양수 → 0, 음수 → 1) 1 bit+ 지수부 11 bits + 소수부 52 bits e.g. 10.0 = 01000000 00100100 00000000 00000000 00000000 00000000 00000000 00000000 - 6.5 = 1 10000000001 1010...0 |
||
문자 | 4바이트 | 아스키 코드 값과 같은 2진수 |
e.g. 'A' = 65 |
'혼공단 12기(혼공C)' 카테고리의 다른 글
[혼공C] 6주차 포인터 (0) | 2024.08.18 |
---|---|
[혼공C] 5주차 배열 (0) | 2024.08.06 |
[혼공C] 4주차 함수 (0) | 2024.07.28 |
[혼공C] 3주차 선택문, 반복문 (3) | 2024.07.20 |
[혼공C] 2주차 변수와 데이터 입력, 연산자 (2) | 2024.07.14 |