嵌套的复杂的语句

上面的程序,介绍了一种潜在歧义源称为晃来晃去的其他问题。为配合外或内如果声明上述程序的else语句?

答案是,else语句搭配上无与伦比的如果在同一个语句块。因此,在上面的程序,其他配合内如果语句。

为了避免这种歧义时,嵌套的复杂的语句,它将语句块内通常是一个好主意。这是上面的程序写的无歧义:

#包含iostream > <

国际main()

{

使用std命名空间;

cout <<“输入一个号码:”;

int NX;

{

如果(NX<20)

cout << NX <<”之间的10和20“<< endl;

其他/ /连接到内如果语句

cout << NX <<“大于20”<< endl;

}

返回0;

}

现在是很清晰,else语句属于内如果语句。

包裹内如果一个语句块也允许我们明确地附加其他外部IF语句:

#包含iostream > <

国际main()

国际main()

{

使用std命名空间;

cout <<“输入一个号码:”;

int NX;

CIN > > NX;

如果(NX > 10)

{

如果(NX<20)

cout << NX <<”之间的10和20“<< endl;

}

其他/ /连接到外部IF语句

其他/ /连接到外部IF语句

cout << NX <<“小于10”<< endl;

返回0;

}

一块使用告诉编译器,else语句应重视如果在语句块。无块,else语句将附加到最近的不匹配的if语句,将内如果语句。

如果报表通常用来做错误检查。例如,计算平方根,传递到平方根函数的值应该是一个非负整数:

#包含iostream > <

#包括< cmath > / / sqrt()

无效的printsqrt(双值)

{

使用std命名空间;

如果(值> = 0)

cout <<“平方根”<<值<<”是“<< sqrt(值)<< endl;

其他的

cout <<“错误:”<<值<<“负面”<< endl;

}

如果报表也可以用来做早期的回报,在一个函数返回控制函数的末尾之前打电话。下面的程序中,如果参数值是负的,该函数返回一个符号常量或枚举值的误差给调用者的代码吧。

国际docalculation(int值)

{

/如果值是一个负数

如果(N值<0)

/ /早返回一个错误代码

返回error_negative_number;

/ /做计算值在这里

返回值;

}

如果报表也常被用来做简单的数学计算功能,如min()或max()函数返回它的参数的最大值或最小值:

(int,int int min NX,纽约)

{

如果(NX >纽约)

回纽约;

其他的

返回NX;

}

请注意,这最后一个功能是如此简单,它也可以写成如果操作员使用的算法(?:):

(int,int int min NX,纽约)

{

返回NX >纽约?纽约:nx;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值