while 语句和 do...while 语句|学习笔记

简介: 快速学习 while 语句和 do...while 语句

开发者学堂课程【你的第一门 C 语言课 while 语句和 do...while 语句】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/444/detail/5463


while 语句和  do...while 语句


一、循环结构

1. while 语句

while(表达式)

循环体

实例1:计算1+2+3+…+100的结果

流程图如下:

图片2.png

例子:计算1+2+3+……+100结果

图片3.png

代码演示:

int main()

{

int i=1,sum=0;

while (i <= 100)

{

sum = sum+ i;

i =i + 1;

}

print("结果是:%d\n", sum) ;

return 0;

}

执行结果如下:

[fishc@localhost sle13]$ vi test1.c

[ fishc@localhost sle13is gcc testl.c && ./ a.out

结果是:5050

实例2:统计从键盘上输入一行英文句子的字符个数。

流程图如下:

图片4.png

2.文档函数查看:

getchar 的数文档

函数概要:

getchar 函数从标性的入流( stdin ) 中获取下—个字符。

相当于国用 getcKstcin) EG 遗文。

函数原型:

#include

Int getchar()(void);

复制代码

返回值:

如里函数调用成功,返回获取的字符(用整型表示其 ASCII 码).

版回值里是 EOF。

表示该函数调用失败:

如果标准输入流位于处于结束的位置,该函数返回 EOF,并设置标准输入流的结束标志符

如用出现其他错误,该函数同样返回 EOF,并设置错误标志符代替。

代码演示:

#include

int main( )

{

int count = 0;

printf(“请输入一行英文字符:”);

while (getchar( ) != ' \n ' )

{

count = count + 1;

}

printf("你总共输入了%d个字符!\n", count);

return 0;

}

代码执行结果如下:

[ fishc@localhost sle13]$ gcc test2.c && ./a.out

请输入一行英文字符:I love FishC.com !

你总共输入了17个字符!

3. do…whlie语句

do

循环体

while(表达式);

流程图:

图片5.png

验证用户密码(while)和(do…while)区别的流程图:

 图片6.png图片7.png

while(表达式);的分号 是比较重要的,表示一个语句结束

相关文章
|
传感器 编解码 IDE
ESP32开发板引脚介绍【附有引脚使用实例】
ESP32开发板引脚介绍👨‍🏫内容1:背景👨‍⚖️内容2:限制类引脚👨‍💻内容3:ESP32 周边设备🍉文末备注 👨‍🏫。
ESP32开发板引脚介绍【附有引脚使用实例】
|
Ubuntu Linux Windows
linux(三十七)远程管理命令reboot和shutdown
linux(三十七)远程管理命令reboot和shutdown
476 0
|
测试技术 uml 数据安全/隐私保护
UML图——用例图
用例图是由参与者(Actor)、用例(Use Case)以及用它们之间的关系构成的用于描述系统静态视图的UML图(本定义摘自百度百科)。用例图能够展示系统外部的各类执行者与系统中用例的关系。
UML图——用例图
|
存储 缓存 JSON
微信小程序使用本地存储方法
微信小程序使用本地存储方法
764 1
|
存储 Linux 索引
Linux 下最主流的文件系统格式——ext
【9月更文挑战第8天】硬盘被划分为若干相同大小的块(Block),默认大小为4K,便于灵活管理文件数据。文件数据分散存放于这些块中,提高了数据添加、删除和插入的便利性。
|
安全 Linux 调度
在Linux中, 用户和组的概念是什么?作用分别是什么?
在Linux中, 用户和组的概念是什么?作用分别是什么?
|
Ubuntu Oracle 关系型数据库
Linux操作系统最著名的两大系列Red Hat和Debian
Linux操作系统最著名的两大系列Red Hat和Debian
|
Java 测试技术
[软件自动化测试] selenium java环境配置
介绍了包括选择Gradle构建,关闭Gradle Wrapper的默认下载,修改`gradle-wrapper.properties`以使用腾讯云镜像,以及更新`build.gradle`文件添加国内仓库和Selenium依赖。在测试驱动部分,创建了一个简单的JUnit测试用例,展示了如何初始化Edge浏览器并访问网站。运行测试时可能出现关于CDP版本不匹配的警告,可以通过升级Selenium依赖中的CDP版本来解决。推荐根据[Selenium库网页](https://search.maven.org/search?q=g:org.seleniumhq.selenium)提供的版本信息进行升级
2126 6
|
XML 存储 网络协议
/etc/netplan/network-manager-all.yaml 配置服务器ip
/etc/netplan/network-manager-all.yaml 配置服务器ip
952 0
|
JavaScript 关系型数据库 MySQL
❤Nodejs 第三章(操作本地数据库增改查)
【4月更文挑战第3天】该文档介绍了使用Node.js和Express操作本地数据库的增删改查操作。首先,概述了RESTful API的四个基本方法:GET、PUT、DELETE和POST。然后,展示了如何查询用户列表,通过axios发送GET请求,遇到跨域问题后,在app.js中设置允许跨域。接着,添加了POST方法来新增用户,并展示了MySQL的INSERT语句。
274 5