C语言中的循环结构与选择结构
1. 为什么使用循环?
重复执行某段代码
2. while(条件){
循环体;
}
当条件成立的时候就执行循环体,条件不成立,就退出循环,继续执行while后面的语句
3. for ( 初始表达式 ; 条件 ; 表达式3){
循环体;
}
初始表达式只执行一次,然后判断条件是否成立 ,成立的话就执行循环体,然后再执行表达式3;当条件不成立的时候就退出循环。
4. break 可以中断循环
continue结束本次循环,继续判断条件是否成立,继续下一次循环
5. do {
循环体;
} while (条件);
1. 默认情况下,程序是顺序执行的
2. 我们程序员可以改变程序的执行顺序
3. 程序的基本结构有三种:顺序结构、选择结构、循环结构
4. 选择结构主要有两种:if...else 和switch
5. if(条件表达式) {
语句块
}
程序执行到if语句时,先判断条件表达式是否成立 ,如果成立,就执行语句块,如果不成立 ,就执行if语句后面的代码。
6. if(条件表达式) {
语句块1
} else {
语句块2
}
程序执行时,先判断条件表达式是否成立 ,如果成立 ,执行语句块1;如果不成立,就执行语句块2.
7. 多层if
if ( 条件表达式1 ) {
语句块1
} else if (条件表达式2) {
语句块2
} else if (条件表达式3) {
语句块3
} else {
语句块4
}
先判断条件表达式1,如果条件1成立,执行语句块1,执行完后,继续执行if语句后面的代码;
条件表达式1如果不成立的话, 再判断条件表达式2,如果成立,执行语句块2;如果不成立的话,再判断条件表达式3,如果条件3成立,执行语句块3,如果不成立,就执行语句块4.
8. if语句可以嵌套
if ( 条件1 ){
if (条件1.1){
} else {
}
}else {
if( 条件2.1) {
} else if (条件2.2) {
}
}
9. 建议,在使用if的时候,语句块都用 大括弧{} 括起来
10. switch语句,多分支选择语句
switch ( 表达式 ) {
case 值1 :
语句块1;
break;
case 值2 :
语句块2;
break;
case 值3 :
语句块3;
break;
default:
语句块n;
break;
}
10.1当表达式的值是一些离散值的时候,可以用switch结构进行选择
10.2 case后面的值不能重复
10.3 每个case后面都有一个break语句,可以跳出switch结构,如果case 值1:后面的语句块中没有break语句,程序会继续执行case值2,直到遇到break语句或者执行完switch结构。
10.4 default如果不是放在最后的话,也需要有break语句
10.5 case 没有先后顺序,即使default语句,也可以放在前面
10.6 switch结构也可以嵌套
11. 提醒大家,如果需要用户输入数据的时候,首先要判断用户输入数据的合法性,在进行用户输入数据合法性检查时,一般有两种处理方式:一是不合法的数据,直接返回,不往下执行了;第二方式是:设置一个标志,当用户输入不合法数据时,修改标志的值,再根据标志的值进行判断是否向下执行。
练习:输入一个字母,判断该字母对应的星期几,如果一个字母不能完全表示,要求输入第二个字母
作业0:输入一个月份,输出对应的季度,
如果输入12或者1或者2,输出冬天
作业1:输入一个时间,输出这个时间之后的一秒
输入:15:59:34
输出:15: 59:35
输入:23:59:59
输出:00:00:00
作业二:输入一个日期,输出当前日期是这一年的第几天
2016-3-3
输出: 63
1. 输入一个矩形的长和宽,输出矩形的面积
2. 输入一个圆的半径,输出圆的面积和周长
3.从键盘上输入三个数,输出其中最大数和最小数
4.从键盘上输入三个数,按从大到小排序输出
5.编写程序输入月份和日期,给出对应的星座。下面是星座计算表:
3月21日~4月20日 白羊
4月21日~5月20日 金牛
5月21日~6月20日 双子
6月21日~7月22日 巨蟹
7月23日~8月22日 狮子
8月23日~9月22日 处女
9月23日~10月22日 天秤
10月23日~11月22日 天蝎
11月23日~12月22日 人马
12月23日~1月20日 摩羯
1月21日~2月20日 宝瓶
2月21日~3月20日 双鱼
最新文章
- 构建自己的 Linux 发行版
- Spring JdbcTemplate 调用存储过程
- linux -- 基于mysql tomcat 部署web项目
- http协议读书笔记2-连接管理
- centos 输入密码正确进不去系统
- OpenStack: 安装准备
- 超过130个你需要了解的vim命令
- Set集合中的HashSet集合
- 九度OJ 题目1371:最小的K个数
- test for randomness
- OAuth和OpenID的区别(转)
- javascript 表达式和运算符 (二)
- 浅谈SQL优化入门:2、等值连接和EXPLAIN(MySQL)
- Hat's Fibonacci(大数加法+直接暴力)
- Visual Studio插件开发基础
- mysql常用操作(一)
- mysql log and lock
- ionic3使用cordova创建自定义插件
- Go语言规格说明书 之 Go语句(Go statements)
- plot绘图
热门文章
- spring 数据校验之Hibernate validation
- 使用Graphviz绘图(一)
- android实现无限轮播
- WebView的使用及添加进度条
- 代码与图详解性能之Python集合类型(list tuple dict set generator)
- 泛函编程(3)-认识Scala和泛函编程
- 容器--EnumMap
- android 网络通讯
- GJM :用JIRA管理你的项目(三)基于LDAP用户管理 [转载]
- .NET DLR 上的IronScheme 语言互操作&;&;IronScheme控制台输入中文的问题