c 语言求素数
时间: 2023-07-02 22:10:21 浏览: 132
C 语言求素数
以下是一个简单的 C 语言程序,用于找出给定范围内的所有素数。
```c
#include <stdio.h>
int main()
{
int n, i, flag;
printf("Enter a positive integer: ");
scanf("%d", &n);
printf("Prime numbers between 1 and %d are: ", n);
// 找出 2 到 n 之间的所有素数
for(i=2; i<=n; i++)
{
flag = 1; // 假设当前数字是素数
for(int j=2; j<=i/2; j++)
{
if(i%j == 0) // 如果 i 能被 j 整除,那么 i 不是素数
{
flag = 0;
break;
}
}
if(flag == 1) // 如果 i 是素数,输出它
{
printf("%d ", i);
}
}
return 0;
}
```
在这个程序中,我们首先要求用户输入一个正整数 n,然后用两个嵌套的循环来找出 2 到 n 之间的所有素数。外层循环从 2 开始,一直到 n,内层循环从 2 开始,一直到当前数字的一半。如果当前数字能被任何一个小于它一半的整数整除,那么它就不是素数,我们就将 flag 标记为 0。如果内层循环结束后 flag 仍然是 1,那么说明当前数字是素数,我们就输出它。
阅读全文