读入20个整数,统计非负数的个数及其和,并找出最大的数
时间: 2023-05-31 15:18:28 浏览: 549
输入20个整数,找到最大值和他的位置.cpp
### 回答1:
好的,以下是中文回复:
首先,我们需要读入20个整数。可以使用input()函数来逐个读入,也可以使用循环来读入一组整数。读入后,我们可以使用一个变量来记录非负数的个数,并使用另一个变量来记录它们的和。代码如下:
count = # 记录非负数的个数
sum = # 记录非负数的和
max_num = -999999 # 记录最大的数,初始值设为一个极小值
for i in range(20):
num = int(input("请输入第{}个整数:".format(i+1)))
if num >= :
count += 1
sum += num
if num > max_num:
max_num = num
print("非负数的个数为:", count)
print("非负数的和为:", sum)
print("最大的数为:", max_num)
以上代码中,我们使用了一个for循环来读入20个整数。每读入一个数,我们就判断它是否为非负数。如果是,就将count加1,将sum加上这个数,并判断它是否比max_num大,如果是,就将max_num更新为这个数。最后,输出非负数的个数、和以及最大的数。
希望能对您有所帮助!
### 回答2:
这道题需要我们用程序读入20个整数,然后对这些整数进行统计,找出其中非负数的个数及其和,并找出最大的数。
首先,我们可以在程序中定义一个计数器变量count,用于记录非负数的个数,以及一个变量sum,用于记录所有非负数的和。然后,我们可以使用一个循环语句来遍历这20个数,并判断是否为非负数。如果是非负数,就把count加1,把该数加到sum中。
代码示例:
```
#include <iostream>
using namespace std;
int main()
{
int num[20], count = 0, sum = 0, max = -1000000;
// 读入20个整数
for(int i=0; i<20; i++)
{
cin >> num[i];
// 统计非负数的个数及其和
if(num[i] >= 0)
{
count++;
sum += num[i];
}
// 找出最大的数
if(num[i] > max)
{
max = num[i];
}
}
cout << "非负数的个数为:" << count << endl;
cout << "非负数的和为:" << sum << endl;
cout << "最大的数为:" << max << endl;
return 0;
}
```
以上代码可以读入20个整数,并对它们进行判断和统计,然后输出非负数的个数及其和,以及最大的数。这样,我们就成功地解决了这道问题。
### 回答3:
题目要求我们进行一些简单的数学统计任务,包括统计非负数个数及其和,以及寻找最大的数。因此,我们可以编写一个简单的程序来完成这些任务。具体步骤如下:
1. 读取20个整数。我们可以使用while循环来逐一读入:
```
int nums[20]; // 存储20个整数的数组
int i = 0;
while (i < 20) {
scanf("%d", &nums[i]);
i++;
}
```
2. 统计非负数个数及其和。我们可以使用一个变量来记录非负数个数,并在读取每个整数时更新。如果该整数为非负数,则累加到和里面去。
```
int count = 0; // 非负数个数
int sum = 0; // 非负数和
int i = 0;
while (i < 20) {
if (nums[i] >= 0) {
count++;
sum += nums[i];
}
i++;
}
```
3. 寻找最大的数。我们可以使用一个变量来记录目前为止找到的最大值,然后在读取每个整数时更新。如果该整数比当前的最大值还要大,则将该整数赋值给最大值。
```
int max = nums[0]; // 最大值,初始值为第一个数
int i = 1;
while (i < 20) {
if (nums[i] > max) {
max = nums[i];
}
i++;
}
```
4. 输出结果。最后,我们将统计结果和最大值输出到屏幕上:
```
printf("非负数个数:%d,和:%d,最大值:%d\n", count, sum, max);
```
这样,我们就完成了这个简单的数学统计任务。完整的程序如下所示:
阅读全文