怎么用C语言编程求51以内的所有素数之和?

#include<stdio.h>intCheckss(intm);{inti;for(i=2;i<m;i++){if(m%2=0)return0;}return1;}m... #include<stdio.h>
int Checkss(int m);
{
int i;
for(i=2;i<m;i++)
{
if(m%2=0)
return 0;
}
return 1;
}
main()
{
int i,sum;
for(i=2;i<=51;i++)
{
if(!Checkss(!))
sum+=i;
}
printf("The result is:%f\n",sum);
}
这个程序错在哪?
展开
 我来答
iiiiiiiipl
2019-05-21 · TA获得超过9923个赞
知道答主
回答量:68
采纳率:66%
帮助的人:3.9万
展开全部

#include<stdio.h>

int main()

{

int i,j;

int sum = 0;

int flag; //是否为素数

for (i = 2; i <= 51; i++) {

flag = 1;

for (j = 2; j <= i - 1; j++) {

if (i % j == 0) {

flag = 0;

break;

}

}

if (flag == 1) {

sum += i;

}}

printf("和为:%d",sum);

}

扩展资料:

C语言需要说明的是:

1、一个C语言源程序可以由一个或多个源文件组成。

2、每个源文件可由一个或多个函数组成。

3、一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。是整个程序的入口。

4、源程序中可以有预处理命令(包括include 命令,ifdef、ifndef命令、define命令),预处理命令通常应放在源文件或源程序的最前面。

5、每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。结构体、联合体、枚举型的声明的“}”后要加“ ;”。

6、标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。

参考资料:

百度百科-c语言

路过要饭的快乐
2018-12-13 · TA获得超过275个赞
知道答主
回答量:81
采纳率:100%
帮助的人:16.7万
展开全部
1.int Checkss(int m);(去掉句末分号)
2.if(m%2=0)(把2改为i,然后加个等号:m%i==0)
3.还有那个什么改成if(checkss(i) !=0)
4.int i, sum ;(sum改为sum=0)
5.printf("The result is:%f\n",sum);
}(%f改为%d)
PS:好像就这样了……
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9f8ba65
2018-11-22 · TA获得超过1018个赞
知道小有建树答主
回答量:384
采纳率:86%
帮助的人:95.5万
展开全部
1、int Checkss(int m);后面的分号去掉别要。
2、if(m%2=0)改为if(m%2==0)。
3、if(!Checkss(!))改为if(!Checkss(i))
4、int i, sum;后面加一句sum=0
5、printf("The result is:%f\n", sum);改为printf("The result is:%d\n", sum);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式