一开始弄错了,现在弄明白了。
#include<stdio.h>
void main()
{
int i,n;
for(n=3;n<=100;n++) // n = 3 (执行一次这个for语句,下面for语句里面 i 的值就初始化 i = 2)
{
for(i=2;i<n;i++)//i++是不断的加,不是定值吗 (每次执行上面的 for 的时候 初始化为 i = 2)
if(n%i==0)
//1. n = 3,i = 2;n%i 不等于 0(并没有结束循环,所以 i = i + 1 , i = 3 , n%i == 0 ,结束循环);
//2. n = 4,i = 2;n%i == 0;
break;
//结束本次循环执行下面的语句
//1. i = i + 1 , i = 4.
//2. i = i + 1 , i = 3.
if(n>i)
//1. n = 3
不大于 i = 4;
//2. n = 4 大于 i = 3;
printf("%d\n",n);
// 输出
4;
//1. n = n + 1 , n = 4;
//2. n = n + 1 , n = 5;
}
}
[
本帖最后由 a382188110 于 2015-9-22 17:04 编辑 ]