본문 바로가기

ETC/자격증

[정보처리기사실기]C 언어 문제 2

반응형

Q>

다음 C언어로 구현된 프로그램의 실행 결과를 작성하시오.

 

#include <stdio.h>

void align(int a[]) {
  int temp;
  for (int i = 0; i < 4; i++) {
    for (int j = 0; j < 4 - i; j++) {
      if (a[j] > a[j + 1]) {
        temp = a[j];
        a[j] = a[j + 1];
        a[j + 1] = temp;
      }
    }
  }
}

main() {
  int a[] = {85, 75, 50, 100, 95};
  align(a);
  for (int i = 0; i < 5; i++) {
    printf("%d ", a[i]);
  }
}

 

A>

50 75 85 95 100

 

a>

a[0] a[1] a[2] a[3] a[4]
85 75 50 100 95

 

버블 정렬 오름차순 문제>

i j a[0] a[1] a[2] a[3] a[4]
  85 75 50 100 95
0 0 75 85      
1   50 85    
2          
3       95 100
4 75 50 85 95 100
1 0 50 75      
1          
2          
3 50 75 85 95 100
2 0          
1          
2 50 75 85 95 100
3 0          
1 50 75 85 95 100
4            

 

 

반응형