c语言输出900到1000的素数
时间: 2023-12-14 13:02:26 浏览: 74
下面是一个c语言程序,可以输出900到1000之间的所有素数:
```c
#include <stdio.h>
#include <math.h>
int is_prime(int n) {
if (n <= 1) {
return 0;
}
int i;
for (i = 2; i <= sqrt(n); i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int i;
for (i = 900; i <= 1000; i++) {
if (is_prime(i)) {
printf("%d ", i);
}
}
printf("\n");
return 0;
}
```
程序中定义了一个 `is_prime` 函数,用于判断一个数是否为素数。在主函数中,程序循环遍历900到1000之间的所有数,调用 `is_prime` 函数判断是否为素数,是则输出该数。
相关问题
用c语言输出1到1000的素数
以下是用C语言输出1到1000的素数的代码:
```c
#include <stdio.h>
int isPrime(int num) {
if(num <= 1) return 0;
for(int i = 2; i*i <= num; i++) {
if(num % i == 0) return 0;
}
return 1;
}
int main() {
for(int i = 1; i <= 1000; i++) {
if(isPrime(i)) {
printf("%d ", i);
}
}
return 0;
}
```
程序中的 `isPrime()` 函数用于判断一个数是否为素数,如果是素数则返回1,否则返回0。在 `main()` 函数中,通过循环遍历1到1000的所有数,对于每个数调用 `isPrime()` 函数进行判断,如果是素数则输出。
c语言输出100到200素数
在C语言中,有多种方法可以输出100到200之间的素数。以下是其中几种方法:
1. 第一种方法使用两个for循环,外层循环从100到200,内层循环从2到当前数的前一个数,判断当前数是否能被内层循环中的数整除,如果可以则跳出内层循环,否则输出当前数。这种方法的时间复杂度为O(n^2)。
2. 第二种方法定义一个函数panduan,用于判断一个数是否为素数。在主函数中使用for循环从100到200,每次调用panduan函数判断当前数是否为素数,如果是则输出。这种方法的时间复杂度为O(n*sqrt(n))。
3. 第三种方法使用一个for循环和一个while循环,外层循环从100到200,内层循环从2到当前数的平方根,判断当前数是否能被内层循环中的数整除,如果可以则跳出内层循环,否则输出当前数。这种方法的时间复杂度为O(n*sqrt(n))。
4. 第四种方法和第一种方法类似,使用两个for循环,外层循环从100到200,内层循环从2到当前数,判断当前数是否能被内层循环中的数整除,如果可以则跳出内层循环,否则输出当前数。这种方法的时间复杂度为O(n^2)。
其中第二种和第三种方法的时间复杂度较低,建议使用这两种方法。
阅读全文