c++第三十天
P154~p159:
语句
1、通常情况下顺序执行。
2、C++提供一组控制流(flow-of-control)语句以支持更复杂的执行路径。
3、空语句的作用:语法上需要一条语句,但是逻辑上不需要。
while(val <= ) {
; // 空语句
}
注意:使用空语句时加上注释,提高可读性。
4、复合语句的作用:语法上需要一条语句,但是逻辑上需要多条语句。
ps:复合语句也被叫做块(block),一个块就是一个作用域。
语句作用域
if语句
1、C++规定:else与离它最近的尚未匹配的if匹配。
练习 5.1
见上文
练习 5.2
见上文
练习 5.3
可读性降低。
#include<iostream>
int main()
{
int sum = , val = ;
while(val <= ) sum += val, ++val;
std::cout << sum << std::endl;
return ;
}
练习 5.4
a iter没有初始化
b status应该定义在语句外部
练习 5.5
#include<iostream>
#include<vector>
#include<string>
using std::vector;
using std::string;
int main()
{
const vector<string> scores = {"f", "d", "c", "b", "a", "a++"};
string lettergrade;
int grade;
std::cin >> grade;
if (grade < ) {
lettergrade = scores[]; // vector支持下标访问
} else {
lettergrade = scores[(grade - )/];
if (grade != ) {
if (grade % > ) {
lettergrade += '+';
} else if (grade % < ) {
lettergrade += '-';
}
}
}
std::cout << lettergrade << std::endl;
return ;
}
练习 5.6
#include<iostream>
#include<vector>
#include<string>
using std::vector;
using std::string;
int main()
{
const vector<string> scores = {"f", "d", "c", "b", "a", "a++"};
string lettergrade;
int grade;
std::cin >> grade;
lettergrade = (grade < ) ? scores[] : (grade == ) ? scores[(grade - )/] : (grade % > ) ? scores[(grade - )/] + "+" : (grade % < ) ? scores[(grade - )/] + "-" : scores[(grade - )/];
std::cout << lettergrade << std::endl;
return ;
}
练习 5.7
a 少了分号
b 缺少花括号
c ival要在括号外面定义
d ival未定义。(。。。)
练习 5.8
书上有。else与离它最近的尚未匹配的if匹配。
c++第三十天的更多相关文章
- Bootstrap <基础三十二>模态框(Modal)插件
模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等. 如果您想要单独引用该插件的功能,那么您需要引用 ...
- Bootstrap <基础三十>Well
Well 是一种会引起内容凹陷显示或插图效果的容器 <div>.为了创建 Well,只需要简单地把内容放在带有 class .well 的 <div> 中即可.下面的实例演示了 ...
- Web 开发人员和设计师必读文章推荐【系列三十】
<Web 前端开发精华文章推荐>2014年第9期(总第30期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...
- SQLServer DBA 三十问(加强版)
距离最初发布SQLServer DBA 三十问 已有一年多了,大家对其中的某些问题讨论比较激烈,要回答出来这些问题需要比较扎实的SQLServer 基础和一定的实际操作经验,如果你试着去回答其中的问题 ...
- 学习之路三十九:新手学习 - Windows API
来到了新公司,一开始就要做个程序去获取另外一个程序里的数据,哇,挑战性很大. 经过两周的学习,终于搞定,主要还是对Windows API有了更多的了解. 文中所有的消息常量,API,结构体都整理出来了 ...
- 程序员编程艺术第三十六~三十七章、搜索智能提示suggestion,附近点搜索
第三十六~三十七章.搜索智能提示suggestion,附近地点搜索 作者:July.致谢:caopengcs.胡果果.时间:二零一三年九月七日. 题记 写博的近三年,整理了太多太多的笔试面试题,如微软 ...
- 自学 iOS – 三十天三十个 Swift 项目
自学 iOS – 三十天三十个 Swift 项目 github源码地址:https://github.com/allenwong/30DaysofSwift
- COJ966 WZJ的数据结构(负三十四)
WZJ的数据结构(负三十四) 难度级别:C: 运行时间限制:20000ms: 运行空间限制:262144KB: 代码长度限制:2000000B 试题描述 给一棵n个节点的树,请对于形如"u ...
- COJ970 WZJ的数据结构(负三十)
WZJ的数据结构(负三十) 难度级别:D: 运行时间限制:1000ms: 运行空间限制:262144KB: 代码长度限制:2000000B 试题描述 给你一棵N个点的无根树,点和边上均有权值.请你设计 ...
- COJ968 WZJ的数据结构(负三十二)
WZJ的数据结构(负三十二) 难度级别:D: 运行时间限制:5000ms: 运行空间限制:262144KB: 代码长度限制:2000000B 试题描述 给你一棵N个点的无根树,边上均有权值,每个点上有 ...
随机推荐
- 一次Win10安装体验
我下载的是win10 Build 14279版本.http://www.iwin10.com/xiazai/1071.html 下载之后就直接拷到U盘安装了. 安装完之后发现(因为我是分区成了两个)我 ...
- php应该在何时调用mysql_close() ,可能和中断请求有关
关于php应该在何时调用mysql_close()以及pconnect方式和传统方式有何种区别收藏 以前我一直认为,当php的页面执行结束时,会自动释放掉一切.相信很多人都跟我想的一样.但事实证明并不 ...
- Android英文文档翻译系列(4)——PopupWindow
public class PopupWindow extends Object //直接继承至Object java.lang.Object ↳ android.widget.PopupWindow ...
- Compass(更新中。。。)
compass Compass是Sass的工具库,就好像jQuery是js的库一样. sass有了compass的配合,就会更加事半功倍. Sass本身只是一个编译器,Compass在它的基础上,封装 ...
- LeetCode——First Bad Version
Description: You are a product manager and currently leading a team to develop a new product. Unfort ...
- Dockerfile分享之SSH Server
版权声明:本文由姚俊刚原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/84 来源:腾云阁 https://www.qclou ...
- 【APIO2016】Fireworks[DP 可并堆维护凸包优化]
4585: [Apio2016]烟火表演 Time Limit: 40 Sec Memory Limit: 256 MBSubmit: 100 Solved: 66[Submit][Status] ...
- 【Mac】Docker安装及基础使用
Docker 安装 在 Mac OS X 系统中,首先你要下载安装包安装:Docker Toolbox 安装过程中,可以选择是否安装 Docker Machine,Docker Compose 等,默 ...
- ios 在UIView上画图,线条
1.画线条(实线,虚线) - (void)drawRect:(CGRect)rect { CGContextRef context = UIGraphicsGetCurrentContext( ...
- 170619、springboot编程之HelloWorld
springboot资料看了一段时间了,个人觉得开发效率相当高,也参考了网上很多大牛的技术博客,在这里面我也记录一下,方便以后自己翻阅查看,同时也给新手最一点点指引.如果有侵权大牛博客文章,请告诉我, ...