c语言程序设计:输入一个正整数,求该整数
时间: 2025-05-06 18:43:21 浏览: 15
### C语言程序:输入正整数并求其属性
#### 计算正整数的阶乘
当处理正整数时,计算其阶乘是一个常见的操作。下面展示了一个简单的C语言程序来接收用户输入的一个正整数,并输出这个数的阶乘。
```c
#include <stdio.h>
// 定义一个函数用于计算阶乘
int factorial(int num) {
if (num == 0 || num == 1)
return 1;
else
return num * factorial(num - 1);
}
int main() {
int number;
printf("请输入一个正整数: ");
scanf("%d", &number);
// 检查是否为正整数
if (number > 0) {
printf("%d 的阶乘是 %d\n", number, factorial(number));
} else {
printf("这不是一个有效的正整数。\n");
}
return 0;
}
```
此代码片段展示了如何定义一个递归函数`factorial()`来进行阶乘运算[^1]。通过`scanf()`读取用户的输入作为参数传递给该函数,并最终打印出结果。
#### 判断素数
另一个关于正整数的重要问题是判断它是不是质数(也称为素数)。这里提供一段可以完成这项工作的简单C语言源码:
```c
#include <stdbool.h>
#include <stdio.h>
bool isPrime(int n) {
if (n <= 1)
return false;
for (int i = 2; i * i <= n; ++i) {
if (n % i == 0)
return false;
}
return true;
}
int main() {
int value;
printf("请输入一个正整数: ");
scanf("%d", &value);
if (isPrime(value))
printf("%d 是一个素数.\n", value);
else
printf("%d 不是一个素数.\n", value);
return 0;
}
```
上述例子中引入了布尔类型变量以及循环结构来检测指定范围内是否存在能被测试对象除尽的情况;如果存在,则不是素数[^2]。
阅读全文
相关推荐
















