声明的a只有21个元素,而a[i+2]=a[i]+a[i+1];在i=20时为a[22]=a[20]+a[21];所以a[22]显然是越界了。如果这个单元是禁止写入或破坏当前执行的程序的,那么系统就要报错。
数组越界你定义的数组是a[21],对应下标的数据范围为:a[0],a[1],...,a[20]而当for(i=1;i<=20;i++)执行到最后一次里,i为21,a[21]就越界了,内存出错,exe就停下工作