问题如下: 编写一个函数,提示用户输入一系列正整数,以值 -1 结尾。然后,该函数必须返回用户输入的最大值和最小值。您可以假设用户在输入 -1 之前至少输入了一个正整数。
所以我的想法是创建一个数组来存储所有输入的值。唯一的问题是我不太确定如何声明一个条目数量未知的数组,因为显然我不知道用户将在 -1 之前输入多少个整数。
然后对于后一部分,我想使最大/最小=arr[0],然后index++,一次arr[index]>maximum或arr[index]
谢谢!
最佳答案
使用动态内存分配函数,例如 malloc calloc 和 realloc 或者,如果您有兴趣编写一些真正好的代码,请使用链表。
顺便说一句,是否有必要将所有数字存储在一个数组中???你可以即时检查最小值和最大值???
一个简单的算法是:
int maxval=0, minval = 0;
while(inputval != -1)
{
if(inputval < minval)
minval = inputval;
if(inputval > maxval)
maxval = inputval;
}
关于c - 如何在 C 中声明一个条目数量未知的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15151331/