写一个C++程序,要求用户输入一个正整数,然后判断这个数是否为质数。
时间: 2023-04-11 19:01:55 浏览: 106
好的,我可以回答这个问题。以下是一个判断正整数是否为质数的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 (num == 1) {
printf("1既不是质数也不是合数。\n");
}
else {
if (flag == 0)
printf("%d是质数。\n", num);
else
printf("%d不是质数。\n", num);
}
return 0;
}
```
用户输入一个正整数,程序会遍历从2到该数的一半的所有数字,如果该数能被其中任意一个数字整除,则该数不是质数,否则该数是质数。
相关问题
用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 (num == 1) {
printf("1既不是质数也不是合数。\n");
} else {
if (flag == 0)
printf("%d是质数。\n", num);
else
printf("%d不是质数。\n", num);
}
return 0;
}
```
如果用户输入的数是质数,程序会输出“x是质数。”,如果不是质数,程序会输出“x不是质数。”。如果用户输入的是1,程序会输出“1既不是质数也不是合数。”。
使用c++质数判断。从键盘输入一个正整数n,判断n是否为质数
质数是指只能被1和自身整除的正整数,因此可以通过遍历2到n-1之间的所有数,判断是否能够被n整除来判断n是否为质数。以下是使用c语言实现的代码:
```c
#include <stdio.h>
int main() {
int n, i, flag = 0;
printf("请输入一个正整数:");
scanf("%d", &n);
for (i = 2; i < n; i++) {
if (n % i == 0) {
flag = 1; // 标记不是质数
break;
}
}
if (flag == 0) {
printf("%d是质数\n", n);
} else {
printf("%d不是质数\n", n);
}
return 0;
}
```
首先从键盘输入一个正整数n,然后遍历2到n-1之间的所有数,如果n能够被其中的某个数整除,则说明n不是质数,标记为flag=1并跳出循环;否则n是质数,flag保持为0。最后根据flag的值输出判断结果。