写一段代码C语言输入一个整数,判断其是否是素数,是输出yes,不是输出no。
时间: 2024-05-02 16:19:43 浏览: 105
很高兴回答您的问题!以下是C语言代码:
```
#include <stdio.h>
int main() {
int num;
int isPrime = 1;
printf("请输入一个整数:");
scanf("%d", &num);
if (num <= 1) {
isPrime = 0;
} else {
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
isPrime = 0;
break;
}
}
}
if (isPrime) {
printf("yes\n");
} else {
printf("no\n");
}
return 0;
}
```
希望能够帮到您!有其他问题请继续问我哦~
相关问题
输入一个整数,判断其是否是素数,是输出yes,不是输出no。C语言
实现代码:
#include <stdio.h>
int main() {
int n, i, flag = 0;
printf("请输入一个整数:");
scanf("%d", &n);
for (i=2; i<=n/2; i++) {
if (n%i == 0) {
flag = 1;
break;
}
}
if (flag == 0) {
printf("yes\n");
} else {
printf("no\n");
}
return 0;
}
这是一个简单的素数判断程序,核心思路是对小于等于该数一半的所有数字进行除法运算,如果能够整除则该数不是素数,否则就是素数。
用C语言输入一个正整数m,判断该数是不是素数,是输出yes,不是输出no
在C语言中,你可以通过以下步骤来判断一个正整数m是否为素数:
1. 首先,定义一个函数`isPrime(int m)`,它接受一个整数作为参数。
```c
#include <stdio.h>
#include <stdbool.h>
bool isPrime(int m) {
// 素数定义:大于1的自然数,除了1和自身以外不再有其他因数
if (m <= 1) {
return false; // 小于等于1的数不是素数
}
for (int i = 2; i * i <= m; i++) { // 只需要检查到i*i <= m即可,因为如果存在因子,则一定小于等于√m
if (m % i == 0) { // 如果m能被i整除,说明i是m的因子
return false;
}
}
return true; // 没有找到因子,所以m是素数
}
```
2. 接着,在主函数`main()`里获取用户输入并调用这个函数:
```c
int main() {
int m;
printf("请输入一个正整数:");
scanf("%d", &m);
if (isPrime(m)) {
printf("yes\n");
} else {
printf("no\n");
}
return 0;
}
```
当运行程序时,会提示用户输入一个正整数,然后判断其是否为素数,并显示相应的结果。
阅读全文