发布于2025-01-16 阅读(0)
扫一扫,手机访问
#include
#include
int myprime(long a) /*判断是否是素数的函数*/
{ long end;
int i;
end=(long)sqrt((double)a);
for(i=2;i<=end;i++)
if(a%i==0) return 0;
return 1;
}
void main()
{long a,c;
scanf("%ld",&a);
if(myprime(a)==1)
printf("Yes\n"); /*是素数输出yes,否则输出no*/
else
printf("No\n");
}
你用的是vc++6.0吧
我改了下应誋没有 错了
#include "stdio.h"
void fun(int n)
{
for(int i=2;i<=n;i++)
if(n%i==0)
break;
if(i==n)
printf("%d是一个素数\n",n);
else
printf("%d不是一个素数\n",n);
}
void main()
{
int n;
long s=0;
printf("输入一个数:\n");
scanf("%d",&n);
fun(n);
for(n=2;n<=1000;n++)
{
for(int i=2;i<=1000;i++)
if(n%i==0)
break;
if(i==n)
s+=n;
}
printf("2~1000之间的素数和是%d\n",s);
}
提供一个C的作参考:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "stdio.h"
intprime(intn){
inti;
if(n>2 & !(n&1) || n<2)return0;
for(i=3; i*i<=n;i+=2)
if(!(n%i)) return0;
return1;
}
intmain(void){
intn;
while(1){
printf("Input n(int n>0)...\nn=");
if(scanf("%d",&n) & n>0){
printf("%d is ",n);
printf(prime(n) ? "": "not ");
printf("prime number\n");
break;
}
printf("Error, must be n>0: ");
}
return0;
}
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店