c++ for 语句中的continue疑问
有代码如下:#include<iostream.h>intmain(){inta,b;for(a=1,b=1;a<=100;a++){b++;if(b==3)break;...
有代码如下:
#include<iostream.h>
int main()
{
int a,b;
for(a=1,b=1;a<=100;a++)
{
b++;
if(b==3)break;
if(b==2)continue;
}
cout<<"a="<<a<<endl;
return 0;
}
按照书本对for语句的说明,上面语句可改写为
#include<iostream.h>
int main()
{
int a,b;
a=1,b=1;
for(;a<=100;)
{
b++;
if(b==3)break;
if(b==2)continue;
a++;
}
cout<<"a="<<a<<endl;
return 0;
}
可是这样做的话两次输出结果不同 到底是哪里有问题呢?
#include<iostream.h>
int main()
{
int a,b;
a=1,b=1;
for(;a<=100;)
{
b++;
if(b==3)break;
if(b==2)continue;
a++;
}
cout<<"a="<<a<<endl;
return 0;
}
书本说:for语句可改写为
语句1;
for(;表达式2;)
{
循环体;
表达式3;
} 展开
#include<iostream.h>
int main()
{
int a,b;
for(a=1,b=1;a<=100;a++)
{
b++;
if(b==3)break;
if(b==2)continue;
}
cout<<"a="<<a<<endl;
return 0;
}
按照书本对for语句的说明,上面语句可改写为
#include<iostream.h>
int main()
{
int a,b;
a=1,b=1;
for(;a<=100;)
{
b++;
if(b==3)break;
if(b==2)continue;
a++;
}
cout<<"a="<<a<<endl;
return 0;
}
可是这样做的话两次输出结果不同 到底是哪里有问题呢?
#include<iostream.h>
int main()
{
int a,b;
a=1,b=1;
for(;a<=100;)
{
b++;
if(b==3)break;
if(b==2)continue;
a++;
}
cout<<"a="<<a<<endl;
return 0;
}
书本说:for语句可改写为
语句1;
for(;表达式2;)
{
循环体;
表达式3;
} 展开
3个回答
展开全部
修改后的程序中的a++;语句要放在if(b == 2) continue;语句前面。这是因为,当执行continue语句后,后面的语句都不再执行,进入下次循环中。整体修改的标准程序应为:
#include<iostream.h>
int main()
{
int a,b;
a=1,b=1;
for(;a<=100;)
{
b++;
if(b==3)break;
a++;
if(b==2)continue;
}
cout<<
#include<iostream.h>
int main()
{
int a,b;
a=1,b=1;
for(;a<=100;)
{
b++;
if(b==3)break;
a++;
if(b==2)continue;
}
cout<<
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
303747619 是对的,子爵的应该在最后再加上一个 a++才行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询