循环数组
循環(huán)數(shù)組
作者: XXX 時間限制: 1S 章節(jié): 函數(shù)
問題描述 :
編寫程序,將一維數(shù)組中的元素向右循環(huán)移動N次。
輸入說明 :
第一行整數(shù)n,表示數(shù)組大小為n
第二行,n個數(shù),表示數(shù)組中的n個元素。
第三行,整數(shù)N,表示數(shù)組向右移動N次。
輸出說明 :
移動后的數(shù)組元素,每兩個元素之間以一個空格分隔。行首與行尾無多余空格。
輸入范例 :
10
1 2 3 4 5 6 7 8 9 10
4
輸出范例 :
7 8 9 10 1 2 3 4 5 6
#include<stdio.h> #include<stdlib.h> int main(){int n;scanf("%d",&n);int i;int a[100];for(i=0;i<n;i++){scanf("%d",&a[i]);}int N;scanf("%d",&N);N=N%n;//當向右移的位數(shù)大于數(shù)字個數(shù)時,仍然有效int b[100];int j;for(j=0,i=n-N;j<N,i<n;j++,i++){b[j]=a[i];//將后N位數(shù)字存儲到數(shù)組b中}for(i=n-1;i>=N;i--){a[i]=a[i-N];//將前N位數(shù)向后移動N位}for(i=0,j=0;i<n-N,j<N;i++,j++){a[i]=b[j];//將數(shù)組B中的N位數(shù)輸入A中}for(i=0;i<n-1;i++){printf("%d ",a[i]);}printf("%d",a[n-1]); // system("pause"); }總結(jié)
- 上一篇: ChatGPT上线2个月活跃用户破亿 马
- 下一篇: 索尼 PS VR2 护航游戏《地平线:山