正确的:
```c
#include<stdio.h>
void PrintArr(int a[],int n)
{
for(int i=0;i<n-1;i++)//利用循环实现元素输出
{
printf("%d",a[i]);//输出数字
if(i<n-2) printf(" ");//当输出数字并且不是最后一个数字之时,输出一个空格
}
}
void del(int n,int a[],int x)
{
for(int i=x;i<n;i++)//从第x位开始,将数组元素每次用后一位取代。
a[i]=a[i+1];//前一位变成后一位
}
int a[100];//开辟数组a的空间
int main()
{
int i,n,x;//定义循环变量i和数组元素个数n以及要删除的元素下标x
scanf("%d",&n);//键盘输入n
for(i=0;i<n;i++)//键盘输入数组a[]
scanf("%d",&a[i]);
scanf("%d",&x);//键盘输入x
del(n,a,x);//执行del函数
PrintArr(a,n);//执行PrintArr函数
return 0;//程序正常结束
}
我的:
#include<stdio.h>
void PrintArr(int a[], int n)
{
for(int c=0;c<n-1;c++)
{
printf("%d ",a[c]);
}
}
void del(int a[], int n, int i)
{
for(int p=i;i<n;p++)
{
a[p]=a[p+1];
}
}
int a[100];
int main()
{
int n,i,j;
scanf("%d",&n);
for(j=0;j<n;j++)
{
scanf("%d",&a[j]);
}
scanf("%d",&i);
del(a,n,i);
PrintArr(a,n);
return 0;
}
```