我用c语言的数组求出一组数中的最大值,最小值,还有和。但是结果失败。

新手上路,请多包涵

这是题目

clipboard.png

这是我写的代码。

我的思路是。
n是表示一共有多少个数。然后用循环和数组把这些数都输入进去。
a[0]不考虑,所以不符合if就先跳出来。
从a[1]开始考虑,谁大就让谁等于max,要小的话就是min。最后还有求和sum。

我感觉没有问题啊。但就是用dev编译器运行就是一直失败。来问问。

clipboard.png

阅读 7.4k
1 个回答

你的if语句是错的,a[i]和a[i-1]对比之后就能把他俩中的最大值赋予max吗?不能。
a[i]和a[i-1]对比之后就能将他俩的最小值吗赋予min?也不能。
应该是将max和min初始化,然后每次循环管都将a[i]和max和min比,再将每次循环的较大值更新给max/min。
这样:

    min = max = a[0];
{
    ...

    if (a[i] > max) max = a[i];
    if (a[i] < min) min = a[i];
    ...
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进