天天看点

《C++游戏编程入门(第4版)》——2.4 使用带else子句的if语句序列include

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

c++游戏编程入门(第4版)

我们可以将带else子句的if语句连接起来,创建循序验证的表达式序列。第一个与验证为真的表达式关联的语句将被执行;否则,程序执行与最后的(可选)else子句关联的语句。下面给出这样一个序列的形式:

// score rater 3.0

// demonstrates if else-if else suite

using namespace std;

int main()

{

   int score;

   cout << "enter your score: ";

   cin >> score;

   if (score >= 1000)

   {

     cout << "you scored 1000 or more. impressive!n";

   }

   else if (score >= 500)

     cout << "you scored 500 or more. nice.n";

   else if (score >= 250)

     cout << "you scored 250 or more. decent.n";

   else

     cout << "you scored less than 250. nothing to brag about.n";

   return 0;

}<code>`</code>

《C++游戏编程入门(第4版)》——2.4 使用带else子句的if语句序列include

图2.4 根据用户的分数,显示多条消息中的某一条

我们已经两次见过该序列的开头部分,这次它的工作方式还是一样。如果score大于等于1000,则显示消息you scored 1000 or more. impressive!,然后程序跳转到return语句。

  <code>if (score &gt;= 1000)</code>

然而,如果该表达式为false,那么可以肯定score小于1000,程序计算序列的下一个表达式:

  <code>else if (score &gt;= 500)</code>

如果score大于等于500,则显示消息you scored 500 or more. nice!,然后程序跳转到return语句。然而,如果该表达式为false,那么可以肯定score小于500,程序计算序列的下一个表达式:

 <code>  else if (score &gt;= 250)</code>

如果score大于等于250,则显示消息you scored 250 or more. decent.,然后程序跳转到return语句。然而,如果该表达式为false,那么可以肯定score小于250,程序执行与最后的else子句关联的语句,显示消息you scored less than 250. nothing to brag about.。

提示

 虽然最后的else子句在if else-if组合中不是必需的,但我们可以在序列中没有表达式为真的情况下使用它来执行代码。

继续阅读