判断1到100的素数c语言
时间: 2024-06-18 17:05:04 浏览: 20
判断1到100的素数可以使用以下c语言代码:
```
#include <stdio.h>
int main() {
int i, j;
for(i=2; i<=100; i++) {
for(j=2; j<=i; j++) {
if(i==j) {
printf("%d ", i);
}
if(i%j==0) {
break;
}
}
}
return 0;
}
```
上述代码中,外层循环用于遍历1到100之间的每一个数字,内层循环用于判断该数字是否为素数。如果内层循环遍历完成后,该数字仍然没有被整除,则说明该数字为素数,输出该数字即可。
相关问题
判断1到100素数的办法c语言
判断1到100之间的素数,可以通过以下方式使用C语言编写程序:
```c
#include<stdio.h>
int isPrime(int num);
int main() {
int i;
printf("1到100之间的素数有:\n");
for(i=1; i<=100; i++) {
if(isPrime(i)) {
printf("%d ", i);
}
}
return 0;
}
int isPrime(int num) {
int i;
// 排除1和0
if(num <= 1) {
return 0;
}
for(i=2; i<=num/2; i++) {
// 如果num能被除了1和自身以外的数整除,则不是素数
if(num % i == 0) {
return 0;
}
}
return 1;
}
```
以上是一个简单的C语言程序,使用isPrime函数判断一个数是否为素数。在主函数中,通过循环遍历1到100之间的每一个数,判断它是否为素数,如果是素数就打印出来。isPrime函数中的循环用来判断给定的num是否能被除了1和它自身以外的数整除,如果能整除则返回0,不是素数;如果不能整除,则返回1,是素数。程序的输出结果为1到100之间的所有素数。
输出1到100之间的素数c语言
以下是两种输出1到100之间的素数的C语言代码:
1. 第一种方法是用100到200之间的每个数字,除以2到其本身前面的那一个数字,如果此过程中出现整除的现象,则该数不是素数。如果没有整除的现象,则该数为素数输出。
```c
#include <stdio.h>
int main() {
int i = 0;
int count = 0;
for (i = 2; i <= 100; i++) {
int j = 0;
for (j = 2; j < i; j++) {
if (i % j == 0) {
break;
}
}
if (i == j) {
count++;
printf("%d ", i);
}
}
printf("\ncount=%d\n", count);
return 0;
}
```
2. 第二种方法是对第一种方法的优化,原理如下:1到100之间的所有偶数都不是素数,所以可以剔除,直接对奇数进行判断,这样又可以让程序的运行时间减少一半。
```c
#include <stdio.h>
#include <math.h>
int main() {
int i = 0;
int count = 0;
for (i = 3; i <= 100; i += 2) {
int j = 0;
for (j = 2; j <= sqrt(i); j++) {
if (i % j == 0) {
break;
}
}
if (j > sqrt(i)) {
count++;
printf("%d ", i);
}
}
printf("\ncount=%d\n", count);
return 0;
}
```