do while 问题
#include <stdio.h>int main()
{
int i=0,a[10];
printf("input numbers,if you want stop,input 100:\n");
do
{ printf("i=%d,a[i]=%d",i,a[i]);
scanf("%d\n",&a[i]);
i+=1;
}
while(a[i]!=100);
}
为什么,程序执行时,a[i]我还没赋值呢,他却print了一个极大的数来?
#include <stdio.h>
int main()
{
int i=0,a[10];
printf("input numbers,if you want stop,input 100:\n");
do
{ i+=1;
scanf("%d\n",&a[i]);
printf("i=%d,a[i]=%d",i,a[i]);
}
while(a[i]!=100);
}
这种情况,运行起来,输入第一个数,不输出,当输入第二个数时,却输出第一次运算数值。又是为什么呢?