《C++游戏编程入门(第4版)》——2.6 使用while循环

简介:

本节书摘来自异步社区出版社《C++游戏编程入门(第4版)》一书中的第2章,第2.6节,作者:【美】Michael Dawson(道森),更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.6 使用while循环

C++游戏编程入门(第4版)
只要表达式的值为true,那么while循环就可以重复执行部分代码。下面给出while循环的一般形式:

while (expression)
   statement;```
如果expression的值为false,则程序转到循环后面的语句。如果为true,则执行statement,然后再回过头来验证expression。整个过程一直重复到expression的值为false,然后循环结束。

###2.6.1 Play Again游戏简介
Play Again程序模拟了玩一个令人兴奋的游戏(“模拟了玩一个令人兴奋的游戏”是指程序显示了消息**Played an exciting game**)。程序询问用户是否还想玩该游戏。只要用户输入y,就可以继续玩这个游戏。程序通过while循环来实现重复。图2.6展示了正在运行的程序。

<div style="text-align: center">
 <img src="https://yqfile.alicdn.com/05aabe6646e51ea82398e080c06b86ef6df3513c.png" >
</div>


图2.6 通过while循环实现重复

从Cengage Learning网站(www.cengageptr.com/downloads)上可以下载到该程序的代码。程序位于Chapter 2文件夹中,文件名为play_again.cpp。

// Play Again

// Demonstrates while loops

include

using namespace std;

int main()
{
   char again = ’y’;
   while (again == ’y’)
   {
     cout << "nPlayed an exciting game";
     cout << "nDo you want to play again? (y/n): ";
     cin >> again;
   }
   cout << "nOkay, bye.";
   return 0;
}`

2.6.2 使用while循环

程序做的第一件事情就是在main()函数中声明名为again的char型变量,并将其初始化为'y'。然后,通过验证again是否为'y',程序开始while循环。因为again的值为y,程序显示消息Played an exciting game,然后询问用户是否还想继续玩,并将用户的回复存储在again中。只要用户输入y,循环就继续。

注意必须在循环之前初始化again,因为它用在了循环表达式中。因为while循环在循环体(一组重复执行的语句)之前计算表达式的值,所以必须确保循环开始前表达式中所有变量都有值。

本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接

相关文章
|
1月前
|
存储 分布式计算 编译器
C++入门基础2
本内容主要讲解C++中的引用、inline函数和nullptr。引用是变量的别名,与原变量共享内存,定义时需初始化且不可更改指向对象,适用于传参和返回值以提高效率;const引用可增强代码灵活性。Inline函数通过展开提高效率,但是否展开由编译器决定,不建议分离声明与定义。Nullptr用于指针赋空,取代C语言中的NULL。最后鼓励持续学习,精进技能,提升竞争力。
|
2月前
|
存储 缓存 C++
C++ 容器全面剖析:掌握 STL 的奥秘,从入门到高效编程
C++ 标准模板库(STL)提供了一组功能强大的容器类,用于存储和操作数据集合。不同的容器具有独特的特性和应用场景,因此选择合适的容器对于程序的性能和代码的可读性至关重要。对于刚接触 C++ 的开发者来说,了解这些容器的基础知识以及它们的特点是迈向高效编程的重要一步。本文将详细介绍 C++ 常用的容器,包括序列容器(`std::vector`、`std::array`、`std::list`、`std::deque`)、关联容器(`std::set`、`std::map`)和无序容器(`std::unordered_set`、`std::unordered_map`),全面解析它们的特点、用法
C++ 容器全面剖析:掌握 STL 的奥秘,从入门到高效编程
|
6月前
|
编译器 C++
C++入门12——详解多态1
C++入门12——详解多态1
85 2
C++入门12——详解多态1
|
6月前
|
C++
C++入门13——详解多态2
C++入门13——详解多态2
116 1
|
6月前
|
存储 安全 编译器
【C++打怪之路Lv1】-- 入门二级
【C++打怪之路Lv1】-- 入门二级
62 0
|
6月前
|
自然语言处理 编译器 C语言
【C++打怪之路Lv1】-- C++开篇(入门)
【C++打怪之路Lv1】-- C++开篇(入门)
70 0
|
6月前
|
分布式计算 Java 编译器
【C++入门(下)】—— 我与C++的不解之缘(二)
【C++入门(下)】—— 我与C++的不解之缘(二)
|
6月前
|
编译器 Linux C语言
【C++入门(上)】—— 我与C++的不解之缘(一)
【C++入门(上)】—— 我与C++的不解之缘(一)
|
6月前
|
编译器 C++
C++入门11——详解C++继承(菱形继承与虚拟继承)-2
C++入门11——详解C++继承(菱形继承与虚拟继承)-2
87 0

热门文章

最新文章