Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 动态内存分配与动态数组_C - Fatal编程技术网

C 动态内存分配与动态数组

C 动态内存分配与动态数组,c,C,我需要写一个程序,要求用户输入他们想要输入的整数。。所以输出看起来像 输入整数(必须大于1) 他们会输入一个介于2-无穷大之间的数字(如果他们真的想走那么远的话) 在这一点上,我将扫描该数字并将其设置为一个变量 现在有了这个数字,我想运行一个for循环,让他们开始输入整数 for (count = 0; count < numofInts; count++) { printf(" Enter an integer: "); scanf("%d", &Number

我需要写一个程序,要求用户输入他们想要输入的整数。。所以输出看起来像

输入整数(必须大于1)

他们会输入一个介于2-无穷大之间的数字(如果他们真的想走那么远的话)

在这一点上,我将扫描该数字并将其设置为一个变量

现在有了这个数字,我想运行一个for循环,让他们开始输入整数

for (count = 0; count < numofInts; count++)
{
    printf("    Enter an integer: ");
   scanf("%d", &Number);
}
for(count=0;count
我遇到的问题是,我需要确保它记录他们输入的每个数字,因此我需要将这些值存储到数组中,但数组的元素数必须是动态的,以便它可以根据numofInts进行更改,我应该使用Malloc()创建动态内存分配空间,我知道它创建了一个变量,它的内存空间与我设置malloc的内存空间相同,但我不知道如何将一系列a变量存储到该空间,然后在需要时调用它们

该程序的最终结果应该是取一个像123456789这样的数字,循环存储整数作为“最大”整数的数字,然后吐出哪个整数最大,比如x=1234567890,x%10,x=0,最大=x,x/10,x%10,x=9,如果x>最大,最大=x,循环,直到它循环整个数字,然后把这个数字存储在最后。我已经记下了那个部分,但是因为我必须取一系列的数字,并对所有这些数字运行这个循环,我需要能够存储和调用这些值,并将它们放在循环中,以便能够存储这些数字的最大数字

对这个问题的任何帮助都将是非常感谢的,我只是无法找到如何使用MALOC或创建一个动态数组,并且大多数在线教程或从YouTube观看的教程都是C++的,我需要用C…./P>来做这件事。


到目前为止我所拥有的内容

在您阅读了
numInts
之后,您可以这样分配数组:

int* arr = malloc(numInts*sizeof(int));
现在,使用现有函数填充数组,并将读取的值分配给数组

我不会给您一个完整的解决方案,因为这是一个家庭作业,对您没有帮助,但是您可以使用
[]
操作符访问数组的
I
第四个元素:

arr[i];

了解有关指针和

的更多信息。你能把你的文章大幅缩短为一个简单的可识别的问题吗?你一整年都在做什么,兄弟!?!!?!??你吓到我了,伙计!如果您想处理像“无穷大”这样大的数字,您将面临一个艰难的过程。如果不需要
for
循环,我建议使用
while
do while
和链接列表。这将引导你以一种完全不同的方式解决问题。这正是我所需要的。非常感谢你,我知道这似乎不多,但我问我的导师如何将其组合成一个数组,他拒绝了这个问题,只是有时候一个人需要明显的陈述。。。