遇到一个C语言问题。输入一个整数,判断其是否为素数。

输入一个整数,判断其是否是素数,若是则输出1,否则输出0.请填空。mian(){inti,x,y=1;scanf("%d",&x);for(i=2;i<=______;i... 输入一个整数,判断其是否是素数,若是则输出1,否则输出0.请填空。
mian()
{ int i,x,y=1;
scanf("%d",&x);
for(i=2;i<=______;i++)
if { y=0;break;}
printf("%d\n",y);
}

程序是看懂了,就是不知道横线里该填什么,希望大家帮帮我。最重要的是答案怎么得出来的。
展开
 我来答
iiiiiiiipl
2019-05-21 · TA获得超过9923个赞
知道答主
回答量:68
采纳率:66%
帮助的人:3.9万
展开全部

x/2

程序分析: 

1.质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。 

2.nn能被mm整除,则m≤n2m≤n2,所以只需要穷举m∈[2,n2]m∈[2,n2]即可,若在穷举过程中出现了nn的情况则n是质数,若mm能自加到m=n2m=n2则n不是质数。

#include "stdio.h"

void main()

{

int i,x,y=1;

scanf("%d",&x);

for(i=2;i<=x/2;i++)

if ( y==0)break;

printf("%d\n",y);

}

输入100,运行后输出1。

扩展资料:

C语言需要说明的是:

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

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

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

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

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

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

参考资料:

百度百科-c语言

MageAoko
推荐于2017-11-25 · TA获得超过169个赞
知道小有建树答主
回答量:89
采纳率:0%
帮助的人:176万
展开全部
#include "stdio.h"
#include "iostream"
int main()
{
int i,x,y=1;
scanf("%d",&x);
for(i=2;i<=x/2;i++)//i从2到x/2,将x除以i,如果能整除,说明x不是素数,如果都不能整除,x为素数
if(x%i == 0)//当i大于x/2时,设t,使i*t=x,可得t<2,也就是说将不存在i,使x能整除i得整数t(1除外)
{
y=0;
break;
}
printf("%d\n",y);
}

如果回答满意别忘了选最佳答案~
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
师杉卑娴淑
2019-11-25 · TA获得超过3547个赞
知道大有可为答主
回答量:3005
采纳率:34%
帮助的人:191万
展开全部
#include
"stdio.h"
#include
"iostream"
int
main()
{
int
i,x,y=1;
scanf("%d",&x);
for(i=2;i<=x/2;i++)//i从2到x/2,将x除以i,如果能整除,说明x不是素数,如果都不能整除,x为素数
if(x%i
==
0)//当i大于x/2时,设t,使i*t=x,可得t<2,也就是说将不存在i,使x能整除i得整数t(1除外)
{
y=0;
break;
}
printf("%d\n",y);
}
如果回答满意别忘了选最佳答案~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
442827397
2012-07-09
知道答主
回答量:66
采纳率:0%
帮助的人:34.5万
展开全部
你可以填个根号x后取整的数 ,这样可以减少循环次数。还可以再用个I++,因为偶数肯定不是质数(除了2)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
人援振声
2012-07-09 · TA获得超过293个赞
知道小有建树答主
回答量:197
采纳率:100%
帮助的人:114万
展开全部
#include <stdio.h>
#include <math.h>
void mian()
{ int i,x,y=1;
scanf("%d",&x);
for(i=2;i<=sqrt(x);i++)
if { y=0;break;}
printf("%d\n",y);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式