想要求最值,难道只能通过这种最麻烦的方法来定义吗,有没有可以简化代码的方法?
这个我的代码存在问题,如果有两个相同的数同为最大值,则无输出结果,如果全加上等号,则会有两个输出结果,应该怎样纠正呢?
(编译环境是dev c++, 编译语言为c语言)
#include <stdio.h>
int main()
{
int array[5];
int iMax = 0;
for ( int i = 0 ; i < 5; ++i )
{
scanf("%d", &array[i]);
if ( i == 0 )
{
iMax = array[i];
}
else if( iMax < array[i])
{
iMax = array[i];
}
}
printf("最大值为:%d\n", iMax);
return 0;
}
先用数组把源数据存起来。再定义一个变量存放最值,在循环里面一次比较一个元素再更新最值,循环结束就得到了最值。