我想先从外面输入一个数,然后来确定这个数组的大小,怎么弄啊

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我想先从外面输入一个数,然后来确定这个数组的大小,怎么弄啊相关的知识,希望对你有一定的参考价值。

在C语言里面对于数组的定义是不能通过变量来确定数组的大小的。如果一定要通过从外面输入一个数来确定大小,只能通过动态分配的形式。下面是源代码:

#include <stdio.h>
#include <malloc.h>

int main( void )

int n;
scanf( "%d", &n );
int *p = ( int * )malloc( n * sizeof( int ) );

return( 0 );
追问

不对啊

追答

哪里不对??

追问

我用vc6.0编译

出错了

int *p = ( int * )malloc( n * sizeof( int ) )

这个能分行写明白些吗,我菜鸟,谢谢啊,亲

追答

不会啊,我编译通过了,你前面两行include写上去了吗?

追问

谢写了

int *p = ( int * )malloc( n * sizeof( int ) )能解释下是什么意思吗,谢谢老师

我知道指针

malloc和sizeof什么意思啊

追答

申请n个int型数据空间,并返回该空间的起始地址。实际就是申请具有n个int 型元素的一维数组的空间。在C语言的存储空间的动态分配一节应该有讲。

追问

好,我看看,谢谢你了

参考技术A void main()

int n;
scanf("%d",&n);
int a[n]; //这样定义就不会报错了,你可以随意输入n
追问

不对吧 ,数组不能动态定义啊

追答

试了么?在输入了n之后才定义的数组,n就是确认了的。

追问

不是,数组不能包含变量啊

追答

你试过了么?我在linux环境下试了,没问题。

追问

我的是VC6.0

追答

你先试试吧 VC我不太清楚,你只有自己试试,我没VC

如何判断一个数组里是不是包含一个数

判断一个数组里是否包含一个数的具体步骤如下:

我们需要准备的材料分别是:电脑、Excel表格。

1、首先我们打开需要编辑的Excel表格,点击数组的第一个单元格。

2、然后我们在弹出来的窗口中点击打开“排序和筛选”,选项“筛选”。

3、然后我们在弹出来的窗口中点击打开B1单元格的倒三角形,点击搜索输入要查找的数值,比如说“123”,之后回车确定即可判断一个数组里是否包含这个数。

参考技术A 第一种方法:遍历数组
String[] arr1 = "1","2","3","4","6","7";
for (int i = 0; i < arr1.length; i++) if("5".equals(arr1[i])) System.out.PRintln("包含"); else System.out.println("不包含");

第二种方法:先把数组转换成list;再判断contains
String[] arr = "1","2","3","4","6","7"; List<String> list=Arrays.asList(arr); System.out.println(list.contains("5"));本回答被提问者采纳

以上是关于我想先从外面输入一个数,然后来确定这个数组的大小,怎么弄啊的主要内容,如果未能解决你的问题,请参考以下文章

关于如何输入一个数来任意确定数组大小

题目:使用键盘输入的一个不大于10的整数,用以确定数组的大小,再将这个数组用选择排序法由小到大排序

Spark Sql 查询嵌套记录。我想先过滤嵌套的记录数组,然后爆炸(将它们展开成行)

dev c++,二维数组的第一维赋值出错?

c++中用new给未知大小的数组分配空间怎么弄?

java Runtime这个类的exec方法,我想先切换下目录,然后再执行命令,怎么来写啊,在一个进程中完成