문타쿠, 공부하다.
[C언어 코딩 도장] Unit 36. 배열 사용하기 본문
36.1 배열을 선언하고 요소에 접근하기
#include <stdio.h>
int main(void)
{
int numArr[10] = { 11, 22, 33, 44, 55, 66, 77, 88, 99, 110 };
printf("%d\n", numArr[0]);
printf("%d\n", numArr[5]);
printf("%d\n", numArr[9]);
return 0;
}
// 배열 선언 시 값을 초기화한다면 배역의 크기 생략 가능
int numArr1[] = { 11, 22, 33, 44, 55, 66, 77, 88, 99, 110 };
// 컴파일 에러
int numArr2[];
36.2 배열을 0으로 초기화하기
"배열의 모든 요소를 간단하게 0으로 초기화하기"
#include <stdio.h>
int main(void)
{
int numArr[10] = { 0, };
printf("%d\n", numArr[0]);
printf("%d\n", numArr[5]);
printf("%d\n", numArr[9]);
return 0;
}
36.3 배열의 요소에 값 할당하기
#include <stdio.h>
int main(void)
{
int numArr[10];
numArr[0] = 11;
numArr[1] = 22;
numArr[2] = 33;
numArr[3] = 44;
numArr[4] = 55;
numArr[5] = 66;
numArr[6] = 77;
numArr[7] = 88;
numArr[8] = 99;
numArr[9] = 110;
printf("%d\n", numArr[0]);
printf("%d\n", numArr[5]);
printf("%d\n", numArr[9]);
return 0;
}
36.4 배열의 크기 구하기
#include <stdio.h>
int main(void)
{
int numArr[10] = { 11, 22, 33, 44, 55, 66, 77, 88, 99, 110 };
// int형 4바이트 요소가 10개 = 40
printf("%zd\n", sizeof(numArr));
// 배열의 크기: 40 / 4 = 10
printf("%zd\n", sizeof(numArr) / sizeof(int));
return 0;
}
36.5 반복문으로 배열의 요소를 모두 출력하기
"반복문으로 배열의 요소를 모두 출력하기"
#include <stdio.h>
int main(void)
{
int numArr[10] = { 11, 22, 33, 44, 55, 66, 77, 88, 99, 110 };
for (int i = 0; i < sizeof(numArr) / sizeof(int); i++)
{
printf("%d\n", numArr[i]);
}
return 0;
}
"반복문으로 배열의 요소를 역으로 출력하기"
#include <stdio.h>
int main(void)
{
int numArr[10] = { 11, 22, 33, 44, 55, 66, 77, 88, 99, 110 };
for (int i = sizeof(numArr) / sizeof(int) - 1; i >= 0; i--)
{
printf("%d\n", numArr[i]);
}
return 0;
}
36.6 배열의 요소 합계 구하기
#include <stdio.h>
int main(void)
{
int numArr[10] = { 11, 22, 33, 44, 55, 66, 77, 88, 99, 110 };
int sum = 0;
for (int i = 0; i < sizeof(numArr) / sizeof(int); i++)
{
sum += numArr[i];
}
printf("%d\n", sum);
return 0;
}
36.7 배열의 요소에 저장된 값을 두 배로 만들기
#include <stdio.h>
int main(void)
{
int numArr[10] = { 11, 22, 33, 44, 55, 66, 77, 88, 99, 110 };
for (int i = 0; i < sizeof(numArr) / sizeof(int); i++)
{
numArr[i] *= 2;
printf("%d\n", numArr[i]);
}
return 0;
}
36.8 배열을 포인터에 넣기
#include <stdio.h>
int main(void)
{
int numArr[10] = { 11, 22, 33, 44, 55, 66, 77, 88, 99, 110 };
int* numPtr = numArr;
printf("%p\n", numPtr);
printf("%p\n", numArr);
printf("%p\n", &numPtr[0]);
printf("%p\n\n", &numArr[0]);
printf("%d\n", *numPtr);
printf("%d\n", *numArr);
printf("%d\n", numPtr[0]);
printf("%d\n\n", numArr[0]);
printf("%zd\n", sizeof(numArr));
printf("%zd\n", sizeof(numPtr));
return 0;
}
36.9 배열을 활용하여 10진수를 2진수로 변환하기
#include <stdio.h>
int main(void)
{
int decimal = 13;
int binary[20] = { 0, };
int position = 0;
while (1)
{
binary[position] = decimal % 2;
decimal = decimal / 2;
position++;
if (decimal == 0)
break;
}
for (int i = position - 1; i >= 0; i--)
{
printf("%d", binary[i]);
}
return 0;
}
'C언어 > C언어 코딩 도장' 카테고리의 다른 글
[C언어 코딩 도장] Unit 37. 2차원 배열 사용하기 (0) | 2023.09.19 |
---|---|
[C언어 코딩 도장] Unit 36. 연습문제 및 심사문제 (0) | 2023.09.10 |
[C언어 코딩 도장] Unit 35. 연습문제 및 심사문제 (0) | 2023.09.10 |
[C언어 코딩 도장] Unit 35. 메모리 사용하기 (0) | 2023.09.09 |
[C언어 코딩 도장] Unit 34. 연습문제 및 심사문제 (0) | 2023.09.09 |