bycj.net
当前位置:首页 >> C语言怎么输入任意长度的一个数组 >>

C语言怎么输入任意长度的一个数组

首先 严格来说 不可能出现任意长度。 内存是有限的 超出一定长度后,不可能存的下,虽然这个值可能是超级大的,但总有限度。 其次,所谓的任意长度,其实就是可变长数组。 那么,在事先不知道数组规模下,就要靠输入,来确定数组大小了。 重点在...

1、使用动态数组可以实现变长度数组。建动态数组,其他就像数组一样使用就行了。 2、例程: int row=0; //函数int col=0; //列数int i;int ** arr=NULL; //下面假设存储的数据类型为intprintf(“请输入二维数组的行数和列数:”);scanf("%d%d",&r...

动态分配内存 #include int main() { int n,*p; int i; printf("Please input the num:");//输入数组的长度 scanf("%d",&n); p=(int *)malloc(sizeof(int)*n);//定义动态数组 printf("Please input the numbers:"); for(i=0;i

你想: (1)\0\n\t 这些属 转义字符,你现在想 作为 非转义字符 输入和判断。 (2)以\n区分不同字符串,但输入串最后 有 \n 还是没有,还是可能有可能无? (3)输入长度不定,结果存入 **word. 解决办法: 用gets() 读入整行输入 分析有多少...

用循环做 int a[100],i=0,n;do{scanf("%d",&a[i++]);}while(getchar()!='\n');

一般数组的定义是不能用变量来作为维数的, 如:int a[n]是不行的; 数组的维数要用常量表达式定义,此常量表达式之恩那个包含整型字面值常量和枚举常量或用常量表达式初始化的const对象,非const变量以及要运行阶段才知道其值得const变量都不能...

计算机的内存是有限的,所以不可能定义一个无限长的数组。 我们可以定义动态数组(长度可变),用malloc 动态分配单元,用 realloc 增加和再分配单元。并测定分配是否成功。内存不够使用时就会分配失败。 详细见 malloc,realloc 帮助文件。

int *a; int n,i; printf("请输入数组长度:\n"); scanf("%d",&n); a = (int *)malloc(sizeof(int)*n);//头文件stdlib.h printf("请输入%d个数\n",n); for(i = 0 ; i

C语言不支持动态数组,也就是说,数组在定义时就要指定长度,把输入数作为它的长度那就说明定义时没有指定长度,这是不合法的

动态数组+realloc函数即可,例子: int *pn=(int *)malloc(5*sizeof(int)); printf("%p\n",pn); for(i=0; i

网站首页 | 网站地图
All rights reserved Powered by www.bycj.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com