键盘输入一个值,利用while循环判断它是否为素数,是则输出1否则输出0
时间: 2023-03-31 17:04:55 浏览: 63
可以回答这个问题。以下是代码:
#include <stdio.h>
int main() {
int num, i = 2, flag = 1;
scanf("%d", &num);
while (i < num) {
if (num % i == ) {
flag = ;
break;
}
i++;
}
printf("%d", flag);
return ;
}
如果输入的值是素数,输出1,否则输出。
相关问题
键盘输入一个值,利用while循环判断它是否为素数,是则输出1否则输出0要求使用iostearm头文件
您好,我可以回答您的问题。以下是代码实现:
#include <iostream>
using namespace std;
int main() {
int num;
cin >> num; // 键盘输入一个值
int i = 2;
bool isPrime = true;
while (i < num) {
if (num % i == ) {
isPrime = false;
break;
}
i++;
}
if (isPrime) {
cout << 1 << endl; // 是素数,输出1
} else {
cout << << endl; // 不是素数,输出
}
return ;
}
希望能够帮到您。
用C语言编写从键盘输入一个大于3的整数,并判断该数是否为素数。若是,则输出YES;否则输出NO。并运用while语句
好的,以下是代码实现:
```c
#include <stdio.h>
int main() {
int num, i = 2, flag = 1;
printf("请输入一个大于3的整数:");
scanf("%d", &num);
while (i <= num / 2) {
if (num % i == 0) {
flag = 0;
break;
}
i++;
}
if (flag == 1) {
printf("YES\n");
} else {
printf("NO\n");
}
return 0;
}
```
解释一下代码的思路:
1. 首先从键盘输入一个大于3的整数,存储在变量`num`中。
2. 然后使用`while`循环从2开始,依次判断`num`是否能被`i`整除(这里只需要判断到`num/2`即可,因为大于`num/2`的数肯定不是`num`的因子)。
3. 如果`num`能被`i`整除,说明`num`不是素数,将`flag`标记为0,并跳出循环。
4. 最后根据`flag`的值输出结果,如果为1则是素数,输出"YES",否则输出"NO"。