C语言中,何为素数?何为非素数?用C语言如何表示?

如题所述

C语言中的素数和数学中的素数是一样的,即:除了1和它本身之外,不能被任何数整除的数(1不是素数)。也就是说素数是这样的整数,它除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积。
非素数的定义就很明了了,素数以外的数都是非素数,在C语言中,求素数的方法,就是从2开始,依次判断该数是否可以被2以上到该数以下的数整除,如果可以,就不是素数,如果不可以被所有大于或等于2小于该数的整数整除,那么就是素数了
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-01-09
朋友您好
有如下程序:
#include
"stdio.h"
int
main
()
{
int
i,
x,
f
=
0;
scanf
("%d",
&x);
for
(i
=
2;
i
<=
x/2;
i++)
if
(x
%
i
==
0)
{
f
=
1;
break;
}
if
(f
==
1)
printf
("不是素数\n");
return
0;
}
它就是帮助您寻找素数的代码,中间运用了标志变量
思路:
输入的数字,我循环开始找,之间不包括它本身和1
如果这样,若有被它整除的数字(当然它本身和1不在循环里面),就
说明它不是素数!那如果就单单的跳出循环,和循环都执行一遍
到最后还是不知道它是不是素数,如果在判断整除的时候把f=0赋值为
1,我就可以最后判断一下f若为1就说明它不是素数,反之,是0说明f
没有被赋值赋到,也就是没有被整除!
当中标志变量顾名思义成为了是不是被整除的标志!
若您有疑问可以追问我!希望可以帮到您!