【C疯狂的教材】(四)C语言分支语句
1、程序的结构
程序默认从上到下顺序运行(顺序结构)
程序的结构:顺序结构、分支结构、循环结构
2、if分支语句
程序运行的过程中能够有多个选择
格式:
if(表达式){
语句块;
}
......
进行表达式的求值:假设表达式的值为非0(真)
会运行语句块
0 (假)
不会运行语句块,
3、if分支语句的几种形式
1)最简单的,要不运行,要不是不运行
if(表达式){
语句块;
}
2)if.....else......
if(表达式){
语句块1;
}else{
语句块2;
}
进行表达式的求值:假设表达式的值为(真)
会运行语句块1
0 (假)
会运行语句块2
注意:语句块1和语句2仅仅可能被运行一次
3)if...else...的嵌套问题
if(表达式1){
if(表达式2){ //表达式1值为1,而且表达式2值为1
语句块1。
}else{
语句块2。 //表达式1值为1。可是表达式2的值为0
}
}else{
语句块3; //表达式1为0的时候
}
4)if..... else if ......else....
if(表达式1){
语句块1; //表达式1为真
}else if(表达式2){
语句块2; //当表达式1不成立,可是表达式2成立
}else{
语句块3。 //当表达式1和表达式2都不成立的时候
}
4、if注意点
1)if(1)、if(-1)、if(a=5)
永真式 if(0)
永假
2)if(表达式);
表示推断完了什么都不做
3) if(表达式) return 0; //程序退出。代码不会再往下运行了
4) if(表达式){int num=10;} printf("%d",num);(错误的)
5)if(表达式) int num=10; (作用域紊乱)
5、switch分支语句
也是用于条件推断。当表达是的结果有多种情况,用switch比較方便一些
格式:
switch(表达式){
case 整型常量或者字符常量:
语句;
.....
default:
//假设上面的条件都不满足。运行default
}
计算表达式的值,用这个值和case后的常量进行比較,假设这个值等于了某个常量值,会运行case相应的分支语句。遇到break;才结束。假设没有遇到break。程序一直会往下运行。直到switch语句结束
6、switch的注意点
1)switch(表达式)
表达式:返回值是整型
2)case
常量 常量:必须是整型的
。不能是flaoat cast 2.3:
能够放常量表达式。可是不同意:a+3
3) 作用域的问题
case 3: {
int num=-1;
}
case 4:printf("%d\n",num); 不同意的
4)case分之语句能够有多句。能够使用大括号,也能够不使用
5)作用域紊乱的问题: case 4:int a=4; (不正确)
版权声明:本文博主原创文章,博客,未经同意不得转载。
【C疯狂的教材】(四)C语言分支语句的更多相关文章
- C/C++知识总结 四 循环与分支语句
C/C++循环与分支语句 循环与分支语句的意义 关系运算符.逻辑运算符 for循环和嵌套for循环(基于范围for循环) while循环与do while循环 分支if语句.if else语句.if ...
- 实验3 C语言分支语句和循环语句编程应用(友好猜日期^_^)
实验任务一 #include <stdio.h> #include <math.h> int main(){ float a, b, c, x1, x2; float delt ...
- [SQL]SQL语言入门级教材_SQL语言基本语句介绍(四)
SQL语言基本语句介绍 • 表的建立 关系数据库的主要特点之一就是用表的方式组织数据.表是SQL语言存放数据.查找数据以及更新数据的基本数据结构.在SQL语言中,表有严格的定义,它是一种二维表,对于这 ...
- iOS学习之C语言分支结构
一.BOOL类型 返回值:真:YES 假:NO 定义一个布尔类型的变量 YES == 1, NO == 0 计算机在识别时,YES就替换成1,NO就替换成0 BOOL isGirl = YES; ...
- C语言入门(10)——if分支语句
在我们写的函数中可以有多条语句,但这些语句总是从前到后顺序执行的.除了从前到后顺序执行之外,有时候我们需要检查一个条件,然后根据检查的结果执行不同的后续代码,在C语言中可以用分支语句实现,比如: if ...
- iOS学习02C语言分支结构
1. BOOL类型 返回值:真:YES 假:NO BOOL数据类型占一个字节的内存空间,占位符为%d. 计算机在识别时,YES就替换成1,NO就替换成0. bool是C语言中的布尔类型,返回值为tr ...
- SQL的四种语言和数据库范式
1. SQL的四种语言 DDL(Data Definition Language)数据库定义语言 CREATE ALTER DROP TRUNCATE COMMENT RENAME DML(Data ...
- JavaSE教程-03Java中分支语句与四种进制转换
一.分支语句 计算机源于生活,程序模拟现实生活,从而服务生活 行为模式 1,起床,刷牙,洗脸,吃早餐,上课,回家,睡觉(顺序性) 2,如果时间不太够,打个滴滴快车,如果时间够,坐个地铁(选择性) 3, ...
- 一、变量.二、过滤器(filter).三、标签(tag).四、条件分支tag.五、迭代器tag.六、自定义过滤器与标签.七、全系统过滤器(了解)
一.变量 ''' 1.视图函数可以通过两种方式将变量传递给模板页面 -- render(request, 'test_page.html', {'变量key1': '变量值1', ..., '变量ke ...
随机推荐
- Android编程之LayoutInflater的inflate方法实例
假设你不关心其内部实现,仅仅看怎样使用的话,直接看这篇就可以. 接上篇,接下来,就用最最简单的样例来说明一下: 用两个布局文件main 和 test: 当中,main.xml文件为: <?xml ...
- SVN 右下角各种符号
黄色感叹号(有冲突): --这是有冲突了,冲突就是说你对某个文件进行了修改,别人也对这个文件进行了修改,别人抢在你提交之前先提交了,这时你再提交就会被提示发生冲突,而不 允许你提交,防止你的提交覆盖了 ...
- TCP header
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3Vzc2VyNDM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...
- ZOJ 3795 Grouping 求最长链序列露点拓扑
意甲冠军:特定n积分.m向边条. 该点被划分成多个集合随机的每个集合,使得2问题的关键是无法访问(集合只能容纳一个点) 问至少需要被分成几个集合. 假设没有戒指,接着这个话题正在寻求产业链最长的一个有 ...
- 使用ToggleButton和StackPanel+Border实现圆角开关按钮动画效果
<ToggleButton Height=" HorizontalAlignment="Left" Margin="138,122,0,0" N ...
- Connecting Docker for Cloud Services using SDN and Network Virtualization
Abstract The explosive scale of container CPUs needs highly efficient network virtualization Chal ...
- 开源 自由 java CMS - FreeCMS1.8 网上申报
项目地址:http://code.google.com/p/freecms/ 在线申报 1. 转交申报 用户能够把申报转交给其它人办理,系统会记录此申报的转交记录. 注意:同一时候仅仅能转交一个申报. ...
- 【UFLDL】多层神经网络
请参见原始英文教程地址:http://ufldl.stanford.edu/tutorial/supervised/MultiLayerNeuralNetworks 本文是在学习该教程时记得笔记,供參 ...
- Android 调试native的crash和anr
1. 于trace找到相应的库.例如 liba.so和相应的地址信息 2. 采用addr2line 查看 addr2line 住址 -e liba.so -f 要么 arm-eabi-addr2lin ...
- MVC模型与FishiGUI应用层MVC型号
MVC概要: MVC (Modal View Controler)M是指数据模型,V是指用户界面,C则是控制器. 使用MVC的目的是将M和V的实现代码分离,从而使同一个程序能够使用不同的表现形式.比方 ...