当前位置:首页 > 教育资讯

C语言-else情况的位置

①例子

判断n是否为素数?

素数即只能被1和自身整除的数,

若能被2至n/2任意一个数整除,

就不是素数。

②else情况在循环中

int f (int n)

{int k,yes;

for (k=2;k<=n/2;k++)

/*k在2至n/2循环递增,循环结束加1*/

if(n%k==0)yes=0;

/*若n%k==0,即n能被k整除,

则yes=0,为假,即不是素数*/

else yes=1;

/*若n不能被k整除,

则yes=1,为真,即是素数。

此处可能n可能遇到一个不能整除的k,

即k还没循环完全部情况,

就误判为素数,

所以else必须在循环外,在程序结尾*/

return yes;

}

③else情况在循环外(结尾处)

int f (int n)

{int k;

/*不需要yes*/

for (k=2;k<=n/2;k++)

if(n%k==0)return 0;

/*若n%k==0,即n能被k整除,

则函数值=0,为假,即不是素数,

for循环结束*/

return=1;

/*循环结束,已经排除所有情况,

若n不能被k整除,

则函数值=1,为真,即是素数

由于在for循环外,也不在 if语句中,

不需用else,但还是否则的语境。*/

本文来自网络,不代表教育资讯立场,转载请注明出处。