c语言 输出该数字是否是素数代码
时间: 2023-06-12 15:02:07 浏览: 91
好的,以下是C语言输出数字是否为素数的代码:
```c
#include <stdio.h>
int main() {
int num, i, flag = 0;
printf("请输入一个正整数:");
scanf("%d", &num);
for (i = 2; i <= num/2; ++i) {
if (num%i == 0) {
flag = 1;
break;
}
}
if (flag == 0 && num > 1) {
printf("%d是素数", num);
}
else {
printf("%d不是素数", num);
}
return 0;
}
```
这段代码的逻辑是,首先输入一个正整数,然后从2开始循环到num/2,如果num能够被i整除,则说明num不是素数,将flag置为1,并跳出循环。最后判断flag的值,如果为0且num大于1,则说明num是素数。输出结果时,会显示数字是否是素数。
相关问题
c语言输出1到100的素数
C语言输出1到100的素数可以使用以下代码实现:
```
#include <stdio.h>
#include <math.h>
int main() {
int i, j, count = 0;
for (i = 2; i <= 100; i++) {
int is_prime = 1;
for (j = 2; j <= sqrt(i); j++) {
if (i % j == 0) {
is_prime = 0;
break;
}
}
if (is_prime) {
printf("%d ", i);
count++;
}
}
printf("\n共有%d个素数\n", count);
return 0;
}
```
该代码使用了两层循环,外层循环遍历1到100之间的所有数字,内层循环判断该数字是否为素数。如果该数字能被2到sqrt(i)之间的任意一个数整除,则该数字不是素数,否则该数字是素数。在判断完所有数字后,程序会输出所有的素数以及素数的个数。
c语言输出100-200的素数
在C语言中,为了输出100到200之间的素数,你可以编写一段程序,利用嵌套循环和条件判断来检查每个数是否为素数。素数是指只有两个正因数(1和它本身)的大于1的自然数。以下是简单的C代码实现:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_prime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; i++) { // 只需检验到根号n即可
if (num % i == 0)
return false;
}
return true;
}
void print_primes(int start, int end) {
for (int i = start; i <= end; i++) {
if (is_prime(i)) {
printf("%d ", i);
}
}
printf("\n");
}
int main() {
int start = 100, end = 200;
print_primes(start, end);
return 0;
}
```
这个程序首先定义了一个`is_prime`函数用于检查一个数字是否为素数,然后在`print_primes`函数中遍历指定范围内的数字,并调用`is_prime`函数。如果一个数字是素数,就将其打印出来。
阅读全文