-목차-
1. C 프로그램 소스 코드의 구조
2. 변수 선언
3. 기초 표준 입출력
1. C 프로그램 소스 코드의 구조
- 형식이 내용을 지배한다. (C 프로그램 소스 코드의 구조적 분석은 필수적)
- 계층화된 구조적 코드 구성은 C 언어의 주요 특성이다.
※ 함수 (Function)
- C 언어는 크고 복잡한 일을 여러 개의 함수로 나눠 해결하는 것을 핵심 프로그래밍 원리로 한다.
- main()함수는 유일해야하고 꼭 필요하다.
※ 주석 (Comment)
- 프로그램의 이해를 돕기 위한 설명문으로 컴파일러가 무시한다.
- //, /* */ 로 구분된다.
※ 전처리 지시자 (Preprocessor Directive)
- 컴파일 작업을 하기 전에 특별한 작업을 지시하기 위한 것으로 "#"으로 구별된다.
ex) #include : 다른 파일의 내용을 현재 파일에 포함시킴, 파일 포함 지시자라고 부름
+) 헤더파일 : #include 다음에 쓰이는 파일, 다른 파일 내에 포함시킬 목적으로 작성된 파일
+) stdio.h : 기초적인 라이브러리 헤더파일
#define : 특정 단어를 다른 문자열로 바꿈 (define을 통한 문자열은 %s 혹은 그냥 printf(단어); 로 출력 가능)
※ 블록 (Block)
- { } 쌍으로 구분
- 일련의 선언문 + 문장의 조합으로 구성
ex) 함수 Body는 하나의 Block이다.
- 블록도 하나의 구문이다.
※ 구문 (Statement)
- { } 로 구분되거나 ;으로 끝난다.
- Block은 일련의 선언문과 구문으로 구성된다.
- 계층 구조를 형성한다.
ex) b = a*b;
※ 선언문 (Declarations)
- 변수나 함수가 쓰이기 전에 그 이름과 특성 등을 미리 선언하여 컴파일러에게 알리는 역할을 한다.
ex) int a;
2. 변수의 선언
- 변수 : 값을 저장하는 메모리 공잔이자 모든 프로그래밍의 필수 핵심 요소
- 변수의 자료형 : 변수가 표현 혹은 저장하는 데이터의 종류 혹은 유형
- 변수는 선언 이후에 사용한다.
ex) 문자형, 정수형, 부동소수형
#include <stdio.h>
int main(void)
{
int na; // integer type의 변수
float rb; // float type의 변수
return 0;
}
● 식별자
- 변수, 함수 등에 대한 이름 (영문자, 숫자, _로 구성)
※ 식별자 제약조건
- 첫 글자에 숫자 X
- 대소문자 구별함
- Keyword를 사용하면 안됨
#include <stdio.h>
int main(void)
{
int a; // 가능
int abc123; // 가능
int abc_123; // 가능
int _abc123; // 가능
int 123abc; // 첫글자로 숫자 와서 불가능
int abc^^; // ^^ 사용해서 불가능
int 한글변수;// 한글 사용해서 불가능
int void; // Keyword 사용해서 불가능
int return; // Keyword 사용해서 불가능
return 0;
}
● 변수 값 초기화
- 변수 선언 과정에서 변수의 초기 값을 지정할 수 있다.
- 최초로 값을 저장하는 행위를 "변수를 초기화한다."라고 표현한다.
#include <stdio.h>
int main(void)
{
int a = 3;
float b = 3.0;
int c, d = 4, e;
float f=2.1, g=5.6;
return 0;
}
3. 기초 표준 입출력
● 표준 출력 함수 - printf()
- ""로 둘러싸인 문자열을 표준 출력 장치인 화면에 출력한다.
- printf()를 사용하려면 #include <stdio.h>가 필요하다
- 변수 값 출력 시 출력 형식을 지정하는 형식 지정자가 반드시 포함되어야한다. (형식 지정자는 %로 시작하며 자료형에 맞는 지정자를 사용하여야 한다.)
#include <stdio.h>
int main(void) {
int a = 3;
float b = 3.3;
printf("%d\n", 7);
printf("%d\n", a);
printf("%d\n", a+7);
printf("%f\n", 7.7);
printf("%f\n", b);
printf("%f\n", b+6.7);
return 0;
}
>>>
7
3
10
7.700000
3.300000
10.000000
- 여러 개의 변수 값을 출력하는 것도 가능하다.
+) 이스케이프 시퀀스
● 표준 입력 함수 - scanf()
- 변수의 주소값을 얻는 단항 연산자인 "&"를 사용 (사용하지 않으면 오류 발생)
- scanf 또한 형식을 지정해주어야한다.
- 여러 변수 값 입력도 가능하다.
#include <stdio.h>
int main(void) {
int a;
float b;
scanf("%d", &a);
scanf("%f", &b);
printf("a = %d, b = %f\n", a, b);
scanf("%d %f", &a, &b);
printf("a = %d, b = %f\n", a, b);
return 0;
}
+) scanf("%d %d",&n,&n1); 과 scanf("%d%d",&n,&n1);는 사실 같다.
둘 다 1 2 이렇게 입력해줘야함
'CS > C, C++' 카테고리의 다른 글
[C/C++] 03 - 1 제어 구조와 조건문 기초 (0) | 2021.10.17 |
---|---|
[C/C++] 02 - 2 자료형과 연산 기초 (0) | 2021.10.17 |
[C/C++] 01-2 C 언어 소개와 컴파일의 이해 (0) | 2021.10.17 |
[C/C++] 01-1 컴퓨터 시스템과 프로그램의 이해 (0) | 2021.10.17 |
[C/C++] 05-4 다양한 자료형과 자료 표현 - 연산자 (0) | 2021.10.03 |