반응형
array 내부에서 사용자가 입력한 요소끼리 서로 swap을 하여 출력하는 프로그램을 만들어볼 것이다.
주어지는 array는 {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}이다.
기대하는 출력 결과는 아래와 같다.
1 5
0 1 2 3 4 5 6 7 8 9
0 5 2 3 4 1 6 7 8 9
4 9
0 1 2 3 4 5 6 7 8 9
0 1 2 3 9 5 6 7 8 4
즉 "사용자가 두 요소를 입력 → 기존 문자열과 swap 후의 문자열을 출력"
하는 것이 목표이다.
프로그램은 아래와 같다.
#include <stdio.h>
#define SIZE 10
int main() {
int x,y;
scanf("%d %d", &x, &y);
int arr[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
for (int i = 0; i < SIZE; i++) {
printf("%d ", arr[i]);
}
printf("\n");
int k = arr[x];
arr[x]=arr[y];
arr[y]=k;
for (int i = 0; i < SIZE; i++) {
printf("%d ", arr[i]);
}
return 0;
}
작동 원리는 간단하다. array를 설정 후, for문을 이용해 출력해준 뒤, 아래 구문을 이용해 swap을 한 후, 다시 for문으로 출력하는 것이다.
int k = arr[x];
arr[x]=arr[y];
arr[y]=k;
반응형
'C언어 > 예제' 카테고리의 다른 글
[C] 최댓값과 인덱스를 찾는 프로그램 (0) | 2024.11.16 |
---|---|
[C] 십의 자리가 1인 숫자 개수를 세는 프로그램 (0) | 2024.11.16 |
[C] 대소문자 변환 프로그램 (0) | 2024.11.10 |
[C] 문자열 사이의 거리를 구하는 프로그램 (0) | 2024.11.10 |
[C] 두 번 연속 같은 숫자가 나올 때까지 반복하는 프로그램 (0) | 2024.11.10 |