解题思路:比如 1 2 3 4 5 6 7 8 9 10;若要挪动m=2;则把8看作数组的头,则把1~8放到10后面;则输出时就从9所在数组的位置开始输出,输出到7为止
注意事项:本题以1~10这10个数为例,方便理解,这里以m=2为例
参考代码:
#include<stdio.h>
int back(int a[],int x,int n);
int main()
{
int n;
scanf("%d",&n);
int a[100] ;
int i,j=0;
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
int x;
scanf("%d",&x);
back(a,x,n); //定义函数即把数组a的首地址,以及要挪动的项,输入的总个数。
j=n-x; //即从数字9所在数组的位置开始输出。
for(i=0;i<n;i++)
{
printf("%d ",a[j]);
j=j+1;
}
return 0;
}
int back(int a[],int x,int n)
{
int j,i;
int t=n;
for(i=0;i<n-x;i++,t++)
{
a[t]=a[i]; //即把1~8个数放到10的后面.
}
}
0.0分
1 人评分
上车人数 (C语言代码)浏览:781 |
C语言考试练习题_保留字母 (C语言代码)浏览:713 |
简单的a+b (C语言代码)浏览:419 |
简单的a+b (C语言代码)浏览:546 |
C语言程序设计教程(第三版)课后习题12.3 (C语言代码)浏览:548 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:559 |
简单的a+b (C语言代码)浏览:560 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:598 |
P1044 (C++代码)浏览:494 |
C语言程序设计教程(第三版)课后习题6.5 (C语言代码)浏览:699 |