菜鸟关于数组元素向后移动的问题求教
我是在做静态链表插入元素时候遇到的问题 目的是把所有元素向后移动一位 把第一个元素留出来插入 结果移动元素的语句没作用程序代码:
#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; }
截图
这是为什么啊?