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

 我来答
百度网友834a94
2017-05-03
知道答主
回答量:19
采纳率:0%
帮助的人:11.7万
展开全部
这个是没办法做到的。

数组定义在编译链接阶段就需要确定下来,在系统启动时需要在数据段分配指定空间。所以是不能在代码运行过程中动态定义数组的。
你可以用动态申请内存的方法为数组分配空间,但需要用一个统一的指针的偏移动作来实现访问不同数组的功能。
kkfever
2017-05-03 · TA获得超过653个赞
知道小有建树答主
回答量:85
采纳率:0%
帮助的人:51万
展开全部
数组定义必须明确大小,定义时不能用变量放入下标。
比如 int a=6;
char b[a];
这样是不可行的。
可以使用malloc分配指定大小的空间。
比如int a=6;
char *b;
b=(char*)malloc(a);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fengswd
2013-04-23 · TA获得超过333个赞
知道小有建树答主
回答量:226
采纳率:0%
帮助的人:177万
展开全部
定义不定长数组:
typedef struct
{ int count;
int a[];
}nofixlen;

nofixlen NOFIX;
然后就可以输入一个数字来引用a[]这个数组了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
知道不知道巨蟹
2013-04-23 · 超过17用户采纳过TA的回答
知道答主
回答量:77
采纳率:0%
帮助的人:45.2万
展开全部
....

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

........
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式