栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

7-5 数组元素循环右移n位 (15 分)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

7-5 数组元素循环右移n位 (15 分)

问题描述
从键盘接收两个整数m和n,分别表示一维整型数组的元素个数,和要向移动的位数。已知00。

在用户输入m和n后,第二行输入相应个数的数组元素。

程序要实现的功能是,让数组元素往右移动n位。

例如,数组的5个元素是:1,2,3,4,5。

往右移动1位后:5,1,2,3,4

往右移动2位后:4,5,1,2,3

输入格式:
第一行输入两个整数,第二行输入数组元素。

输出格式:
移动后,数组的每一个元素,注意每个数组元素后有且仅有一个空格。

输入样例:
第一行的数据5和2,表示数组容量为5,让数组元素往右移动2个位置。

第二行是数组的每一个元素的值。

5 2
1 2 3 4 5 

输出样例:
输出移动后的数组元素值,注意每个元素后有且仅有一个空格。

4 5 1 2 3 

思路分析
题目仅仅要求按顺序输出,所以并不需要将数组赋值到另外的数组,只需要操作下标即可
代码实现

#include
int main(){
	int m,n,i,temp;
	scanf("%d%d",&m,&n);
	int a[m];
	for(i=0;im)	n-=m;
		temp=(m-n+i)%m;
		printf("%d ",a[temp]);
	}
	return 0;
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/657254.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号