为了账号安全,请及时绑定邮箱和手机立即绑定

本题要求计算并输出不超过n的最大的k个素数以及它们的和。大神看看我问在哪里

本题要求计算并输出不超过n的最大的k个素数以及它们的和。大神看看我问在哪里

C
哲14 2017-05-24 16:00:00
#include<stdio.h> int sushu(int n) //如果n是素数 返回1,反之 返回0 { int v; for(v=2;v*v<=n;v++) if(n%v==0) return 0; return 1;} void main() { int i,j,n,sum=0;0 int h,l=0; scanf("%d %d",&i,&j); for(n=i;n>1;n--) { h=sushu(n); if(h) printf("%d",n); l++; sum=sum+n; if(l!=j) printf("+"); else printf("=%d",sum); if(n=l) break; } }
查看完整描述

1 回答

已采纳
?
望远

TA贡献1017条经验 获得超1032个赞

if(n=l)//这里有问题吧?

我写了一个你可以参考一下:

#include<stdio.h> 
int fun(int n)
{
	if(n<=0)
		return -1;
	else if(n<=2)
		return 0;
	else
	{
		for(int i=2;i<n;i++)
		{
			if(n%i==0)
				return 1;
		}
		return 0;
	}
}
void main()
{
	int i,sum=0,m,n;
	printf("请输入两个正整数:m,n\n");
	scanf("%d %d",&m,&n);
	for(i=m;i>0 && n>0;i--){
		if(fun(i)==0){
			printf("%d",i);
			sum+=i;
			n--;
			if(n!=0){
				printf("+");
			}else{
				printf("=%d",sum);
				break;
			}
		}
	}
	printf("\n");
}

//img1.sycdn.imooc.com//59257a69000154e903200142.jpg

查看完整回答
1 反对 回复 2017-05-24
  • 哲14
    哲14
    嗯嗯 谢谢了 我差不多明白了
  • 1 回答
  • 1 关注
  • 8427 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信