본문 바로가기
C

[C][배열] indexing 프로그래밍

by Junk_Seo 2018. 1. 1.
반응형

배열 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를 활용해서 코딩을 해보자

반응형

'C' 카테고리의 다른 글

[C/C++][함수]반환형  (0) 2018.01.08
[C][2차원배열]달팽이 배열  (0) 2018.01.02
[C][2차원 배열]홀수 마방진  (0) 2018.01.02
[C][2차원배열] 지그재그 초기화  (0) 2018.01.01
[C][배열] Index 변수  (0) 2018.01.01