int a[100] ; //배열의 선언
== a[0], a[1], a[2]. . . . . .a[98], a[99];
이렇게 a라는 변수 100개를 주소를 줘서 사용한다?
@ 1차원 배열
위에 서와 같이 대괄호가 한개인 배열입니다.
배열의 선언은 위에서와 같이 하면됩니다.
그럼 값을 넣으려면 어떻게 해야 할까요?
#include <stdio.h> main(){ int a[5]; int i; a[0]=100; a[2]=200; a[3]=400; a[4]=700;
for(i=0;i<5;i++) printf("a[%d] = %d \n",i,a[i]); } |
첫 번째가 a[0]에 넣은 값입니다. 두 번째는 a[1]이 될텐데 값을 넣지 않아서 쓰레기값 -858993460이 나왔네요. 어렵지 않지요? for()문은 출력을 하기 위한 반복문입니다. a[5], a[0]~a[4] 까지 입니다. 그래서 i=0 에서 i<5 라는 조건이 들어가게 됩니다. printf("a[%d] = %d \n",i,a[i]); 출력 할 때는 a[i]를 주게 됩니다. i는 배열의 주소가 되어 반복문에 의해 0~4까지 증가 하겠지요 |
배열에 값을 넣는 다른 방법 (선언과 동시에)
#include <stdio.h> main(){ int a[5]={100," ",200,400}; int i;
for(i=0;i<5;i++) printf("a[%d] = %d \n",i,a[i]);
} |
선언과 동시에 값을 주었습니다. |
배열에 값을 넣는 다른 방법(scanf()함수 사용)
#include <stdio.h> main(){ int a[5]; int i;
scanf("%d %d %d %d %d",&a[0],&a[1],&a[2],&a[3],&a[4]); printf("-------------------------------------\n"); for(i=0;i<5;i++)//출력 printf("a[%d] = %d \n",i,a[i]); } |
배열에 값을 넣는 다른 방법(scanf() 함수, 반복문 사용)
#include <stdio.h> main(){ int a[5]; int i;
for(i=0;i<5;i++)//입력 scanf("%d",&a[i]); printf("-------------------------------------\n"); for(i=0;i<5;i++)//출력 printf("a[%d] = %d \n",i,a[i]); } |
어려운 건 없죠? 그냥 scanf()함수를 이용 해서 하는 건 그냥 노가다...이지만 이렇게 반복문을 이용하면 많은 자료를 입력 받을 때도 사용 가능합니다. |
간단한 예제. 입력 받은 값을 역순(거꾸로) 출력하기
#include <stdio.h> main(){ int a[5]; int i;
for(i=0;i<5;i++)//입력 scanf("%d",&a[i]); printf("-------------------------------------\n"); for(i=4;i>=0;i--)//출력 printf("a[%d] = %d \n",i,a[i]); } |
출력하는 반복문의 조건들을 자세히 보세요 for(i=4;i>=0;i--)//출력 위에 소스에서 이 부분만 수정하였습니다. |
배열에서도 반복문의 별찍기와 같이 항상 짚고 넘어가는 여러가지 정렬방법이 있는데요
나중에....ㄷㄷ;
'IT > Programing' 카테고리의 다른 글
c언어 소스파일 나누기 (0) | 2013.11.29 |
---|---|
c언어 함수이용 반복문 별찍기(별모양마다 각각의 함수) (1) | 2013.11.16 |
c언어 전역 변수, 지역 변수, 매크로 변수 (1) | 2013.11.10 |