C++ Primer快速入门之三:几种常见的控制语句
来源:互联网 发布:蓝月传奇装备附灵数据 编辑:程序博客网 时间:2024/06/08 18:28
语句总是顺序执行的:第一条语句执行完了接着是第二条,第三条等等。这是最简单的情况,为了更好的控制语句的运行,程序设计语言提供了多种控制结构支持更为复杂的语句执行。我们就来看看C++ 提供的控制方式。
一、 while 语句
while 语句提供了循环执行功能。可以用 while 语句编写一个好玩的从 1 到 5(包括 5)的数数游戏:1+2+3+4+5
#include <iostream>
int main() {
int game_num= 0, val = 1;
//继续执行,直到value大于5:
while (val <= 5) {
// game_num + val 之后塞给game_num:
game_num += val;
++ val; // val加1
}
std::cout << "1到5这5个数的总和是:" << game_num<< std::endl;
return 0;
}
编译并执行后,将输出:
1到5这5个数的总和是: 15
怎么样?while的结构是不是很easy?既简单又强大!
二、 for语句
for语句的出现是因为while语句有缺点: while 循环使用变量来控制循环执行次数。每次执行 while 语句,都要看看变量的值,执行循环体,然后再改变变量的值,再检查变量值,周而复始。
因为总是靠函数体中改变变量值来控制循环,有些麻烦。 C++ 语言定义了第二 种控制结构:for 语句,她简化了循环变量的控制逻辑,看看同样是上例中俺的例子:
#include <iostream>
int main() {
int game_num = 0;
for (int val = 1; val <= 5; ++val)
game_num += val;
std::cout << "1到5这5个数的总和是:" << game_num<< std::endl;
return 0;
}
看出来了没有?for 语句脑袋由三部分组成:一个初始化,一个条件,一个表达式。 在这个例子中,初始化语句是:
int val = 1;
初始化语句仅在进入 for 语句时执行一次。
条件: val <= 10
表达式: ++ val
总结一下这哥仨的用处:
1. 初始化val 为 1。
2. 测试 val 是否小于或等于 5。
3. 如果 val 小于或等于 5,则执行 for 循环体,把 val 加到 game_sum 中。 如果 val 大于 5,就退出循环,接着执行 for 语句体后的第一条语句。
4. val 加1。
5. 重复第 2 步,只要条件为真,就继续执行for的循环体
好玩吧?简单吧?这两种结构都很有用,是最普通的控制结构。大家一定要掌握哟 ^_^
本文属原创,转载请注明出处,并标记下面内容,谢谢!
关注微信公众号:程序员互动联盟(coder_online)
- 编程新手输入数字 12345 获取QQ群。加入兴趣小组,让老鸟带你入门。
- 编程老鸟输入数字 2 让我们一起畅聊技术。
更有(java/C/C++/Linux/Android)高手帮你解决难题,和你互动,讨论编程未来。
长按二维码识别关注程序员互动联盟
关注后和技术大牛做朋友,还不赶快来!
声明:本文使用的图片部分来自网络
想要阅读更多高手原创技术文章,点击“阅读原文”
- C++ Primer快速入门之三:几种常见的控制语句
- c++Primer学习笔记之三:c++快速入门_2
- Ruby快速入门(三):控制语句
- Ruby快速入门(三):控制语句
- 《C++Primer》 第一章 快速入门
- c++Primer,一,快速入门
- c++Primer学习笔记之二:c++快速入门_1
- C++primer之格式控制.
- 几种控制语句
- C++ Primer快速入门之五:实用的模板库
- C++Primer学习笔记一:快速入门
- C++Primer学习笔记-----第一章(快速入门)
- C++Primer笔记 第一章 快速入门
- C语言入门之流程控制语句及运算符号
- 常见的流程控制语句
- 三种常见的SQL插入语句
- Java的三种跳出控制语句
- lua学习笔记之三(C/C++程序员的Lua快速入门[高阶话题])
- 四大开源协议比较:BSD、Apache、GPL、LGPL
- Linux中验证CPU架构模式及变量类型段的查找
- object - c 坐标系统
- 关于联合体union的详细解释
- Linux安装jdk8以及环境变量配置
- C++ Primer快速入门之三:几种常见的控制语句
- 5-1
- 大批量数据导入mysql数据库使用工具
- 处理xml必读
- 架构修练二:架构师成长之路(整理网络查到的资料)
- FlashFXP连接虚拟机中centos
- Android 增强版百分比布局库 为了适配而扩展
- 最长回文子串 - Manacher算法
- Java基础09——I/O流<二>