for循环后面跟分号 - for (i = 0; i <= 3; i++);这不是错误语句

#include<iostream>
int main()
{
    using namespace std;
    int i,t=0;
    for (i = 0; i <= 3; i++);
        t = t + i;
    cout <<t;
    system("pause");
    return 0;

}

其实分号是一条空语句 ,当i=4时候跳出循环直接 执行下一条语句,

运行结果如下:

当for循环下面有一大串的语句时且没有被花括号括起来时,只会执行第一条语句,即 ;这条空语句

#include<iostream>
int main()
{
    using namespace std;
    int i,t=0;
    for (i = 0; i <= 3; i++);
        i = i + i;
        i = i * 3;
        t = i + 3;
    cout <<t;
    system("pause");
    return 0;

}

运行结果如下:

当for循环下面有一大串的语句被花括号括起来时;

 1 #include<iostream>
 2 int main()
 3 {
 4     using namespace std;
 5     int i,t=0;
 6     for (i = 0; i <= 3; i++)
 7     {
 8         ;
 9         i = i + i;
10         i = i * 3;
11         t = i + 3;
12     }
13     cout <<t;
14     system("pause");
15     return 0;
16 
17 }

运行结果如下:

 

posted @ 2015-09-22 17:09  Mr__sun  阅读(2289)  评论(0编辑  收藏  举报