我找到了特定大小数组的解决方案。 但是,如何在不要求输入数组大小的情况下获得最大和最小数字?谢谢
例如当我输入 1、0、-1、5、43、65 等数字时,它只会返回 65 和 -1。我想忽略输入数组大小的步骤,在这种情况下为 6。
#include<stdio.h>
int main(){
int a[50],size,i,big,small;
printf("\nEnter the size of the array: ");
scanf("%d",&size);
printf("\nEnter %d elements in to the array: ", size);
for(i=0;i<size;i++)
scanf("%d",&a[i]);
big=a[0];
for(i=1;i<size;i++){
if(big<a[i])
big=a[i];
}
printf("Largest element: %d",big);
small=a[0];
for(i=1;i<size;i++){
if(small>a[i])
small=a[i];
}
printf("Smallest element: %d",small);
return 0;
}
最佳答案
我再进一步。首先,您不需要为此设置数组,从而使避免大小输入变得微不足道(不需要它,因为没有数组):
#include <stdio.h>
int main()
{
int val;
printf("Enter number: ");
fflush(stdout);
if (scanf("%d", &val) == 1)
{
int big = val, small = val;
do
{
if (big < val)
big = val;
if (val < small)
small = val;
printf("Enter number: ");
fflush(stdout);
} while (scanf("%d", &val) == 1);
printf("Largest element: %d\n",big);
printf("Smallest element: %d\n",small);
}
return 0;
}
关于c - c语言中求最大数和最小数的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26187534/