解题思路:
n个数后移m位,可以理解为两个部分输出:
1、从数组的第n-m+1个数到第n个数。
2、从第一个数到第n-m个数。
因此,可以考虑利用取余操作,当循环到了第n个数以后回到第一个数,即将以上的两个部分利用一个for循环输出。
参考代码:
#include int main() { int n,m,i; int a[1000]; scanf("%d", &n); for(i=0;i<n;i++) { scanf("%d", &a[i]); } scanf("%d", &m); for(i=n-m;i<2*n-m;i++) { printf("%d ", a[i%n]); } return 0; } |
0.0分
2 人评分
分糖果 (C++代码)浏览:1447 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:524 |
printf基础练习2 (有点不明白)浏览:845 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:611 |
水仙花 (C语言代码)浏览:1053 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:609 |
愚蠢的摄影师 (C++代码)浏览:938 |
IP判断 (C语言代码)浏览:539 |
判定字符位置 (C语言代码)浏览:799 |
A+B for Input-Output Practice (I) (C语言代码)浏览:431 |