关于数组定义
请问为何不能这样写呢?编译没问题,但一运行程序就出错了 
int a;
scanf("%d", &a); //已修正
int b[a];谢谢楼下两位,已经可以了,但我的编译器真的可以定义 int b[a]; 如果不能这样定义的话,请问如何让用户定义这个a的个数呢?
[ 本帖最后由 lixnkei 于 2010-2-24 21:08 编辑 ]
程序代码:# include <stdio.h>
int main(void)
{
int a, i;
printf("请输入需要定义数组的个数:");
scanf("%d", &a);
int b[a];
for(i=0; i<a; i++)
{
printf("请输入第 %d 个数组的值:", i+1);
scanf("%d", &b[i]);
}
printf("\n该数组的值明细:\n");
for(i=0; i<a; i++)
{
printf("b[%d] = %d\n", i, b[i]);
}
return 0;
}