數(shù)組循環(huán)左移m位的算法 用c語言編寫一程序,接收從鍵盤上輸入的整數(shù)i,將數(shù)組循環(huán)左移i位?
用c語言編寫一程序,接收從鍵盤上輸入的整數(shù)i,將數(shù)組循環(huán)左移i位?想法:您可以定義兩個(gè)數(shù)組a和B,以及整數(shù)I。數(shù)組a用于存儲(chǔ)原始數(shù)據(jù),數(shù)組B用于存儲(chǔ)移動(dòng)的數(shù)據(jù)。依次地,從a的第i位到結(jié)束位置的數(shù)字存儲(chǔ)
用c語言編寫一程序,接收從鍵盤上輸入的整數(shù)i,將數(shù)組循環(huán)左移i位?
想法:您可以定義兩個(gè)數(shù)組a和B,以及整數(shù)I。數(shù)組a用于存儲(chǔ)原始數(shù)據(jù),數(shù)組B用于存儲(chǔ)移動(dòng)的數(shù)據(jù)。依次地,從a的第i位到結(jié)束位置的數(shù)字存儲(chǔ)在B中,然后從a的0位置到i位置的數(shù)字存儲(chǔ)在B中。最后的B是數(shù)組將i位循環(huán)向左移動(dòng)的最終結(jié)果。//參考代碼:#include<math。H>#包括<stdio。H>int main(){int a[6]={1,2,3,4,5,6},B[6],I,Ji=2對(duì)于(J=0j<6j){B[J]=a[(I J)%6]}對(duì)于(J=0j<6j)printf(%d”,a[J])printf(“ ”),對(duì)于(J=0j<6j)printf(%d”,B[J]),返回0}/*輸出:1 2 3 4 5 63 4 5 6 1 2*/