用c语言请编写程序,判断从键盘输入的一个整数是否是素数,是素数就 输出“This is a prime number”,不是素数就输出“This is not a prime number”
时间: 2024-02-13 20:00:18 浏览: 79
以下是使用c语言编写的程序,可以实现判断输入整数是否为素数的功能:
```c
#include <stdio.h>
int main() {
int num, i, flag = 0;
printf("请输入一个正整数:");
scanf("%d", &num);
for (i = 2; i <= num / 2; ++i) {
// 如果num能被i整除,说明num不是素数
if (num % i == 0) {
flag = 1;
break;
}
}
if (flag == 0)
printf("This is a prime number.\n");
else
printf("This is not a prime number.\n");
return 0;
}
```
程序的运行流程如下:
1. 提示用户输入一个正整数;
2. 读取用户输入的整数;
3. 使用for循环从2开始到num/2的范围内逐个检查整数是否能被i整除;
4. 如果num能被i整除,说明num不是素数,将flag设为1,跳出循环;
5. 根据flag的值输出相应的提示信息。
希望这个程序能够帮到你!
相关问题
C语言设计一个程序,判断一个整数n是否是素数。具体要求如下: 1. 编写一个函数int prime(number),判断整数number是否是素数。 2. 主函数中由键盘输入整数,调用1中的函数,返回值为真则是素数,否则不是素数。
以下是C语言程序代码:
```c
#include <stdio.h>
int prime(int number) {
int i;
if (number <= 1) {
return 0;
}
for (i = 2; i <= number / 2; ++i) {
if (number % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int n;
printf("请输入一个整数n:");
scanf("%d", &n);
if (prime(n)) {
printf("%d是素数。\n", n);
} else {
printf("%d不是素数。\n", n);
}
return 0;
}
```
程序中,prime函数判断数值是否为素数,主函数中从键盘输入一个整数,调用prime函数判断返回值。如果返回值为真,则输出该数值为素数,否则输出该数值不是素数。
素数是指在大于1的自然数中,除了1和它本身以外,不能被其他自然数整除的数。本题要求编写程序,判断从键盘输入的数是否素数。如果是素数,输出XX is prime number.的信息,否则,输出XX is not prime number.的信息。C语言
好的,以下是可以实现此功能的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;
}
```
在程序中,我们首先从键盘输入一个正整数,然后使用 for 循环从 2 开始遍历到该数的一半,如果该数能被任何一个小于它自身的数整除,则说明它不是素数,将 flag 标记为 1 并跳出循环。最后根据 flag 的值输出相应的信息。
需要注意的是,1 既不是素数也不是合数,因此需要单独判断并输出。
阅读全文