#include<stdio.h>
#define n 5
int main(void)
{
int j,i,a[n],x;
scanf("%d",&x);
scanf("%d",&a[n]);//为啥自己输入数组,结果最后输出的数组是乱码
for(j=x;j<n-1;j++)
{
a[j]=a[j+1];
}
for(i=0;i<n-1;i++)
{
printf("%d ",a[i]);
}
printf("\n");
return 0;
}
你定义的时候int a[5],那用的时候只能是a[0]-a[4]不然就是下标越界了
scanf("%d",&a[n]);不对
要用循环对每一个元素进行赋值
#include<stdio.h>
#define n 6int main(void)
{
int i,x;
scanf("%d",&x);
int a[n];
for(i=0;i<=n-1;i++)
{
scanf("%d",&a[i]);
}
for(i=x;i<n-1;i++)
{
a[i]=a[i+1];
}
for(i=0;i<n-2;i++)
{
printf("%d ",a[i]);
}
printf("%d",a[n-1]);
printf("\n");
return 0;
}