jzxx2670C語言程序設計教程(第三版)課後習題10.4

題目描述
有n個整數,使前面各數順序向後移m個位置,最後m個數變成前面m個數,見圖。寫一函數:實現以上功能,在主函數中輸入n個數和輸出調整後的n個數。

輸入
輸入數據的個數n n個整數 移動的位置m

輸出
移動後的n個數

樣例輸入
10
1 2 3 4 5 6 7 8 9 10
2
樣例輸出
9 10 1 2 3 4 5 6 7 8

傳送門

滿分代碼:
#include <stdio.h>
#define N 100
void move(int a[], int n) {
	int i, temp = a[n-1];
	for(i = n-1; i >= 1; i--) {
		a[i] = a[i-1];
	}
	a[0] = temp;
}
int main(int argc, char const *argv[]) {
	int a[N], n, i, m;
	scanf("%d", &n);
	for(i = 0; i < n; i++) {
		scanf("%d", &a[i]);
	}
	scanf("%d", &m); 
	for(i = 0; i < (m%n); i++)
		move(a, n);
	for(i = 0; i < n; i++) {
		printf("%d ", a[i]);
	}
	return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章