关于最高分和最低分,这个最高分和最低分为什么会是84和66,我的逻辑看起来应该没什么问题,希望大佬解答解答,在此先感谢了

来源:6-12 综合练习

你轻靠或躺下看书

2019-01-15 02:10

#include <stdio.h>

void max(int score[])

{

int i, max = score[0];

for (i = 0; i < 9; i++)

{

if (score[i] < score[i + 1])

{

max = score[i + 1];

}

}

printf("考试的最高分为:%d\n", max);

}

void min (int score[])

{

int i, min = score[0];

for (i = 0; i < 9; i++)

{

if (score[i] > score[i + 1])

{

min = score[i + 1];

}

}

printf("考试的最低分为:%d\n", min);

}

int main()

{

int score[10] = { 67,98,75,63,82,79,81,91,66,84 };

max(score);

min(score);

return 0;

}


写回答 关注

2回答

  • 米虫懒得聪明
    2019-01-15 15:47:41
    已采纳

    你if中的条件错了呀,应该用max或者min比较,你只用了前后项比较当然不对了

    你轻靠或躺下...

    好的,想清楚了,用了max和min比较才对,谢谢

    2019-01-15 15:53:53

    共 1 条回复 >

  • 慕码人0562294
    2019-01-15 09:25:14

    应该是i<10吧

    你轻靠或躺下...

    不对,因为i要和i+1比较,所以如果i=9时,i+1=10,但是score【10】会出现越界,所以只需要i<9就可以了

    2019-01-15 14:45:37

    共 1 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926025 学习 · 20793 问题

查看课程

相似问题