C++里for循环是先执行后判断的吗??!用于【循环结构嵌套】中

请看我上传的图,(我的程序和运行结果)为什么最后一处还是有了一次执行"for语句的i++",明明已经不满足i<=5了帮忙解释一下for语句的用法它这里for是外循环,do... 请看我上传的图,(我的程序 和 运行结果)为什么最后一处还是有了一次 执行"for语句 的 i++ ",明明已经不满足i<=5了 帮忙解释一下for语句的用法
它这里for是外循环,do是内循环,
这是我书上的用法 for(i=0(初始语句 本题中为空白 ) ; 表达式1 ; 表达式2) 后面接 "语句"
书上说 ,只要不满足表达式1 就退出for语句啊!这样 本运行结果 是否 与书上 说讲的 不一样?!
书上写错了吗? 不满足条件时 不是直接退出吗?为啥最后还有来一次 执行"for语句 的 i++ "??!

下面给出我的代码 我的 书的版本是《C++语言程序设计 第4版 》清华大学出版社题目在 50页
#include<iostream>using namespace std;void main()
{ int i=1,a=0; for(;i<=5;cout<<"for循环"<<endl,i++,cout<<i<<","<<a<<endl) { do { cout<<"do循环"<<endl; i++; a++; cout<<i<<","<<a<<endl; } while(i<3); cout<<"++循环"<<endl; i++; cout<<i<<","<<a<<endl;
}
cout<<i<<","<<a<<endl;}
展开
 我来答
奥麦地道
推荐于2017-12-16
知道答主
回答量:29
采纳率:0%
帮助的人:12.7万
展开全部
for(a;b;c)
{
d;
}
执行逻辑为
1.a
2.判断b
3.如果b成立执行d,否则结束
4.执行c
5。回到2,重新判断b
你得这个例子,
输出7.3之后,即上面的d执行完,这时会去执行c,也就是(cout<<"for循环"<endl,i++,cout<<i<<","<<a<<endl)
追问
你好,感谢你回答我的问题,  照你的说法, 是不是我上面给出的 教科书上的说法“只要不满足表达式1     就退出for语句”  其实是由于错的?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式