c语言 输出该数字是否是素数代码
时间: 2023-06-12 08:02:07 浏览: 56
好的,以下是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语言输出300以内的全部素数
下面是一个输出300以内全部素数的C语言代码实现:
```c
#include <stdio.h>
int main() {
int i, j, is_prime;
for (i = 2; i <= 300; i++) {
is_prime = 1; // 假设 i 是素数
for (j = 2; j < i; j++) {
if (i % j == 0) {
is_prime = 0; // i 不是素数
break;
}
}
if (is_prime) {
printf("%d ", i);
}
}
return 0;
}
```
程序从2开始遍历到300,对于每个数字i,内部再次循环从2到i-1,判断i是否能被这些数整除,如果能整除则i不是素数,否则i是素数,将其输出即可。
用c语言写个判断是不是素数的代码
当然可以,下面是一个用C语言编写的判断素数的程序:
```c
#include <stdio.h>
int main() {
int n;
printf("请输入一个数字:");
scanf("%d", &n);
int i, flag = 1;
for (i = 2; i * i <= n; i++) {
if (n % i == 0) {
flag = 0;
break;
}
}
if (flag && n != 1) {
printf("%d是素数", n);
} else {
printf("%d不是素数", n);
}
return 0;
}
```
这个程序会让用户输入一个数字,然后判断它是不是素数。程序会用一个循环从2开始遍历到这个数字的平方根,如果发现这个数字可以整除循环变量i,则说明它不是素数,将flag标记为0,跳出循环。最后根据flag的值和是否等于1来输出相应的结果。