//循环结构程序举例:素数
/*从键盘上输入一个整数,判断其是否为素数。
* 问题分析与算法设计
* 素数:除了1和它本身不能被其他整数整除的自然数
* 判断自然数k是否为素数
* 依次测试k能否被2,3,...k-1整除
* 若遇到能整出的情况,则k不是素数,
* 算法结束;否则k是素数
*/
#include<stdio.h>
#include<math.h>
int main(){
int x,i;
printf("please input one undesign integer number:");
scanf_s("%d",&x);
if(x<=0)
return -1;
for(i=2;i<=sqrt(x);i++)
if(x%i==0)
break;
if(i>sqrt(x))
printf("%d is prem number\n",x);
printf("%d is not prem number\n",x);
}
整体思路就是能不能被整除,
1,这个整数小于0
直接返回异常;
2.该整数在2到根号下x这个范围中,在进行判断,如果能被整除x%i==0;则不是素数,break;跳出循环,直接进行printf("this is not prem number!");
3.如果这个整数不在这个范围内,i>根号下x,则这个数不能被整除,输出printf("this is prem number!");