编程实现:C语言输入一个正整数n,输出2~n之间所有质数(素数),每输出5个素数换行。(提示:循环嵌套)
时间: 2024-11-16 22:27:46 浏览: 13
输出n以内的所有素数 c语言:找出N以内的所有素数
在C语言中,你可以通过以下步骤来实现这个功能:
首先,我们需要定义一个函数`is_prime()`来检查一个数是否是质数。然后,我们创建一个主程序`main()`,在这个程序中,我们会输入一个正整数`n`,并使用嵌套循环遍历从2到`n`的所有数字,判断它们是否是质数,如果是就打印出来,并按照每输出5个素数换行。
下面是完整的C代码实现:
```c
#include <stdio.h>
// 检查一个数是否为质数
int is_prime(int num) {
if (num <= 1) return 0; // 小于等于1的不是质数
for (int i = 2; i * i <= num; i++) { // 只需检查到其平方根即可
if (num % i == 0) return 0;
}
return 1;
}
int main() {
int n, count = 0;
printf("请输入一个正整数n: ");
scanf("%d", &n);
for (int i = 2; i <= n; i++) {
if (is_prime(i)) {
printf("%d", i); // 输出质数
count++;
// 每输出5个素数换行
if (count % 5 == 0) {
printf("\n");
}
}
}
return 0;
}
```
当你运行这个程序,它会提示你输入一个正整数`n`,然后输出2到`n`之间的所有质数,每五个质数后换一行。
阅读全文