解题思路:
把数组理解成一个环形数据。

1。从(n-m)处开始输出for(i=n-m;i<2*n-m;i++);
2。要输出n个数,到(2*n-m)处结束输出for(i=n-m;i<2*n-m;i++);

3。遍历a数组输出,过了n后从0开始。a[i%n]


参考代码:


#include <stdio.h>

int main(void)

{

     int n=0,m=0,i=0;

     int a[128]={0};

    

     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;

}


点赞(1)
 

0.0分

23 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 14 条评论

喜欢吃东西的小东西 1年前 回复TA
@KO i从n_m开始,你应该知到为啥吧。i小于2n-m相当于1234567891012345678910   从9开始输出,然后10 1 2 3~一直到第二遍的8停止,
编程小白 1年前 回复TA
牛逼大佬,太简洁了
起岸希 2年前 回复TA
牛逼啊
赵欢欢 2年前 回复TA
真的厉害,别的都是一堆看不懂的鬼东西
江子亮 2年前 回复TA
大佬大佬,极简之至
向开泰 3年前 回复TA
与题意不符啊
KO 3年前 回复TA
佩服佩服,这就是大佬吗
uq_78487532311 3年前 回复TA
表示看不懂
hhfz 3年前 回复TA
厉害厉害
3年前 回复TA
在其他的一大串代码面前简直完美