#include <stdio.h>
bool zhishu(int a)
{
int i;
for(i=2;i<a;i++)
{
if(a%i==0)
break;
};
if(i==a)
return true;
else
return false;
}
int main(void)
{
int i;
int val;
while(1){
printf("请输入一个数:");
scanf("%d",&val);
if(zhishu(val))
printf("YES!\n");
else
printf("NO!\n");
i++;
}
return 0;
}
最近也是在自学c语言哈哈,总结勒一些知识点:
首先是函数调用如果是void zhishu()
下面不用return,void表示空
如果的是int zhishu(){}下面要return类型一样, 如果不一样,以前面定义的int为主
质数只可以被1和本身整除
所以for循环(i=2、i<判断的数,i++)
然后if判断的数%==0,代表他可以被1和本身之外的数整除,然后就break跳出语句,不会再进行i++,如果是质数,i会继续循环下去,直到i小于判断的数不成立,跳出循环。(比如5,与2,3,4整除,最后i++,i=5,执行i<5,不成立,跳出循环)
if如果i的数等于判断的数,那就是质数,因为一直循环,i会等于质数,没有执行if语句。如果不是,就不是质数,因为如果可以被整除break跳出整个for循环,是不会再进行i++循环操作的,那么i也不会等于判断的数,就执行else,所以可以判断他不是一个质数
补充一些break,continue,return之间的区别
return是跳出函数
break用在for是跳出循环,用在switch(表达式){case 1:语句1;break;case 2:语句2;break}的case中break跳出语句1,case1,
continue是跳过本次循环体中尚未执行的语句用在switch(表达式){case 1:语句1;continue;语句2;break;case 2:语句3;break}
![](https://img-blog.csdnimg.cn/img_convert/3ba7f1221acf9743ba56ded5dcae1ba2.png)
看我美丽的程序界面哈哈哈!