在c语言中如何做到输入一个数字,就定义了n(为输入的数字)个数组?

如题所述

这个是没办法做到的。

数组定义在编译链接阶段就需要确定下来,在系统启动时需要在数据段分配指定空间。所以是不能在代码运行过程中动态定义数组的。
你可以用动态申请内存的方法为数组分配空间,但需要用一个统一的指针的偏移动作来实现访问不同数组的功能。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-23
定义不定长数组:
typedef struct
{ int count;
int a[];
}nofixlen;

nofixlen NOFIX;
然后就可以输入一个数字来引用a[]这个数组了
第2个回答  2013-04-23
....

main(){
int n,a[1000],i;
scanf(("%d",&n)
for(i=0;i<n;i++)
scanf("%d",&a[i]);

........
第3个回答  2013-04-23
柔性数组
struct type{
int i;
int a[];
};
第4个回答  2013-04-23
malloc,动态分配