程序设计,输入20个整数,统计其中非负数的个数,并计算他们的和,然后将非负数从小到大进行排序并输出
时间: 2024-05-05 15:20:45 浏览: 95
C语言程序设计-计算并输出给定整数n的所有因子之和(不包括1与自身);注意:n的值不大于1000.c
5星 · 资源好评率100%
以下是一个 C++ 的示例代码实现:
```cpp
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
const int N = 20;
int arr[N];
// 输入20个整数
for (int i = 0; i < N; ++i) {
cin >> arr[i];
}
// 统计非负数个数和求和
int count = 0;
int sum = 0;
for (int i = 0; i < N; ++i) {
if (arr[i] >= 0) {
++count;
sum += arr[i];
}
}
// 输出非负数个数和和值
cout << "非负数个数:" << count << endl;
cout << "非负数和:" << sum << endl;
// 对非负数从小到大排序
sort(arr, arr + N, [](int a, int b) {
return a >= 0 && b >= 0 && a < b;
});
// 输出排序结果
cout << "非负数排序结果:";
for (int i = 0; i < N; ++i) {
if (arr[i] >= 0) {
cout << arr[i] << " ";
}
}
cout << endl;
return 0;
}
```
该程序通过循环读入20个整数,然后遍历一遍数组统计非负数个数和和值。接着使用 `std::sort` 函数对非负数进行从小到大排序,最后输出排序结果。
阅读全文