啊哈磊_编程从这里起步

标题: 我是不太懂这里的原因 [打印本页]

作者: tom075395    时间: 2012-9-6 17:42
标题: 我是不太懂这里的原因

int a;   

a=1;   

while(a<=99)   

printf("%d\n",a),a=a+1;   

while(a>=01)   

printf("%d\n",a),a=a-1;

当a>99 第一个while是不运行但第二个while运行时,a不是会<99吗?Why运行第二个while后第一个while会失效了?


作者: pc54188    时间: 2012-9-6 17:42
你如果两个while嵌套,会再次从第一个while开始判断,但这是两个独立的while语句,也就是程序结构是顺序结构,执行第一个while之后,a的值是100了,跳出第一个while,进行第二个while的判断了,就算a的值减到99,也不会去判断第一个while的。
作者: tom075395    时间: 2012-9-6 19:53
pc54188 发表于 2012-9-6 19:03
你如果两个while嵌套,会再次从第一个while开始判断,但这是两个独立的while语句,也就是程序结构是顺序结构 ...

也就是第一个while完后是不会再运行?




欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/) Powered by Discuz! X3.2