공부/2018-2 프로그래밍연습
09. Print in Reverse
열대urim
2018. 12. 11. 20:03
<설명>
입력한 순서와 정반대로 정수들을 출력하는 프로그램을 쓰라.
첫번째 입력은 앞으로 입력할 정수들의 개수이다.
두번째 입력은 그 정수들이다.
숫자마다 간격이 있게 하여, 입력된 순서와 반대로 출력한다.
<Input>
첫번째 입력: 1과 10^5 사이의 정수 N
두번째 입력: N개의 정수
<Output>
정수들을 revers order로 출력
<소스코드>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #include <stdio.h> int arr[100005]; int main (void) { int N; int i; //N값을 스캔함. scanf("%d",&N); //정수를 스캔하여 거꾸로 어레이에 저장함. for (i=0; i<N; i++){ scanf("%d",&arr[N-1-i]); } //이번에는 순서대로 어레이를 출력함. for (i=0; i<N; i++){ printf("%d ",arr[i]); } return 0; } | cs |
<설명>
N의 값이 얼마가 될 지 모르기 때문에, 처음부터 어레이의 크기를 최대로 하여 선언한다.
N의 값을 입력받기 전에 어레이가 선언되기 때문이다.
arr[N-1-i] : 입력받을 때 역순으로 저장한다. -1인 이유는 어레이는 0부터 시작하기 때문이다.