昆明西山爬山路线:一道C语言问题

来源:百度文库 编辑:高校问答 时间:2024/05/08 19:39:11
从键盘输入一个正数,编写程序判断是否为素数,若是则输出YES,若不是,输出NO

void main(void)
{
int num_sushu;
int counter;
printf("Input a unsegned number(>4):\n");
scanf("%d",&num_sushu);
for(counter=2;counter<num_sushu/2;counter++)
if(num_sushu%counter==0)
/*成立的话,num_sushu就不是素数*/
num_sushu=0;
if(!num_sushu) /*num_sushu=0时成立,即不是素数*/
printf("NO\n");
else /*否则就是素数,输出YES*/
printf("YES\n");
}
输入的数要大于4。1~4会判断错。
将for语句改成
for(counter=2;counter<num_sushu;counter++)
可判断3以上。我想也没必要。1~10一眼就可看出了。

~!@#$%^&*()_

不能被2到该数平方根之间的数整除的都是素数。

哥们~作业也放上来找人带做啊~