728x90
반응형
오늘은 지난 시간에 이어 배열을 알아보도록 하겠습니다. 우선 배열에 초기 값을 넣는 법을
간단하게 한번 보겠습니다. 우선 배열을 초기화 하는 방법은 int arr[5] = {0}; 입니다.
이런 식으로 하면 0번째 1번째 ... 4번째 까지 모든 값이 0으로 초기화 됩니다.
이런 식으로 값을 초기화 하면 출력시 이상한 값이 나올 일이 없습니다. 이와 마찬가지로
0 외의 다른 숫자를 넣어도 배열의 선언 개수보다 적으면 차례대로 대입이 되기 때문에
나머지 값 역시 초기값이 들어갑니다. 그리고 만약에 배열을 arr[5] = {1,2,3,4,5} 이런 식으로
하면 배열에 값이 순차적으로 대입 됩니다. 그리고 오늘의 가장 중요한 내용중 하나인
while 문을 이용 해서 배열의 값을 입력받는 방법을 알아 보도록 하겠습니다. 우선 간단하게
코드를 작성 해 보겠습니다.
#include <stdio.h>
int main()
{
int arr[10] = {0};
int i,num;
while(1)
{
scanf("%d", &num);
if(num == 0) break;
arr[num % 10]++;
}
for(int i=0;i<10;i++)
{
if(arr[i]>0)
{
printf("%d : %d\n",i,arr[i]);
}
}
return 0;
}
한번 이 코드를 살펴 보겠습니다. 우선 10 자리 까지 입력 받을수 있는 배열을
생성 했습니다. 그리고 그 배열을 0으로 초기화 한 후, while 문을 이용해서
입력을 받았습니다. while 문에서 0이 입력 될 시 break; 를 걸어 주어
1 2 3 4 5 ... 하다가 0이 입력 되면 출력 단계로 넘어 갑니다. for 문으로
출력을 담당 하게 했는데 for 문에서는 지난 시간에 배운 내용을 응용 해서
결과값을 출력 합니다.
'C, C++' 카테고리의 다른 글
13 : c/c++ 강좌 "함수 2" (0) | 2022.02.11 |
---|---|
12 : c/c++ 강좌 "함수 1" (0) | 2022.02.08 |
10 : c/c++ 강좌 "배열 1" (4) | 2022.01.21 |
9 : c/c++ 강좌 "반복제어문 3" (0) | 2022.01.19 |
8 : c/c++ 강좌 "반복제어문 2" (0) | 2022.01.17 |