解题思路:在一个数组中不好进行换来换去,就用两个数组换就行。
注意事项:把要变动的m个数通过第一次循环替换到b数组中的对应位置,然后通过第二个数组把a数组中剩下的循环到b中就完了。easy!!
参考代码:
#include <stdio.h>
#include <malloc.h>
int main ()
{
int n,m,i;
int *a,*b;
scanf("%d",&n);
a=(int *)malloc(n*sizeof(int ));
b=(int *)malloc(n*sizeof(int ));
for(i=0;i<n;i++)
scanf("%d",&a[i]);
scanf("%d",&m);
for(i=n-m;i<=n-1;i++)
{
b[i-n+m]=a[i];
}
for(i=0;i<n-m;i++)
{
b[i+m]=a[i];
}
for(i=0;i<n;i++)
printf("%d ",b[i]);
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.7 (C++代码)(经常这样写会不会被打死)浏览:2565 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:590 |
川哥的吩咐 (C++代码)浏览:1076 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:543 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:798 |
WU-格式化数据输出 (C++代码)浏览:1312 |
IP判断 (C语言代码)浏览:820 |
The 3n + 1 problem (C语言代码)浏览:603 |
C语言训练-亲密数 (C语言代码)浏览:697 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:569 |