概述
#include<stdio.h>
void removed(int a[],int m,int n);
void main()
{
int m,s[ 10],*p;
printf(" Input data:n");
for(p=s;p<s+10;p++)/*输入10个元素值*/
scanf("%d",p);
printf("Move m=");
scanf("%d" ,&m);
removed(s,m,10);/*调用循环右移函数*/
printf(" After: n");
for(p=s;p<s+10;p++)/*按移动后的顺序输出*/
printf("%5d" ,*p);
printf("n");
}
void removed(int a[],int m,int n)
{
int i,t,*p;
for(i=0;i<m;i++)/*循环右移m个元素位置*/
{
p=a+n-1;/*p 指向数组的最后一个元素a[n-1]*/
t=*p;/*t保存a[n-1]的值*/
for(;p>a;p--)/*将a[n-2]、…、a[0]顺序循环右移一位至a[n-1]、…、a[1]*/
*p=*(p-1);
*p=t;/*退出循环时p指向a[0],即将t中的原a[n-1]值送a[0]*/
}
}
运行结果:
最后
以上就是阔达台灯为你收集整理的C语言:将一维数组的各元素值循环右移m个元素位置,并用函数实现的全部内容,希望文章能够帮你解决C语言:将一维数组的各元素值循环右移m个元素位置,并用函数实现所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复