首页 > 中学考试杂题 > 题目详情
C语言:有n个整数,使前面各数顺序向后移m个位置,最后m个数变成前面m个数.写一函数实现我写了程序 语法没有错误 但是没
题目内容:
C语言:有n个整数,使前面各数顺序向后移m个位置,最后m个数变成前面m个数.写一函数实现
我写了程序 语法没有错误 但是没有办法把最后m个数变成前面m个数.以后长期定向提问
#include
int *p,n,m,a[100];
void swap(int *p,int n,int m)
{
int i,j,*t,b[100];
\x05t=b;
\x05for(j=n-1;j>=m;j--)
\x05{
\x05 *(t+j)=*(p+j);
\x05 }
for(i=m-1;i>=0;i--)
\x05 {
\x05\x05*(p+i+m)=*(p+i);
}
\x05for(j=n-1;j>=m;j--)
\x05{
\x05 *(p+j+m)=*(t+j);
\x05}
}\x05
int main()
{
\x05int i;
\x05printf("输入数据的个数以及想要从哪里开始移动:\n");
scanf("%d%d",&n,&m);
printf("输入移动前的数组为:\n");
for(i=0;i
C语言:有n个整数,使前面各数顺序向后移m个位置,最后m个数变成前面m个数.写一函数实现
我写了程序 语法没有错误 但是没有办法把最后m个数变成前面m个数.以后长期定向提问
#include
int *p,n,m,a[100];
void swap(int *p,int n,int m)
{
int i,j,*t,b[100];
\x05t=b;
\x05for(j=n-1;j>=m;j--)
\x05{
\x05 *(t+j)=*(p+j);
\x05 }
for(i=m-1;i>=0;i--)
\x05 {
\x05\x05*(p+i+m)=*(p+i);
}
\x05for(j=n-1;j>=m;j--)
\x05{
\x05 *(p+j+m)=*(t+j);
\x05}
}\x05
int main()
{
\x05int i;
\x05printf("输入数据的个数以及想要从哪里开始移动:\n");
scanf("%d%d",&n,&m);
printf("输入移动前的数组为:\n");
for(i=0;i
我写了程序 语法没有错误 但是没有办法把最后m个数变成前面m个数.以后长期定向提问
#include
int *p,n,m,a[100];
void swap(int *p,int n,int m)
{
int i,j,*t,b[100];
\x05t=b;
\x05for(j=n-1;j>=m;j--)
\x05{
\x05 *(t+j)=*(p+j);
\x05 }
for(i=m-1;i>=0;i--)
\x05 {
\x05\x05*(p+i+m)=*(p+i);
}
\x05for(j=n-1;j>=m;j--)
\x05{
\x05 *(p+j+m)=*(t+j);
\x05}
}\x05
int main()
{
\x05int i;
\x05printf("输入数据的个数以及想要从哪里开始移动:\n");
scanf("%d%d",&n,&m);
printf("输入移动前的数组为:\n");
for(i=0;i
本题链接: