菜鸟关于数组元素向后移动的问题求教
我是在做静态链表插入元素时候遇到的问题 目的是把所有元素向后移动一位 把第一个元素留出来插入 结果移动元素的语句没作用
程序代码:
#include<stdio.h>
#define MAX 10
int main()
{
int ar[MAX]={0};
int n;
int i;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&ar[i]);
}
for(i=n;i<=0;i--)
{
ar[i+1]=ar[i];
}
for(i=0;i<n+1;i++)
printf("%d",ar[i]);
printf("\n");
return 0;
}
这是代码 我用的是vc++6.0编译的
这是运行时候的截图
第一个5 是给5个元素赋值 然后依次输入5个数
然后我又运行了个测试 就是直接给数组元素ar【n+1】赋值 结果是赋值语句不起作用...
程序代码:
#include<stdio.h>
#define MAX 10
int main()
{
int ar[MAX]={0};
int n;
int i;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&ar[i]);
}
for(i=n;i<=0;i--)
{
ar[i+1]=ar[i];
}
for(i=0;i<n+1;i++)
printf("%d",ar[i]);
printf("\n");
return 0;
}
截图
这是为什么啊?










