C++ Primer快速入门之三:几种常见的控制语句

语句总是顺序执行的:第一条语句执行完了接着是第二条,第三条等等。这是最简单的情况,为了更好的控制语句的运行,程序设计语言提供了多种控制结构支持更为复杂的语句执行。我们就来看看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)高手帮你解决难题,和你互动,讨论编程未来。

长按二维码识别关注程序员互动联盟

关注后和技术大牛做朋友,还不赶快来!

声明:本文使用的图片部分来自网络

想要阅读更多高手原创技术文章,点击“阅读原文

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-03 03:28:00

C++ Primer快速入门之三:几种常见的控制语句的相关文章

Kotlin入门(20)几种常见的对话框

提醒对话框手机上的App极大地方便了人们的生活,很多业务只需用户拇指一点即可轻松办理,然而这也带来了一定的风险,因为有时候用户并非真的想这么做,只是不小心点了一下而已,如果App不做任何提示的话,继续吭哧吭哧兀自办完业务,比如转错钱了.误删资料了,往往令用户追悔莫及.所以对于部分关键业务,App为了避免用户的误操作,很有必要弹出消息对话框,提醒用户是否真的要进行此项操作.这个提醒对话框便是App开发常见的AlertDialog,说起这个AlertDialog,安卓开发者都有所耳闻,该对话框不外乎

C++ Primer快速入门之五:实用的模板库

更新:重新排版代码格式 除上篇博客介绍的基本数据类型外,C++ 还定义了一个内容丰富的抽象数据类 型标准库.包括 string 和 vector,它们分别定义了字符串和矢量(集合).string 和 vector 往往用迭代器iterator访问 string 中的字符,或者 vector 中的元素. 另一种标准库类型 bitset,她提供了一些方法的集合,我们可以利用这些方法来像C语言那样控制整数的二进制表示的一个个比特位,比如01110101,我们可以利用bitset里提供的操作符来做与或非

C++ Primer快速入门之四:变量和数据类型

1 数据类型 数据类型顾名思义,表明数据是啥,就像我们处理问题时候,面对的对象是骡子是马,还是小麦,男人女生,类型的属性规定了可以对数据执行哪些操作. C++ 语言定义了几种基本类型:字符型.整型.浮点型等,以及一些高级类型比如vector,map等等. 类型确定了数据和操作在程序中的意义.我们在第一章已经看到,如下的语句: i = i + j; 不同的类型有不同的含义,他们由 i 和 j 的类型共同决定.如果 i 和 j 都是整型, 则这条语句表示一般的算术"+"运算:如果 i 和

C++ Primer快速入门之六:数组和指针

更新:勘误,delete [] 猪 我们知道,C语言以及早期的面向结构的语言几乎都支持数组定义,比如整形数组int 女神[2],表示有俩数: 女神[0], 女神[1],她们都是整数.C++ 语言为了效率和兼容考虑,也支持这个.当然了,毕竟是别人家的孩子(标准),并不提供类似于 vector 和迭代器类型那些神奇的能力.与 vector的区别在于,数组的长度是固定的.另外呢,指 针还是那个指针,没有变化. ? 我们编程时候,尽量使用 vector,避免使用数组和指针.有了vector和她的iter

C++ Primer Study Note 系列[1]-chapter1快速入门

I want to study it all the time , and now I am ready to study this book in the next mouth. Time : 2014/07/02 先看一个程序体验一下: #include <iostream> int main() {     /*This is a test example*/     std::cout << "Enter two numbers:" << s

C++ Primer(第五版)学习笔记_1_标准模板库--快速入门

C++ Primer(第五版)学习笔记_1_标准模板库--快速入门 欢迎大家阅读参考,如有错误或疑问请留言纠正,谢谢 标准模板库(STL)提供三种类型的组件:容器.迭代器和算法,他们都支持泛型程序设计标准. 容器主要有两类:顺序容器和关联容器.顺序容器(vector.list.deque和string等)是一系列元素的有序集合.关联容器(set.multiset.map和multimap)包含查找元素的键值. 迭代器的作用是遍历容器. STL算法库包含四类算法:排序算法.不可变序算法.变序性算法

图像处理之三种常见双立方插值算法

http://blog.csdn.net/jia20003/article/details/40020775 图像处理之三种常见双立方插值算法 双立方插值计算涉及到16个像素点,其中(i', j')表示待计算像素点在源图像中的包含 小数部分的像素坐标,dx表示X方向的小数坐标,dy表示Y方向的小数坐标.具体 可以看下图: 根据上述图示与双立方插值的数学表达式可以看出,双立方插值本质上图像16个像素点 权重卷积之和作为新的像素值. 其中R(x)表示插值表达式,可以根据需要选择的表达式不同.常见有基

c++primer (1)快速入门

一.快速入门 //main函数是唯一一个被操作系统显式调用的函数. 标准出入:cin 标准输出:cout 输入(>)输出(<)操作符的左操作数是io stream对象,右操作数是要输出的值,输出操作是将右操作数写到作为左操作数的ostream,而输入操作是接受istream对象作为左操作数,接受一个对象作为右操作数,从istream操作数读取数据并保存到右操作数中. 输入输出表达式结果都是左操作数的值,也就是说输入输出操作返回的是输出输入流本身.也就是为什么可以将输出输入请求序列合并成单个语句

C++ Primer 学习笔记_1_快速入门

 C++快速入门 --这个月的第一篇博客,献给我最爱的C++程序设计语言! 一.编写简单的C++程序 [cpp] view plaincopyprint? //main函数是唯一一个被操作系统显式调用的函数. int main() { /* *该返回值作为状态指示器,需要返回给操作系统! *以echo $?命令可以查看该返回值 *通常非零返回值表示有错误出现,由操作系统定义 */ return 0; } //main函数是唯一一个被操作系统显式调用的函数. int main() { /* *