c语言文件读写操作代码输入一个大于等于3的正整数,判断其是否是素数。
时间: 2024-12-02 12:21:36 浏览: 13
在 C 语言中,我们可以编写一个简单的程序来读取用户输入的正整数并判断它是否为素数。首先,我们创建一个文件用于接收用户的输入,然后对输入的数字进行处理。以下是一个示例代码:
```c
#include <stdio.h>
#include <stdbool.h> // 引入 bool 类型
// 判断一个数是否为素数
bool is_prime(int num) {
if (num <= 1) {
return false; // 小于等于 1 的数不是素数
}
for (int i = 2; i * i <= num; i++) { // 遍历到 sqrt(num),因为大于该值的因子必然有一个小于 sqrt(num)
if (num % i == 0) {
return false;
}
}
return true;
}
int main() {
FILE *file = fopen("input.txt", "r"); // 打开文件以读模式
if (!file) {
perror("Error opening file");
return 1;
}
int input;
fscanf(file, "%d", &input); // 从文件中读取整数
fclose(file); // 关闭文件
printf("%d 是素数吗? %s\n", input, is_prime(input) ? "是" : "否");
return 0;
}
```
在这个例子中,用户需要先将大于等于 3 的正整数写入名为 `input.txt` 的文件中。主函数会读取这个数字并调用 `is_prime` 函数判断是否为素数。
阅读全文