ch05-选择语句.pptVIP

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
broker.c 要求用户输入交易额,然后显示佣金数额: Enter value of trade: 30000 Commission: $166.00 /* Calculates a brokers commission */ #include stdio.h int main(void) { float commission, value; printf(Enter value of trade: ); scanf(%f, value); if (value 2500.00f) commission = 30.00f + .017f * value; else if (value 6250.00f) commission = 56.00f + .0066f * value; else if (value 20000.00f) commission = 76.00f + .0034f * value; else if (value 50000.00f) commission = 100.00f + .0022f * value; else if (value 500000.00f) commission = 155.00f + .0011f * value; else commission = 255.00f + .0009f * value; if (commission 39.00f) commission = 39.00f; printf(Commission: $%.2f\n, commission); return 0; } 5.2.4 悬空else问题 例子: if (y != 0) if (x != 0) result = x / y; else printf(Error: y is equal to 0\n); else和谁匹配?从缩进看,编程者想else和外层if匹配,实际是和内层匹配的。 if (y != 0) if (x != 0) result = x / y; else printf(Error: y is equal to 0\n); { } 5.2.5 条件表达式 条件运算符由符号?和符号∶组成。 表达式1?表达式2∶表达式3 要求三个操作数,称为三元运算符。 计算表达式1的值: 如果不为0,计算表达式2的值,为最后结果。 如果为0,计算表达式3的值,为最后结果。 例子 int i, j, k; i = 1; j = 2; k = i j ? i : j; /* k is now 2 */ k = (i = 0 ? i : 0) + j; /* k is now 3 */ 条件运算符的优先级,只比赋值运算符高,比其他的都低。 例子 例: If(ab) max=a; else max=b; 替换为:max=(ab)?a:b; 可以应用于return语句: return i j ? i : j; 可以应用于printf语句: printf(%d\n, i j ? i : j); 5.2.6 C89中的布尔值 C89没有定义布尔值类型。 可以定义一个int变量,赋值为0或1: int flag; flag = 0; … flag = 1; 为了程序更便于理解,可以定义宏: #define TRUE 1 #define FALSE 0 例子 使用上页的宏: flag = FALSE; … flag = TRUE; 判定flag为真 if (flag == TRUE) … 或:if (flag) … 判定flag为假 if (flag == FALSE) … 或:if (!flag) … 定义类型的宏 定义一个int型的宏: #define BOOL int 声明布尔型时就用BOOL代替int BOOL flag; 5.2.7 C99中的布尔值* C99中提供了 _Bool类型: _Bool flag; _Bool是一个整形值(无符号整形),只能赋值为 0或1。 往_Bool变量中存储非零值会使值变为 1: flag = 5; /* flag is assigned 1 */ C99中的布尔值 C99’提供了一个新头文件 stdbool.h,该文件提供了bool宏。 如果包括了 stdbool.h,我们可以这样写: bool flag; /* same as _Bool flag; */ stdbool.h头还提供了 true和false两个宏表示1和0: flag = false; … flag = true; 5.3 switc

您可能关注的文档

文档评论(0)

love + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档