안녕하세요 이번에는 제목과 같이 for/while문, 주소/배열의 개념에 대해 알아보겠습니다.
for(초기값; 조건문; 증가값) { 실행구문; } |
for문의 기본적인 형식입니다.
초기 값이 조건문을 만족하는 한 for문 내부의 실행구문이 계속 반복되는 형식이어서 반복문이라 불립니다.
int main(void) { printf("C-Programming\n"); printf("C-Programming\n"); printf("C-Programming\n"); printf("C-Programming\n"); return 0; } |
반복문을 사용하여 위의 예문과 같은 결과를 만드는 예문을 보여드리겠습니다.
int main(void) { for (int i = 0; i < 4; i++) { printf("C-Programming\n"); } return 0; } |
초기값으로 0으로 초기화한 정수형 변수 i가 들어갑니다.
조건문 부분에 i < 4 를 넣어주어서 i가 4와 같거나 커지게 되면 반복문이 종료되게 합니다.
증가값으로는 증감연산자를 이용해 i가 1씩 증가하게 합니다.
위의 과정을 거쳐서 0으로 시작한 i 값이 4보다 작은 3일 때 까지 반복문이 실행되며,
i 값이 0, 1, 2, 3 까지 반복문이 실행되므로 처음 예문과 같은 결과를 만들게 됩니다.
위의 개념을 응용해 2중 for문을 사용하여 구구단을 출력하는 예문을 만들어보겠습니다.
int main(void) { for (int i = 2; i <= 9; i++) { for (int j = 1; j <= 9; j++) { printf("%2d X %d = %2d\n", i, j, i * j); } printf("\n"); } return 0; } |
while문은 for문과 흡사하지만 구성이 약간 다릅니다.
시작값 while(조건문) { 실행구문; 증가값; } |
위와 같은 형태를 이룹니다. C-Programming 을 4번 출력되게 만들어보겠습니다.
int i = 0; //while구문의 초기값 while (i < 4) //조건문 { printf("C-Programming\n"); i++; //증가값 } |
for문과 사용 방법은 같지만 구조가 다른 것을 확인할 수 있습니다.
다음은 주소에 대해서 알아보겠습니다.
int a = 10; int b = 50; |
a, 와 b라는 정수형 변수를 선언하고 각각의 값으로 초기화를 해주었습니다.
a와 b의 선언과 동시에 int 형 정수의 크기인 4byte 씩 만큼 컨퓨터에서 임의로 위치를 지정합니다.
a | ||||||||
b | ||||||||
a와 b가 각각의 주소를 할당 받은 것은 도식화 해보았습니다.
위 표 처럼 변수를 선언하게 되면 컴퓨터 자체적으로 랜덤하게 위치를 지정하고,
변수의 자료형의 크기만큼 공간을 할당합니다.
다음은 배열의 정의와 선언법에 대하여 알아보겠습니다.
배열이란 같은 자료형의 변수들을 한데 모아 선언하는 방법입니다.
a, b, c, d 의 정수형 변수들이 각각 선언되게 되면,
네개의 주소가 다 다른곳에 저장되기 때문에 효율적으로 묶어주는 것 입니다.
int num[4]; |
의 형식으로 배열을 선언합니다.
[] 사이에 임의의 숫자를 넣어 몇개의 정보를 묶을 것인지 결정합니다.
a | b | c | d |
배열을 선언하게 되면 위와 같이 4가지의 정보가 차례대로 저장되게 됩니다.
저 도식에서 한칸은 4byte입니다. (int 형 자료형이기 떄문에)
'C 언어' 카테고리의 다른 글
C 언어 6일차 : 배열을 이용한 문자열, 배열과 관련된 함수, gets와 scanf의 차이 (0) | 2022.12.27 |
---|---|
C 언어 5일차 : 배열의 주소와 포인터 (0) | 2022.12.24 |
C 언어 3일차 : 증감 / 관계 / 논리 연산자와 if문 (0) | 2022.12.22 |
C 언어 2일차 : 변수의 선언, 대입/산술 연산자, scanf() (1) | 2022.12.21 |
C 언어 1일차 : 헤더 파일의 정의와 printf (0) | 2022.12.20 |
댓글