我是新手,请问for循环下嵌套第二第三个for循环为什么不加大括号呢?是习惯吗?还有请看下面两个简单程序

#include<iostream.h>voidmain(){inti,j;for(i=0;i<5;i++){for(j=1;j<5-i;j++)cout<<"";for... #include<iostream.h>
void main()
{
int i,j;
for(i=0;i<5;i++)
{
for(j=1;j<5-i;j++)
cout<<" ";
for(j=0;j<=i;j++)
{
cout<<"*";
cout<<endl;
}
}
}
和下面这个
#include<iostream.h>
void main()
{
int i,j;
for(i=0;i<5;i++)
{
for(j=1;j<5-i;j++)
cout<<" ";
for(j=0;j<=i;j++)

cout<<"*";
cout<<endl;

}
}
他们打出来的星号并不一样,可是为什么下面的这个程序中最后一行不能算进第三个for循环的循环体里面呢?系统自动识别吗??还是我的思维出现了问题?求赐教、
展开
 我来答
Tidus_forever
2012-10-11 · TA获得超过4399个赞
知道大有可为答主
回答量:2782
采纳率:100%
帮助的人:1843万
展开全部
我没看你的代码,我先告诉你的是,for 循环,后面是需要大括号的,否则就只对后面的一条语句生效
for(;;)
for(;;)
这种不打大括号是因为,第一个for 只需要对第二个for 这一条语句生效就够了
更多追问追答
追问
哦,懂了,谢谢。不过我还有点疑问在代码里,如果不麻烦的话请你看一眼吧。
追答
我的回答已经包含答案了。for的生效范围是后面的一条语句,或者一个语句组。
大括号就是将很多条语句,合成一个语句组。
不要被缩进迷惑了。
我给下面那个加上等效的大括号,你自己看区别吧。
#include
void main()
{
int i,j;
for(i=0; i
void main()
{
int i,j;
for(i=0; i<5; i++)
{
for(j=1; j<5-i; j++)
cout<<" ";
for(j=0; j<=i; j++)
{
cout<<"*";
}
cout<<endl;
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式