关于c++for循环一小疑惑!

#include<iostream>
using namespace std;
int main()
{
int sum=0;
for(int i=0;i<=100;i++)sum=sum+i;
cout<<sum<<endl;}为什么for循环不加上大括号的话,执行结果是这样只循环一次,就将i+sum相加完了!而for循环加上大括号的话,则会是i循环一次,执行一下换行!这个是为什么,?以前学for循环的时候没有注意这细节问题,现在回头学他,发现这问题!所以特来请教各位高手这个是为什么!

第1个回答  2014-01-12
楼主我说多了你难得看,这是个非常简单的问题:在C/C++中的语句是一个语段为一句, 如IF语句就是if () 干什么; 如果你干什么多一点的话就要加{} if () {干什么;再干什么;再再干什么;}for (i=0;i<=100;i++) 干什么; 这就是for 语句。for (i=0;i<=100;i++ ) {干什么;} 与上面等价for (i=0;i<=100;i++); //什么都干,但是浪费CPU运行时间。for (i=0;i<100;i++) {干什么;干什么;} 这就是干几个事呵呵 这是这门语言的风格,有些计算机语言可不是那样。因为在做什么事都有确定一个范围。就像miain {} 不加的话编译系统又不是神仙~
第2个回答  2014-01-12
for(int i=0;i<=100;i++)sum=sum+i; //这句话执行了101次for后加一条语句或语句块(即大括号括起来的语句)
第3个回答  2014-01-12
你那例子for循环加不加括号都是一样的
第4个回答  2020-05-02
for(int
i=0;i<=100;i++)
sum=sum+i;
//这句话执行了101次
for后加一条语句或语句块(即大括号括起来的语句)
第5个回答  2020-01-21
for
如果不加大括号只执行它下面的一条语句
楼主的的for加不加括号是一回事

C++ for语句执行循环次数问题
首先,请注意C++中i = j的意思是把i赋值为j,判断i与j是否相等的表达式为i == j。(例如:if (enemy == 0) win(); 当敌人没有了时,游戏获胜)i=j其实是一个表达式,有一个返回值,是赋值后的i的值,比如表达式i = 3的值为3。这样,只有当执行循环体后(i = j) == 0,即j的值...

c++中的for循环矩阵问题
嵌套循环就是外层循环进行一次内层循环循环一圈。例如两层的嵌套 for(i=1;j<=5;i++) for(j=1,j<=5;j++,n++) 意思就是i=1的时候 j从1到5循环一遍,i=2的时候,j从1到5循环一遍,i=3的时候j从1到5循环一遍,这样一直到最外层的循环 结束为止。

C++for函数的问题,for(e=0, ip=m; e<3; e++, ip+=3),m是确定的值,这个...
只是一层循环。一个for只能是一个循环,不过循环一次执行两个条件:e++,ip=ip+3;而已。for(表达式1;表达式2;表达式3) 语句 for语句的执行过程:(1) 先求解表达式1。 (2) 求解表达式2,若其值为真(值为非0),则执行for语句中指定的内嵌语句,然后执行下 面第(3)步。若为假(值为0),则...

C++for循环中的自增运算问题?
1、先执行表达式1一次 2、执行表达式2,如果表达式2的结果为真,则跳到3,否则跳到5 3、执行循环体 4、执行表达式3,然后跳到2 5、结束for循环 可见是每次执行完循环体后,才执行的表达式3的。然后再执行表达式2,并根据表达式2的结果是否为真,决定是否继续执行for循环。

C++中关于case中for循环的问题
就是说在for之后也是可以使用的,那么按照去掉大括号的程序,i的作用域是从声明之处到switch的大括号结束。而default标签跳过了i的声明语句却在i的作用域之中,这显然是有问题的。之所以加上大括号是正确的,是因为大括号改变了i的作用域 按照标准,这段代码的错误是main函数的类型是int,其他没错。

c++ for()的循环次数是怎么计算的?
for(i=0;i<n;i++)的意思:在c语言中,for(i=0;i<2,i++){循环体语句;}这样的循环体会执行2次(分别是i=0和i=1时的情况)。它的执行流程是这样的:首先给变量i赋初值0,然后判断,若满足条件i<2(是),就执行循环体的语句,完成后再i++,即。i = i + 1。i变成1,然后再次判断...

有没有哪位大神说明一下,为什么C++遍历数组无限循环啊?
就是无限循环。2、C语言中for循环包含三个部分:初始化、条件、递增for(INITIALIZATION;CONDITION;AFTERTHOUGHT)初始化是宣告(或者赋值)任何需要的变数的动作。如果你要使用多个变数,则变数的种类要一致。3、如果他们的基本答案是:我被教着这样做,但从没有想到过为什么。这会给我留下一个坏印象。

c++中for循环体的初始化问题
for(int i = 0; i < 100; i++){ if(i == 99) \/\/假设循环到100次时, i = 50; \/\/把i的值赋为50,再次循环;}注意:这样定义需要一个循环终止条件,不然会无限循环!希望能帮到你!

C++问题: (1). 第一次运行for循环的时候,a=11,m=11,满足m<=b,然后执 ...
5)<<m;,如果想要if控制cout<<setw(5)<<m;要改成:if(l++%10 == 0){ cout<<endl;cout<<setw(5)<<m;}。所以第一次执行时,程序输出换行符(空行),之后只有数据(不再输出换行符)。这两种写法的区别如下:1)原题写法 按原题写法时的输出:2)修改后:修改后的执行结果:...

C++用for循环向数组输入数据的问题
其实输入10个数也行,最后一个输完后,多按一次回车就可以了。因为scanf("%d\\n",x[9])要求你要原样输入,而输入回车就可以产生\\n。举个例子,如果scanf("%d,%d",&a,&b)是这样,你的输入格式要是1,1,如果是这样scanf("%d,",&a),你的输入格式要是1,。

相似回答
大家正在搜