c语言统计2到100以内的素数
时间: 2023-09-06 16:13:30 浏览: 52
以下是使用C语言编写的统计2到100以内的素数的程序:
```c
#include <stdio.h>
int main() {
int i, j, is_prime;
printf("2\n"); // 2是素数,直接输出
for (i = 3; i <= 100; i += 2) { // 只需判断奇数
is_prime = 1; // 假设i是素数
for (j = 3; j * j <= i; j += 2) { // 只需判断到sqrt(i)
if (i % j == 0) { // 如果i能被j整除
is_prime = 0; // i不是素数
break; // 退出循环
}
}
if (is_prime) { // 如果i是素数
printf("%d\n", i); // 输出i
}
}
return 0;
}
```
程序首先输出2,然后从3开始依次判断每个奇数是否为素数,如果是就输出。判断素数的方法是从3开始,每次增加2,依次除以奇数,如果能整除则不是素数,退出循环。由于素数只能被1和自身整除,所以只需判断到sqrt(i)即可。
相关问题
c语言统计100以内素数
以下是C语言代码,用于统计100以内的素数:
```c
#include <stdio.h>
int main()
{
int i, j, isPrime;
printf("Prime numbers between 1 and 100 are:\n");
for (i = 2; i <= 100; i++) {
isPrime = 1;
for (j = 2; j < i; j++) {
if (i % j == 0) {
isPrime = 0;
break;
}
}
if (isPrime == 1) {
printf("%d ", i);
}
}
return 0;
}
```
该程序使用两个循环来检查每个数字是否为素数。外部循环从2到100遍历每个数字,而内部循环从2到该数字的前一个数字遍历,以检查该数字是否可以被除1和它本身以外的数字整除。如果该数字不能被整除,则被标记为素数,并输出到控制台上。
c语言代码统计2到100以内的素数,并存于数组a中
好的,这个问题很容易,以下是c语言代码:
```c
#include <stdio.h>
int main() {
int a[100], i, j, flag;
int count = 0;
for (i = 2; i <= 100; i++) {
flag = 1;
for (j = 2; j <= i/2; j++) {
if (i % j == 0) {
flag = 0;
break;
}
}
if (flag == 1) {
a[count] = i;
count++;
}
}
for (i = 0; i < count; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
这个程序会计算2到100之间的所有素数,并把它们存储在数组a中,最后打印出这些素数。希望这个程序对你有所帮助!