C
[C][배열] indexing 프로그래밍
Junk_Seo
2018. 1. 1. 16:50
반응형
배열 indexing 프로그래밍
C 언어에서 배열을 사용할 때 index를 활용하면 좋다.
예제로 int형 배열에서 최대 값을 찾는다고 하자.
int arData[10] = { 124, 21, 323, 45, 5223, 684, 734, 823, 922, 130 };
int nSum = 0;
for (int i = 0; i < 10; i++) {
if (nSum < arData[i])
nSum = arData[i];
}
위의 코드처럼 int형 변수를 하나 선언해서 여기에 배열 요소 하나하나 비교해서 큰 값을 저장하고 마지막에 가장 큰 값을 출력하고 있다.
물론 정수 비교이기 이렇게 해도 상관없다. 하지만 이게 다른 type의 변수를 사용한다면 문제가 생기기 시작한다.
그래서 배열의 값을 저장하는 것이 아닌 큰 값을 가진 index를 저장하는 방식을 사용하자.
int arData[10] = { 124, 21, 323, 45, 5223, 684, 734, 823, 922, 130 };
int nSumIdx = 0;
for (int i = 0; i < 10; i++) {
if (arData[nSumIdx] < arData[i])
nSumIdx = i;
}
printf("%d \n", arData[nSumIdx]);
이런 식으로 index를 활용해서 코딩을 해보자
반응형