資料結構-起步能力自測題-自測-3 陣列元素迴圈右移問題
阿新 • • 發佈:2018-12-08
輸入格式:
每個輸入包含一個測試用例,第1行輸入N(1≤N≤100)和M(≥0);第2行輸入N個整數,之間用空格分隔。
輸出格式:
在一行中輸出迴圈右移M位以後的整數序列,之間用空格分隔,序列結尾不能有多餘空格。
輸入樣例:
6 2
1 2 3 4 5 6
輸出樣例:
5 6 1 2 3 4
程式碼:
#include <stdio.h> #include <math.h> void moveOneOffset(int number, int *zero); int main(int argc, char *argv) { int number, offset; int i; scanf("%d %d", &number, &offset); int array[100]; for( i = 0; i < number; i++) { scanf("%d", &array[i]); } for( i = 0; i < offset; i++) { moveOneOffset(number, array); } for( i = 0; i < number; i++) { printf("%d", array[i]); if (i < number - 1) { printf(" "); } } return 0; } void moveOneOffset(int number, int *zero) { int temporary = 0; temporary = *(zero + number - 1); int i = number - 1; while (i > 0) { *(zero + i) = *(zero + i - 1); i--; } *zero = temporary; }
結果: