C语言问题,如下图 for 循环中的循环条件就已经是i<=n-1了,为什么还要判断if(i<n)呢??求解释。

如题所述

这是因为如果没有发生break退出;则退出时的i已经超过n-1,即i=n了。
所以在这里用i<n作为判定是否素数的条件。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-08-31
举个例子
n=3
第一遍循环 i=2,i<=2 执行 if判断...
第二遍循环 i=3 跳出循环
这个时候,i<n是错的,所以是素数

n=8
第三遍循环 i=4,判断if是true,跳出循环
4<8所以8是素数

总结:在是素数情况下会循环到n-1,并且在i=n时结束,所以判断i是否小于n本回答被提问者采纳
第2个回答  2016-08-31

首先素数只能被1和他本身整除

如果n为5循环结束,i就等于6

在判断if(i<n)如果小于不是素数,不小于就是素数

求采纳


第3个回答  2016-08-31
for语句的循环体只包括他后面紧跟的那一条if语句,并不包括你说的if(i<n)这条语句。没有大括号哦
相似回答