从“追求尽量不出错”,到正视“出|

如此而已~~~

园龄:3年3个月粉丝:0关注:12

c语言的质数判断

c语言的质数判断1:

首先要判断一个数是不是质数,要看它除了1和它本身以外,在区间[2,m-1]的范围内,是否还有一个以上(包括一个)能让它整除的数。

思路:

在区间[2,m-1]的表示方法:

~~~c
if(x>=2&&x<=m-1)或者for(x=2;x<m;x++)
~~~

在这里我使用第二个代码表示,除此之外还要考虑两个特殊的数:1和2。

我们需要的效果是能否整除那就需要用到%符号(同时注意%两边都必须是int)

我们要做的就是在这个区间内找到这样一个数即:

for(x=2;x<m;x++)
{
m%x==0;
break;
}

当这个数出现时就已经可以停止此次循环了。

接下来我们再来进行判断这个数是否在这个区间内,如果在就说明输入的数字除了1和自己本身外,还有一个能在区间[2,m-1]让它整除的数所以该数不是质数,反之则说明该数是质数。

注:还可以在这些基础上加上一些提示语和一些输入错误的处理方法

结合以上思路最终得到的代码为:

#include <stdio.h>
int main()
{
int x,y;
printf("请输入一个正整数:");
scanf("%d",&x);
while(x<0)
{
x=-x;
}
if(x==1)
{
printf("该数不是质数。");
}
if(x==2)
{
printf("该数是质数。");
}
if(x>2)
{
for(y=2;y<x;y++)
{
if(x%y==0)
{
break;
}
}
if(y>=2&&y<x)
{
printf("该数不是质数。");
}
else
{
printf("该数是质数。");
}
}
return 0;
}

本文作者:如此而已~~~

本文链接:https://www.cnblogs.com/fragmentary/p/15598420.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   如此而已~~~  阅读(2433)  评论(0编辑  收藏  举报
//雪花飘落效果
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起