while的格式结构

while (表达式)
{语句;
}

do while的格式结构

do
{语句;
}
while (表达式);

do…while 和 while 的执行过程非常相似,唯一的区别是:“do…while 是先执行一次循环体,然后再判别表达式”。当表达式为“真”时,返回重新执行循环体,如此反复,直到表达式为“假”为止,此时循环结束。

现在问一个问题:你认为 while 和 do…while 是否等价?它们是否可以相互转换?我们前面讲,while 和 for 是完全等价的,它们是可以相互转换的。那 do…while 和 while、for 等价吗?它们可以相互转换吗?

答案是“不能”。原因十分简单,while 循环体内部不一定会执行,当表达式一开始就为假的时候它就不会执行。但 do…while 不管表达式开始为真还是为假,循环体内部都会先执行一次。


do-while循环形式:

#include <stdio.h>int main()
{char antwort = 'd';do{printf("\n");printf("Menue\n");printf("a)  Mensa Innenstadt\n");printf("b)  Steinheil\n");printf("c)  Thai Magie\n");printf("d)  Beenden\n");printf("\n");printf("Bitte waehlen Sie eine Aktion aus: ");scanf(" %c", &antwort);if (antwort == 'a' || antwort == 'A') {printf("Es gibt Krautspaetzle. Verdauungsschlaf am Nachmittag.\n");}else if (antwort == 'b' || antwort == 'B'){printf("Grosses Schnitzel mit Bratkartoffeln.\n");}else if (antwort == 'c' || antwort == 'C'){printf("Menue 503. Es lebe die Mikrowelle.\n");}} while (antwort != 'd' && antwort != 'D');  }

while循环形式:

​
#include <stdio.h>int main()
{char antwort; //把这个赋值改一下就行,感谢哲哥while (antwort != 'd' && antwort != 'D'){printf("\n");printf("Menue\n");printf("a)  Mensa Innenstadt\n");printf("b)  Steinheil\n");printf("c)  Thai Magie\n");printf("d)  Beenden\n");printf("\n");printf("Bitte waehlen Sie eine Aktion aus: ");scanf(" %c", &antwort);if (antwort == 'a' || antwort == 'A') {printf("Es gibt Krautspaetzle. Verdauungsschlaf am Nachmittag.\n");}else if (antwort == 'b' || antwort == 'B'){printf("Grosses Schnitzel mit Bratkartoffeln.\n");}else if (antwort == 'c' || antwort == 'C'){printf("Menue 503. Es lebe die Mikrowelle.\n");}}}​
#include <stdio.h>int main()
{char antwort = 'd';while(antwort != 'd' || antwort != 'D'){printf("\n");printf("Menue\n");printf("a)  Mensa Innenstadt\n");printf("b)  Steinheil\n");printf("c)  Thai Magie\n");printf("d)  Beenden\n");printf("\n");printf("Bitte waehlen Sie eine Aktion aus: ");scanf(" %c", &antwort);if (antwort == 'a' || antwort == 'A') {printf("Es gibt Krautspaetzle. Verdauungsschlaf am Nachmittag.\n");}else if (antwort == 'b' || antwort == 'B'){printf("Grosses Schnitzel mit Bratkartoffeln.\n");}else if (antwort == 'c' || antwort == 'C'){printf("Menue 503. Es lebe die Mikrowelle.\n");}else if (antwort == 'd' || antwort == 'D'){break;}} }

for循环形式:

#include <stdio.h>int main()
{char antwort = 'd';for(;;){printf("\n");printf("Menue\n");printf("a)  Mensa Innenstadt\n");printf("b)  Steinheil\n");printf("c)  Thai Magie\n");printf("d)  Beenden\n");printf("\n");printf("Bitte waehlen Sie eine Aktion aus: ");scanf(" %c", &antwort);if (antwort == 'a' || antwort == 'A') {printf("Es gibt Krautspaetzle. Verdauungsschlaf am Nachmittag.\n");}else if (antwort == 'b' || antwort == 'B'){printf("Grosses Schnitzel mit Bratkartoffeln.\n");}else if (antwort == 'c' || antwort == 'C'){printf("Menue 503. Es lebe die Mikrowelle.\n");}else if (antwort == 'd' || antwort == 'D'){break;}} }

for、while、do while间转换_福祸无门的博客-CSDN博客_while改成do whilehttps://blog.csdn.net/zhoufeiy/article/details/54142478

【TUM-EI-Programmieren】 208 - while do-while相关推荐

  1. 【计算机领域均可投稿,确保EI检索】移动通信·信息科学热门会议即将到来!更有限时优惠等你来领!...

    会议官网:http://www.mcis5g2020.cn/ 会议时间:2020年6月26日-28日 会议地点:中国-广州 二轮截稿日期:2020年6月24日 收录检索:EI ,Scopus,CNKI ...

  2. 【LeetCode】【HOT】208. 实现 Trie (前缀树)

    [LeetCode][HOT]208. 实现 Trie (前缀树) 文章目录 [LeetCode][HOT]208. 实现 Trie (前缀树) package hot;public class So ...

  3. 计算机类ei期刊,【2017年整理】电子类通信类和计算机类EI期刊(大部分免费).docx...

    [2017年整理]电子类通信类和计算机类EI期刊(大部分免费),通信类ei期刊,通信类会议ei2016,电子类ei期刊,ei期刊推荐电子类,国家电网通信类笔试题,国家电网通信类待遇,通信类期刊,国家电 ...

  4. 【OpenCV 例程300篇】208. Photoshop 对比度自动调整算法

    OpenCV 例程200篇 总目录 [youcans 的 OpenCV 例程300篇]208. Photoshop 对比度自动调整算法 对比度是指图像中明暗区域最亮的白和最暗的黑之间不同亮度层级的测量 ...

  5. 【SCI\EI】英语论文中的常用字体是什么

    [SCI\EI]英语论文中的常用字体是什么 英语论文中所有英文的字体均采用"Times New Roman". 1.英文题目.摘要.关键词自成一页(1页即可),放在中文摘要页之后. ...

  6. 【TUM公开数据集RGBD-Benchmark工具evaluate_rpe.py参数用法原理解读】

    「零基础从零开始写VO视觉里程计」统计学.概率论.最小二乘.图优化(7-4) [TUM公开数据集RGBD-Benchmark工具associate.py参数用法原理解读] [TUM公开数据集RGBD- ...

  7. 【金黑凤凰】Windows 10 2H1 2004 Pro for Workstations 19041.208[32,64]叁模版

    [办公娱乐版]:流畅度说明: <中等提速>    保留项目: 打印,UAC,面部,指纹,Xbox游戏组件,设置同步,传真.商店,WMP媒体,Hype-V(安卓模拟器),红外设备,图像采集. ...

  8. 【跃迁之路】【495天】程序员高效学习方法论探索系列(实验阶段252-2018.06.15)...

    @(跃迁之路)专栏 实验说明 从2017.10.6起,开启这个系列,目标只有一个:探索新的学习方法,实现跃迁式成长 实验期2年(2017.10.06 - 2019.10.06) 我将以自己为实验对象. ...

  9. 【跃迁之路】【554天】程序员高效学习方法论探索系列(实验阶段311-2018.08.13)...

    @(跃迁之路)专栏 [跃迁之路]奖励金计划正式开始 从2018.7.1起,[跃迁之路]奖励金计划正式起航,从今以后,, 每月1日,我会将自己个人上月收入的1%计入[跃迁之路]奖励金池,积累到足够金额后 ...

  10. 【跃迁之路】【531天】程序员高效学习方法论探索系列(实验阶段288-2018.07.21)...

    @(跃迁之路)专栏 [跃迁之路]奖励金计划正式开始 从2018.7.1起,[跃迁之路]奖励金计划正式起航,从今以后,每月1日,我会将自己个人上月收入的1%计入[跃迁之路]奖励金池,积累到足够金额后,将 ...

最新文章

  1. 提交调用验证_干货丨RPA验证码识别技巧
  2. (08) 需求征集 -- 消息管理
  3. mybatis注解动态sql_超全MyBatis动态SQL详解
  4. Eclipse文件夹导入Jar
  5. python多版本控制操作方法
  6. 循环往数组中添加对象
  7. mysql 各种导入导出
  8. 命令行运行postman
  9. mysql-connector-odbc-5.3.12-win32.msi安装步骤
  10. Schedule定时器cron表达式
  11. 网络工程制图论文计算机,计算机工程制图教学的课业评价的论文
  12. 中国银行为房地产买家加入新区块链平台
  13. 计算机ps图片在哪里看,怎么看图片有没有PS 两种查看照片有没被PS过的方法-电脑教程...
  14. Java内存Happen-Before
  15. SaaSBase:什么是艾盟赢销SCRM?
  16. How to set the Default Page in ASP.NET?
  17. php文章cms插件,Phpcms v9百度神马后台勾选文章推送插件
  18. 网络工程师从入门到精通(学习总目录——持续更新)
  19. 查询快递最新状态php,PHP查询快递信息的方法
  20. Android使用viewpager实现图片轮播效果

热门文章

  1. im2bw函数的阈值level
  2. voc数据集和标签同时增强,增加下雪、下雨、加雾天气状况扩充数据集,附其他博主yolo和voc格式互相转换
  3. Ostu(大津法)二值化图像算法/最佳全局阈值
  4. qq 请使用常用设备或手机号登录
  5. android测试版微信7.0下载地址,微信 7.0.9 for Android 全新发布,低调公布64位测试版下载地址...
  6. 集中精神 专注于一件事情
  7. FTP服务搭建(ftpd、pure-ftpd、vsftpd)
  8. 写给千万考生的大学志愿报考指南
  9. SQL语句统计每天、每月、每年的销售总额
  10. 机器学习之KNN最邻近分类算法