用C语言做,求最大值,从键盘输入不超过50个非负整数,当输入为负值时,表示输入结束。试编程求出其中的最大值。输入格式:在一行中给出不超过50个非负整数(空格分隔),以负数结束。输出格式:按输出样例的形式输出其中的最大值。输入样例:9 0 62 36 15 28 -1输出样例:max=62 输入样例:-1输出样例:NULL!
时间: 2024-03-24 12:37:46 浏览: 71
以下是用C语言实现的代码:
```c
#include <stdio.h>
int main()
{
int num, max = -1; // 初始化最大值为-1
scanf("%d", &num);
while (num >= 0) // 当输入为负数时结束循环
{
if (num > max)
max = num;
scanf("%d", &num);
}
if (max == -1)
printf("NULL!"); // 如果没有非负整数输入,输出NULL!
else
printf("max=%d", max);
return 0;
}
```
输入样例:
```
9 0 62 36 15 28 -1
```
输出样例:
```
max=62
```
输入样例:
```
-1
```
输出样例:
```
NULL!
```
相关问题
从键盘输入不超过50个非负整数,当输入为负值时,表示输入结束。试编程求出其中的最大值。 输入格式: 在一行中给出不超过50个非负整数(空格分隔),以负数结束。c语言
以下是使用C语言编写的程序,可以实现输入不超过50个非负整数,并求出其中的最大值:
```c
#include <stdio.h>
int main()
{
int num, max = 0;
scanf("%d", &num);
while (num >= 0)
{
if (num > max)
{
max = num;
}
scanf("%d", &num);
}
printf("The maximum number is %d\n", max);
return 0;
}
```
程序首先读取第一个整数,然后使用while循环来读取后续的非负整数。在循环中,如果读取到的数字比当前最大值大,则更新最大值。当读取到负数时,循环结束并输出最大值。
用C语言做,从键盘输入不超过50个非负整数,当输入为负值时,表示输入结束。试编程求出其中的最大值。输入格式:在一行中给出不超过50个非负整数(空格分隔),以负数结束。输出格式:按输出样例的形式输出其中的最大值输入样例:9862361528-1输出样例:max=62
以下是求解最大值的C语言代码:
```c
#include<stdio.h>
int main()
{
int a[50], i, max;
for(i=0;i<50;i++)
{
scanf("%d", &a[i]);
if(a[i]<0)
break;
}
max = a[0];
for(int j=1;j<i;j++)
{
if(a[j]>max)
max = a[j];
}
printf("max=%d", max);
return 0;
}
```
代码思路:
1. 定义一个数组a,用来存储输入的非负整数。
2. 通过for循环从键盘输入不超过50个非负整数,并判断是否输入结束。
3. 定义变量max,初始值为数组a的第一个元素。
4. 通过for循环遍历数组a,找出其中的最大值。
5. 输出最大值。
注意事项:
1. 由于输入的非负整数不超过50个,因此可以定义一个长度为50的数组。
2. 在输入时,当输入的数值为负数时,即可跳出循环,不必输入后面的数值。
3. 在求解最大值时,只需遍历输入的数值,不必遍历整个数组。