N개의 정수가 있어 이전 숫자들의 순서가 M자리 뒤로 이동하고, 마지막으로 M개의 숫자가 앞에 있는 M개의 숫자가 됩니다. 위 함수를 구현하는 함수를 작성하고, N개의 정수를 입력하여 주 함수에 조정된 N개의 숫자를 출력합니다.
#include "stdafx.h" #include "stdio.h" int main(int argc, char* argv[]) {void move(int array[20], int n, int m); 정수[20],n,m,i; printf("몇 개의 숫자?"); scanf("%d",&n); printf("input %d numbers:\n",n); for(i=0; i<n; i++) scanf("%d",&number[i]); Printf("몇 곳으로 옮기고 싶나요?"); SCANF("%d",&m); move(number, n, m); printf("지금은:\n"); for(i=0; i<n; i++) printf("%d ",number[i]); printf("\n"); 0을 반환;
} void move(int array[20], int n, int m) // 루프에서 한 번 뒤로 이동하는 함수 {int *p,array_end; array_end=*(array+n-1); for(p=배열+n-1; p>array; p--) *p=*(p-1); *array=array_end; m--; if(m>0) move(array,n,m); 재귀 호출, 루프 M의 수가 0이 되면 호출이 중단됩니다
}
|