1个回答
展开全部
当型循环与直到型循环在某些情况下是不能转化的。
1.
当型循环,是先判断条件,再执行循环体。如果第一次判断时条件不满足,则循环体执行0次,所以当型循环中循环体的执行次数是
N
>=
0。
2.
直到型循环,是先执行循环体,再判断条件,如果条件满足,则继续循环,否则推出循环。也就是不管条件满不满足,它至少执行一次循环体,所以直到型循环中循环体的执行次数是N
>=1。
由此很容易看出两种循环并不是都能转化。一个特殊的例子就是,当型循环可以当if条件判断用,而直到型循环不能。下面的例子(C++程序,在DEV-C++
5
下运行通过)是当用户输入的两个整数相等时输出"Hello
World!",用当型循环实现,这用直到型循环是办不到的。
#include
<iostream>
using
namespace
std;
int
main(){
....int
a,b;
....cout<<"请输入两个整数:
";
....cin>>a>>b;
....while(a==b){
........cout<<"Hello
World!"<<endl;
........break;
//退出循环
....}
....system("PAUSE");
....return
0;
}
加“.”是为了保持缩进,使程序可读。
1.
当型循环,是先判断条件,再执行循环体。如果第一次判断时条件不满足,则循环体执行0次,所以当型循环中循环体的执行次数是
N
>=
0。
2.
直到型循环,是先执行循环体,再判断条件,如果条件满足,则继续循环,否则推出循环。也就是不管条件满不满足,它至少执行一次循环体,所以直到型循环中循环体的执行次数是N
>=1。
由此很容易看出两种循环并不是都能转化。一个特殊的例子就是,当型循环可以当if条件判断用,而直到型循环不能。下面的例子(C++程序,在DEV-C++
5
下运行通过)是当用户输入的两个整数相等时输出"Hello
World!",用当型循环实现,这用直到型循环是办不到的。
#include
<iostream>
using
namespace
std;
int
main(){
....int
a,b;
....cout<<"请输入两个整数:
";
....cin>>a>>b;
....while(a==b){
........cout<<"Hello
World!"<<endl;
........break;
//退出循环
....}
....system("PAUSE");
....return
0;
}
加“.”是为了保持缩进,使程序可读。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询