C语言刷题 | 判断是否素数(9)
例9:C语言实现输入一个大于3的整数n,判断他是否为素数(质数)。
解题思路:本题采用的算法是,让n被i除,如果number能被2~(number-1)之中的任何一个整数整除,则表示number肯定不是素数,不必再继续被后面的整数除,因此,可以提前结束循环。
源代码演示:
#include//头文件
int main()//主函数
{int number,i;//定义变量printf("请随机输入一个数:");//提示语句scanf("%d",&number);//键盘输入需要判断的数for(i=2;i<=number-1;i++)//循环从2开始,到这个数的掐前一个数为止{if(number%i==0)//如果取余结果为0break;}if(i
编译运行结果如下:
请随机输入一个数:56
56不是素数
--------------------------------
Process exited after 4.465 seconds with return value 0
请按任意键继续. . .
读者需要知道什么是素数,素数一般指质数,是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
此题的关键是看结束循环时i的值是否小于number,如果number能被2~(number-1)之间的一个整数整除,则必然是由break语句导致循环提前结束,即i并未达到number的值时,循环就终止了。
以上,如果你看了觉得对你有所帮助,就给小编点个赞叭,这样我也有更新下去的动力,跪谢各位父老乡亲啦~
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
