本文目錄一覽:
c語言如何將二維數組行列循環移位
#includestdio.h
#define N 5
int main(){
int i,j,m,n,a[N][N];
printf(“input m n:”);
scanf(“%d%d”,m,n);
while(m0)m-=N;
while(n0)n-=N;
for(i=0;iN;i++)
for(j=0;jN;j++)
a[i][j]=i*N+j+1;
for(i=0;iN;i++){
for(j=0;jN;j++)
printf(“%-3d”,a[(N-m+i)%N][(N-n+j)%N]);
printf(“\n”);
}
return 0;
}
input m n:1 1
25 21 22 23 24
5 1 2 3 4
10 6 7 8 9
15 11 12 13 14
20 16 17 18 19
C語言數組怎麼左移?
//用一個循環就可以實現數組的循環左移:
int i,n,m;//temp表示左移位數
int a[n];
for(i=0;in-m;i++)a[i]=a[i+m];//此時的數組個數為n-m
C語言問題 怎麼實現一個數組循環左移
其實很簡單,將第一個比如a[0]用一個變量保存,然後將後一個元素的值賦給前一個,最後將保存a[0]的變量的值賦給最後一個元素,循環 。對於一個數組,應該用雙重循環實現,外循環代表你需要左移的次數,內循環即將每一個元素左移
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/286359.html