我是新手,请问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循环的循环体里面呢?系统自动识别吗??还是我的思维出现了问题?求赐教、 展开
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循环的循环体里面呢?系统自动识别吗??还是我的思维出现了问题?求赐教、 展开
1个回答
展开全部
我没看你的代码,我先告诉你的是,for 循环,后面是需要大括号的,否则就只对后面的一条语句生效
for(;;)
for(;;)
这种不打大括号是因为,第一个for 只需要对第二个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;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询