c语言编程,输入两个整数a,b,求两数之间所有素数之和,急求啊,在线等!

2024-11-08 19:31:20
推荐回答(4个)
回答(1):

#include
void fun(int a, int b){
int sum = 0;
for(int i=a; i<=b; i++){
bool flag = true;
for(int j=2; j<=i/2+1; j++){
if(i%j == 0)
flag = false;
}
if(flag == true)
sum += i;
}
printf("%d和%d之间的全部素数和为:%d", a, b, sum);
}
int main(){
fun(3, 10);
return 0;
}

回答(2):

给,新鲜出炉的,已经运行确认了:
#include
#include

int IS_PRIME(int n)
{
int i;
if(n < 2) return 0;
if(n ==2) return 1;
for(i = 2; i< sqrt(n); i++)
{
if(0 == n%i) return 0;
}
return 1;
}

void main()
{
int a,b,i=0,count=0;

printf("请输入整数a: ");
scanf("%d",&a);
printf("请输入整数b: ");
scanf("%d",&b);

for(i=1;i {
if(IS_PRIME(i)==1) count+=i;
}

for(i=1;i {
if(IS_PRIME(i)==1) count+=b;
}

printf("%d和%d之间的全部素数和为:%d", a, b, count);
}

回答(3):

#include
#include

int IS_PRIME(int n)
{
int i;
if(n < 2) return 0;
if(n ==2) return 1;
for(i = 2; i< sqrt(n); i++)
{
if(0 == n%i) return 0;
}
return 1;
}

void main()
{
int a,b,i=0,count=0;

printf("请输入整数a: ");
scanf("%d",&a);
printf("请输入整数b: ");
scanf("%d",&b);

for(i=1;i {
if(IS_PRIME(i)==1) count+=i;
}

for(i=1;i {
if(IS_PRIME(i)==1) count+=b;
}

printf("%d和%d之间的全部素数和为:%d", a, b, count);

回答(4):

#include
#include
int main()
{
int a,b,n,k,i,sum=0;
printf("please input two number:");
scanf("%d,%d",&a,&b);
for(n=a;n<=b;n=n+2)
{ k=sqrt(n);
for( i=2;i<=k;i++)
if(n%i==0) break;
if(i>=k+1){
sum=sum+n;
}
}
printf("sum=%d",sum);
}