问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

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

发布网友 发布时间:2023-07-19 07:51

我来回答

5个回答

热心网友 时间:2023-11-02 23:56

  可以,但是语句的顺序要做相应的改变。
  知识扩展:
  1. while语句
  while关键字的中文意思是“当……的时候”,也就是当条件成立时循环执行对应的代码。while语句是循环语句中基本的结构,语法格式比较简单。
  while语句语法格式:
  while(循环条件)
  循环体;
  为了结构清楚,并且使循环体部分可以书写多行代码,一般把循环体处理成代码块,则语法格式变为:
  while(循环条件){
  循环体;
  }
  语法说明:和if语句类似,如果不是用代码块的结构,则只有while后面的第一个语句是循环体语句。在该语法中,要求循环条件的类型为boolean类型,指循环成立的条件,循环体部分则是需要重复执行的代码。
  执行流程:在执行while语句时,首先判断循环条件,如果循环条件为false,则直接执行while语句后续的代码,如果循环条件为true,则执行循环体代码,然后再判断循环条件,一直到循环条件不成立为止。
  2 .do-while语句
  do-while语句由关键字do和while组成,是循环语句中最典型的“先循环再判断”的流程控制结构,这个和其它2个循环语句都不相同。
  do-while语句的语法格式为:
  do{
  循环体;
  }while(循环条件);
  语法说明:在do-while语句中,循环体部分是重复执行的代码部分,循环条件指循环成立的条件,要求循环条件是boolean类型,值为true时循环执行,否则循环结束,最后整个语句以分号结束。
  执行流程:当执行到do-while语句时,首先执行循环体,然后再判断循环条件,如果循环条件不成立,则循环结束,如果循环条件成立,则继续执行循环体,循环体执行完成以后再判断循环条件,依次类推。
  3 .for语句

  for关键字的意思是“当…的时候”,是实际开发中比较常用的循环语句,其语法格式相对于前面的循环语句来说稍显复杂,但是在熟悉以后,将会发现其语法安排的比较条理,把循环控制和循环体很清晰的分开。

  for语句的语法格式为:

  for(初始化语句;循环条件;迭代语句){

  循环体;

  }

  语法说明:

  1、 和其它流程控制语句一样,语句中的大括号不是语法必须的,但是为了结构清楚以及在循环体部分可以书写多行代码,一般使用大括号。

  2、 初始化语句作用是在循环开始以前执行,一般书写变量初始化的代码,例如循环变量的声明、赋值等。该语句可以为空。

  3、 循环条件是循环成立的条件,要求必须为boolean类型,如果该条件为空,则默认为true,即条件成立。

  4、 迭代语句是指循环变量变化的语句,一般书写i++、i—这样的结构,当然,该语句也可以为空5、 循环体指循环重复执行的功能代码。

  执行流程:

  1、 执行初始化语句

  2、 判断循环条件,如果循环条件为false,则结束循环,否则执行下一步

  3、 执行循环体

  4、 执行迭代语句

  5、 跳转到步骤2重复执行需要注意的是:for语句中的各个语句都可以为空,初始化语句在for语句执行时执行且只执行一次。

  依据for语句的语法格式,则最简单的for语句是如下格式:for(;;);由于循环条件为空时,默认为true,则循环条件恒成立,该循环的循环体即最后的一个分号,这样的语句称作空语句,则该循环是一个死循环,循环体是空语句。
  4.if......else
  if.....else的语法格式:
  if(条件){
  执行语句;

  }else{
  执行语句;

  }

  语法说明:如果满足if后面括号中的条件,则执行下面的语句,否则执行else中的语句。

热心网友 时间:2023-11-02 23:56

如果说完全代替if,估计不可能,
但是在不考虑时间/空间复杂度的情况下,
for、while、do-while这3种循环语句是可以互相替代的

热心网友 时间:2023-11-02 23:57

主要是效率问题,for, while, do-while语句的效率不一样,因此不能完全取代;不过对于复杂度不高的应用,三者可以互换使用,比如:
while(1);
for(;;;);
do{}while(1);

热心网友 时间:2023-11-02 23:57

FOR跟IF明显是不一样的,适合具体知道循环次数的场合,WHILE适合不知道循环次数的场合,DO-WHILE适合不管条件成立与否先运行一次的场合

热心网友 时间:2023-11-02 23:58

在相同效率的前提下。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就可以做出所有流程效果
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
黄家驹是谁.拜托了各位 谢谢 最近这几天去 蓝调薰衣草庄园 还能赶上薰衣草盛开么 有没有去过的给点... 日本留学大学假期怎么放的 塑料水管怕水泥吗 孕妇腹壁脂肪厚怎么减 孕期肚子赘肉怎么减下去? 孕妇肚子怎么减肥啊 怀孕怎么减肚子上的肉 考研的难度相当于高考吗? 宏基5536笔记本15.6寸屏幕分辨率最高可以设到多少,我用HDMI线连液晶电视... 梦见开房遇到熟人 中央司法警官学院内蒙古录取分数线 拉拉混圈是什么意思 征信花轻松转贷款怎么样 一路前行励志的句子短句 秒白条客服电话多少? 求,葡萄牙足球队员号码, 里约奥运会葡萄牙球员13号是谁? 13号的球星 葡萄牙尤西比奥几号 银行金融是指什么? 注册公司:办公司对注册资本的条件有哪些 公司注册:创业者须知:注册不同行业公司的要求和条件 我的登录密码忘了,以前注册微信时的手机号码也不用了,要怎么找回... 没绑定手机号,密码忘了怎么找回 长期上夜班有哪些坏处? 长期上夜班怎么办? 谁创造了二十四节气? 摩托车车管所上牌流程 绝地求生怎么躲车 速倍妥和仟湖哪个喂雷龙鱼好 洗衣机脱水时显示H2 三星滚筒洗衣机H2什么故障 一个方框里面一个实心三角形是什么阀门 三位四通手动p型换向阀的符号 ...股票为什么不涨呢?永泰能源2021中报预告?永泰能源后市如何发展?_百度... 永泰能源为什么上不去?2021永泰能源业绩?600157永泰能源是哪个市场? 永泰能源为什么涨不上去?永泰能源 未来业绩不可捉摸?巨潮资讯网永泰能源... 永泰能源为什么难涨?永泰能源中报什么时候发?600157永泰能源后市如何... 永泰能源今天为什么下跌不涨?永泰能源股票2021年半年报披露时间?永泰能 ... 安装cad2018没进行过激活步骤,到提示激活已完成,是怎么 周公结梦梦见自己掉牙齿没有出血就只是松动 梦见_公司上司吃_喝酒的预兆 厌胜术口诀鲁班书中厌胜术能讨债吗 天下奇书《鲁班书》被禁,难道学了它真的会孤独终老? 尼康哪三个镜头实用 私人顾问可以炒股吗 夏兰是做什么的 connect和associate的区别 qq三国黑铁锦盒任务谷利在哪