解题思路:1.输入和输出的函数定义的形参为整形指针类型变量而不是返回值(void)
2.fun()函数定义:定义两个数组(数组长度在主函数中定义并且使用的也是主函数中定义的函数),在功能函数中,现将a[]错位后的情况赋给b[](用for循环)(如果错位赋值的话会将错位的位数在数组前段体现),然后使用一个for循环,即将b数组中对于超出a数组长度的数组数值再赋值到b数组错位的地方。
3.输入数据是输入到a数组。输出数据是输出b数组的值
参考代码:#include
void input(int* a,int n);
void output(int* a,int n);
void fun(int* a,int* b,int cout,int n);
int main(void)
{
int a[100],b[100],num,cout;
scanf("%d",&num);
input(a,num);
scanf("%d",&cout);
fun(a,b,cout,num);
output(b,num);
return 0;
}
void input(int* a,int n)
{
int i;
for(i=0;i
{
scanf("%d",&a[i]);
}
}
void fun(int* a,int* b,int cout,int n)
{
int i;
for(i=0;i
{
b[i+cout]=a[i];
}
for(i=0;i
{
b[i]=b[i+n];
}
}
void output(int* a,int n)
{
int i;
for(i=0;i
{
printf("%d ",a[i]);
}
}