C語言 陣列迴圈右移問題

2021-10-11 14:59:32 字數 652 閱讀 4445

題目來自貴大oj。

題目描述:編制程式,輸入整型變數n和m,建立乙個長度為n的一維整型陣列並輸入所有陣列元素。將陣列中的元素迴圈右移m個位置後按順序輸出該陣列所有元素。

例如:原陣列為: 1 2 3 4 5    迴圈右移3個位置後應該變為    3 4 5 1 2

注意:m的值如果大於等於5該如果處理   

輸入描述​:輸入第1行給出正整數

n 和整數m(

≥0);第2行給出

n個整數,其間以空格分隔

輸出描述​:在一行中輸出迴圈右移

m位以後的整數序列,之間用空格分隔,

序列結尾不能有多餘空格。

樣例輸入

​8 3

1 2 3 4 5 6 7 8

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

思路:每次取最後乙個元素的值,用迴圈將其餘元素整體後移一位。

例項:

①在陣列內部進行轉換(不需輔助陣列)

#include#define max 100

void main()

for(int i=0;i②陣列元素循序並未改變,輸出時右移輸出

#include#define max 100

void main()

}

陣列迴圈右移問題

首先,假設我們有乙個具有6個元素的陣列 1,2,3,4,5,6 現在我們要對這個陣列迴圈右移4次,我們很直接很夠推出它的結果是 3,4,5,6,1,2 但是我們如何去實現這樣乙個問題呢?step1 儲存好陣列中最後乙個元素的值 step2 從第乙個元素到倒數第二個元素依次向右移動乙個位置 step3...

陣列元素迴圈右移問題

乙個陣列a中存有n 0 個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移m 0 個位置,即將a中的資料由 a0a1 an 1 變換為 an man m 1 a0a1 an m 2an m 1 最後m個數迴圈移至最前面的m個位置 如果需要考慮程式移動資料的次數盡量少,要如何設計移動的方法?輸...

陣列元素迴圈右移問題

written by bruth lee in southwest universiy of science and technology.乙個陣列 a中存有 n 個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移 m 個位置,即將 a中的資料由 a 0 a 1 a n 1 變換為 a n ...