有n个整数,使其前面各数向后移m个位置,最后m个数成最前面的m个数,要求写一函数实现功能,用指针变量做

来源:百度知道 编辑:UC知道 时间:2024/06/30 05:46:49
我写了一个程序,但是运行不了,不知道哪里出错了
#include<stdio.h>
void main()
{
int a[30];int n,m,i;
scanf("%d,%d",&n,&m);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
hanshu(a,n,m);
for(i=0;i<n;i++)
printf("%d",a[i]);
}
hanshu(int a[30], int n,int m)
{
int *p,t;
for(p=a+n-1;p>a,m>0;p--,m--)
{t=*(a+n-1);
*p=*(p-1);
*a=t;}
if(m>0) hanshu(a,n,m);
}
请帮忙看一眼哪里错了

这道题我做过,以下是我的程序,能运行成功,希望能帮助到你:

#include"stdio.h"
#define n 9
void main(){
int a[n]={1,2,3,4,5,6,7,8,9},b[n],m,i,c=0;
printf("请输入m:\n");
scanf("%d",&m);
while(m>=n){
printf("请输入m:\n");
scanf("%d",&m);
}
while(c<m){
for(i=0;i<n;i++)
b[i]=a[i];
for(i=0;i<n;i++){
if(i<n-1)
a[i+1]=b[i];
else
a[0]=b[i];
}
c++;
}
printf("\n\n位置调整后:\n\n\n");
for(i=0;i<n;i++)
printf("%2d",a[i]);
printf("\n\n\n");
}

题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数 有n个整数,使前面个数数顺序向后一m个位置,移出的数再从开头移入。 有N个整数,其积为N,其和为0,求证:数N一定能被4整除. 读入N个整数,输出其每个数出现的次数!! 有一个整数N,N可以分解成若干个整数之和,问如何分解能使这些数的乘积最大。(c语言) 编个C++程序怎么弄啊。。有一个整数n,将n分解成若干个整数之和,问如何分解能使这些数的乘积最大 哭求:在1~20共20个整数中取两个数相加,使其和为偶数的不同取法有多少种? 17. n个整数, 输入n个整数,求n个数的平均值,并输出比平均值大的数 股票名字前面有个N是什么意思?