用c++语言设计一个函数,输入数字n后,输出n以内的素数的完整代码
时间: 2024-09-10 14:29:52 浏览: 52
在C++中,设计一个函数来输出小于或等于给定数字n的所有素数可以使用如下代码实现:
```cpp
#include <iostream>
#include <cmath>
// 函数判断一个数是否为素数
bool isPrime(int num) {
if (num <= 1) return false; // 小于等于1的数不是素数
if (num <= 3) return true; // 2和3是素数
if (num % 2 == 0 || num % 3 == 0) return false; // 排除能被2和3整除的数
for (int i = 5; i * i <= num; i += 6) {
if (num % i == 0 || num % (i + 2) == 0)
return false;
}
return true;
}
// 函数输出小于或等于n的所有素数
void printPrimes(int n) {
for (int i = 2; i <= n; ++i) {
if (isPrime(i)) {
std::cout << i << " ";
}
}
std::cout << std::endl;
}
int main() {
int n;
std::cout << "请输入数字n:";
std::cin >> n;
std::cout << "小于或等于 " << n << " 的素数有:" << std::endl;
printPrimes(n);
return 0;
}
```
该程序包含两个函数:`isPrime`用于判断一个数是否为素数,`printPrimes`用于输出小于或等于n的所有素数。`main`函数负责接收用户输入并调用`printPrimes`函数。
阅读全文