求最大值,用for循环,数组

从键盘输入不超过50个非负整数,当输入为负值时,表示输入结束。试编程求出其中的最大值。

输入格式:
在一行中给出不超过50个非负整数(空格分隔),以负数结束。

输出格式:
按输出样例的形式输出其中的最大值

输入样例:
9 0 62 36 15 28 -1
输出样例:
max=62
输入样例:
-1
输出样例:
NULL!


#include <stdio.h>

int main()
{
    int num, max = -1; // 初始化最大值为-1
    while (scanf("%d", &num) == 1 && num >= 0 && num <= 100) { // 读取输入的整数
        if (num > max) { // 如果当前的数字大于最大值,则更新最大值
            max = num;
        }
    }
    if (max != -1) { // 如果最大值不为-1,说明输入中存在非负整数
        printf("max=%d\n", max);
    } else { // 否则输出 NULL!
        printf("NULL!\n");
    }
    return 0;
}

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^