for语句可以完全代替if、while、do-while语句吗?

来源:百度知道 编辑:UC知道 时间:2024/09/23 11:33:33
不说C++的情况
最好能举个简单的例子

在相同效率的前提下。for和while可以实现if
for (;a > b;)
{
...
break;
}

while (a > b)
{
...
break;
}

但是if...else貌似做不出来。

循环语句可以完全互相替代。

因为for(;;) while(1) do...while(1)是等价的 里面利用if break和continue就可以实现各种效果并且效率相同。

比如for(int i = 0; i < 5; i++) {...}就可以写作
{
int i = 0;
while(i < 5)
{
...
i++;
}
}

do
{
...
}while(a < b)就是
for (;;)
{
...
if (!(a < b)) break;
}

当然以上的前提都是不可以用goto,否则只用if和goto就可以做出所有流程效果

  可以,但是语句的顺序要做相应的改变。
  知识扩展:
  1. while语句
  while关键字的中文意思是“当……的时候”,也就是当条件成立时循环执行对应的代码。while语句是循环语句中基本的结构,语法格式比较简单。
  while语句语法格式:
  while(循环条件)
  循环体;
  为了结构清楚,并且使循环体部分可以书写多行代码,一般把循环体处理成代码块,则语法格式变为:
  while(循环条件){
  循环体;
  }
  语法说明:和if语句类似,如果不是用代码块的结构,则只有while后面的第一个语句是循环体语句。在该语法中,要求循环条件的类型为boolean类型,指循环成立