用c语言写一个不大于n的最大质数
时间: 2024-04-12 22:29:41 浏览: 108
当然,我可以帮你写一个用 C 语言编写的程序来找出不大于给定数字 n 的最大质数。以下是一个示例代码:
```c
#include <stdio.h>
// 判断一个数是否为质数
int isPrime(int num) {
if (num <= 1) {
return 0;
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
// 找出不大于 n 的最大质数
int findMaxPrime(int n) {
for (int i = n; i >= 2; i--) {
if (isPrime(i)) {
return i;
}
}
return -1; // 若不存在质数则返回 -1
}
int main() {
int n;
printf("请输入一个整数 n:");
scanf("%d", &n);
int maxPrime = findMaxPrime(n);
if (maxPrime == -1) {
printf("不存在不大于 %d 的质数\n", n);
} else {
printf("不大于 %d 的最大质数为:%d\n", n, maxPrime);
}
return 0;
}
```
运行这个程序后,你可以输入一个整数 n,然后它会输出不大于 n 的最大质数。如果不存在不大于 n 的质数,则会输出相应的提示信息。
希望这个代码能满足你的需求!如果有任何疑问,请随时提出。
阅读全文