c语言编程 各位大虾给我指点一下这道c程题错在哪里?

编写函数longfun(inthigh,intn),功能是:计算并返回high以内(不包含high)最大的n个素数之和。若不足n个,则到最小素数2为止。例如:若high=... 编写函数long fun(int high,int n),功能是:计算并返回high以内(不包含high)最大的n个素数之和。若不足n个,则到最小素数2为止。例如:若high=100,n=10,则函数的返回值为:732;若high=11,n=10,则函数返回:17。

long fun(int high,int n)
{
int i,j,t; long sum=0;
for (i=1,t=high-1;t>=2;t-- )
{for (j=2;j<sqrt(t);j++)
{if (t%j==0) break;
if(j>sqrt(t){ sum+=t; i++}
}
if (i>n) break;
}
return (sum);
}
void main()
{int k,n;
scanf("%d%d",&k,&n);
printf("sum=%ld\n",fun(k,n));
}
展开
 我来答
hemanzi2006
2007-12-05 · 超过49用户采纳过TA的回答
知道答主
回答量:123
采纳率:0%
帮助的人:0
展开全部
#include<stdio.h>

#include<math.h>/******/

long fun(int high,int n)
{
int i,j,t; long sum=0;
for (i=1,t=high-1;t>=2;t--)
{for (j=2;j<sqrt(t);)
{if (t%j==0) break;j++;}/*******/
if(j>sqrt(t)){ sum+=t; i++;}

if (i>n) break;
}
return (sum);
}
void main()
{int k,n;
scanf("%d%d",&k,&n);
printf("sum=%ld\n",fun(k,n));
}
编程思想没有错,只有一点小问题,我已经给你改好了,祝你学习愉快!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式