easy software

C언어 배열을 이용한 예제(홀수면 앞부터, 짝수면 뒤부터 저장) 본문

C언어/포인터와 배열

C언어 배열을 이용한 예제(홀수면 앞부터, 짝수면 뒤부터 저장)

JAVA 웹개발자 2015. 1. 23. 14:54

이번에도 배열을 이용한 문제입니다.

 

조건은 이러합니다.

 

1. 길이가 10인 배열을 선언하고 10개의 정수를 입력받는다.

 

2. 입력받은 숫자가 홀수면 배열의 앞부터, 짝수면 뒤부터 채워나간다.

 

 

#include <stdio.h>

 

int main(void){

 

 int arr[10];
 int input;
 int front = 0;
 int rear = 9;

 

 printf("총 10개의 숫자 입력 \n");

 //10개의 숫자를 입력받기 위해 반복문을 수행
 for (int i = 0; i < 10; i++){
      printf("?: ");
      scanf_s("%d", &input);

 

          //사용자가 입력한 값이 홀수면 앞에서부터 채워나감
          if (input % 2 != 0)

               //가장 앞에 저장 후 front값을 1증가하여 다음번에는 그 뒤에 저장하게 함
               arr[front++] = input;

 

         //사용자가 입력한 값이 짝수면 뒤에서부터 채워나감
          else

               //가장 뒤에 저장 후 rear값을 1감소하여 다음번에는 그 앞에 저장하게 함
               arr[rear--] = input;

     }

 

 printf("배열 요소의 출력: ");
 for (int i = 0; i < 10; i++)
      printf("%d ", arr[i]);

 

 return 0;


}

Comments