C语言怎样用scanf定义数组长度,再定义数组各元素?
4个回答
推荐于2018-11-12
展开全部
可以使用内存分配函数来实现。
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n, *a, i;
printf("输入数组长度:");
scanf("%d", &n);
a = malloc(sizeof(int) * n); /*分配内存*/
printf("输入%d个数:\n", n);
for(i = 0; i < n; i++)
scanf("%d", a + i);
printf("输入的数是:\n");
for(i = 0; i < n; i++)
printf("%d ", a[i]);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n, *a, i;
printf("输入数组长度:");
scanf("%d", &n);
a = malloc(sizeof(int) * n); /*分配内存*/
printf("输入%d个数:\n", n);
for(i = 0; i < n; i++)
scanf("%d", a + i);
printf("输入的数是:\n");
for(i = 0; i < n; i++)
printf("%d ", a[i]);
return 0;
}
2013-05-30
展开全部
C语言中数组长度必须是常量。如果你想用不定长数组,可以事先定义一个比较大的数组,再用一个变量记录实际用到的数组元素数,这样也可以大致不定长的目的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-30
展开全部
scanf函数是接受屏幕输入的函数
数组可分动态数组和常量数组,一般数组我们指的是这种常量的,定死了长度的。动态数组是指针,需要编程者自己分配,自己释放
数组可分动态数组和常量数组,一般数组我们指的是这种常量的,定死了长度的。动态数组是指针,需要编程者自己分配,自己释放
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-30
展开全部
可以进行动态分配空间
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询