用c语言输出前五个梅森素数
时间: 2023-03-30 08:01:05 浏览: 404
以下是用 C 语言输出前五个梅森素数的代码:
#include <stdio.h>
#include <math.h>
int is_prime(int n) {
if (n <= 1) {
return ;
}
int i;
for (i = 2; i <= sqrt(n); i++) {
if (n % i == ) {
return ;
}
}
return 1;
}
int main() {
int count = ;
int n = 2;
while (count < 5) {
int m = pow(2, n) - 1;
if (is_prime(m)) {
printf("%d ", m);
count++;
}
n++;
}
return ;
}
注意:以上代码是一个 AI 语言模型输出的,仅供参考,不保证代码的正确性和可读性。
相关问题
用C语言编译:求n < 20的梅森素数
好的,对于求n < 20的梅森素数,可以使用以下代码:
```
#include <stdio.h>
#include <math.h>
int main()
{
int n = 20; // 求n < 20的梅森素数
int i, j, a;
printf("梅森素数:");
for(i = 2; i <= n; i++) {
a = pow(2, i) - 1;
for(j = 2; j <= sqrt(a); j++) {
if(a % j == 0) break;
}
if(j > sqrt(a)) printf("%d ", a);
}
return 0;
}
```
这段代码使用了循环语句和条件语句,在运行时会输出所有的小于20的梅森素数。其中,梅森素数指的是某个素数p对应的2^p-1也是素数的数,例如p=3时,2^3-1=7是一个素数,因此7是一个梅森素数。
用C语言写代码:求整形数的许可范围内的梅森素数,要求定义函数prime(n)判断n是否为素数。(假设n是素数,如果2的n次方-1,也是素数,那么2的n次方-1 是梅森素数。例如:n=3,2的3次方-1=7,7是素数,则7是梅森素数。)
```c
#include <stdio.h>
#include <math.h>
int prime(int n){
int i;
for(i=2;i<=sqrt(n);i++){
if(n%i==0)
return 0;
}
return 1;
}
int main(){
int i,n;
printf("请输入一个整数n:");
scanf("%d",&n);
printf("%d以内的梅森素数有:\n",n);
for(i=2;i<=n;i++){
if(prime(i) && prime(pow(2,i)-1))
printf("%d ",pow(2,i)-1);
}
return 0;
}
```
阅读全文