使用C++语言实现:从键盘上连续输入15个数,求其最大值,最小值和平均值,并统计其中的素数个数
时间: 2024-02-05 11:13:01 浏览: 155
C语言实现键盘输入的数是否是素数
以下是使用C++语言实现从键盘上连续输入15个数,求其最大值,最小值和平均值,并统计其中的素数个数的代码:
```cpp
#include <iostream>
using namespace std;
bool isPrime(int n) {
if (n <= 1) return false;
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) return false;
}
return true;
}
int main() {
int n, maxNum = INT_MIN, minNum = INT_MAX, sum = 0, primeCount = 0;
double average;
for (int i = 0; i < 15; i++) {
cout << "请输入第" << i+1 << "个数:";
cin >> n;
maxNum = max(maxNum, n);
minNum = min(minNum, n);
sum += n;
if (isPrime(n)) primeCount++;
}
average = sum / 15.0;
cout << "最大值:" << maxNum << endl;
cout << "最小值:" << minNum << endl;
cout << "平均值:" << average << endl;
cout << "素数个数:" << primeCount << endl;
return 0;
}
```
解释:
首先,我们定义了一个 `isPrime` 函数来判断一个数是否为素数。这个函数的实现方式是枚举从2到根号n的所有数,看能否整除n,如果存在整除的情况,则n不是素数。
接下来,在 `main` 函数中,我们定义了一些变量,包括 `n` (用来读取输入的数)、`maxNum` (用来记录最大值)、`minNum` (用来记录最小值)、`sum` (用来记录所有数的和)、`primeCount` (用来记录素数的个数)以及 `average` (用来记录平均值)。
然后,我们使用一个循环来连续输入15个数,并在每次输入结束后更新最大值、最小值、和、以及素数个数。最后,我们计算平均值并输出结果。
需要注意的是,我们在计算平均值时,要将 `sum` 转换为浮点数,否则得到的结果会是整数除法的结果,不准确。
阅读全文