本节主要说c语言中的分支结构。

  c语言中分支结构有两大类:一种是if,一种是switch。

一、if结构

//if结构,语法:
//第一种:
if(表达式){
//语句块
} //第二种:
if(表达式){
//语句块
}else{
//语句块
} //第三种:
if(表达式){
//语句块
if(表达式){
//语句块
}else{
//语句块
}
}else{
//语句块
} //第四种
if(表达式){
//语句块
}else if(表达式1){
//语句块1
}else{
//语句块2
}
/*
if语句需要注意的地方:
1.if语句后面千万不要加分号,如果你非要手贱加一个分号,那么就加在大括号后面。
2.if语句的大括号,其实是可以省略的! 当你省略大括号的时候,那么if 语句只能管到离它最近的一句语句,但是这句语句不能是声明变量的语句。
3.if语句里面可以写任意条语句(必须要有大括号)。
4.非0的数就是真,0就是假,避免让你的表达式是永真或永假。
5.if语句里面定义的变量只能在它语句块里面访问。
6.if语句小括号里面的表达式可以写任意表达式。
*/

上面说了if结构,不过在某些时候可能觉得用 if 会显得代码块有点臃肿。下面介绍一种表达式。

二、三目表达式

//语法:
// 表达式1 ? 表达式2 : 表达式3 ;
//例如:
int num1 = ,num2 = ;
num1>num2?num1++:num2++;
printf(" num1= %d num2 = %d",num1,num2);
//输出 11,9

顺便介绍下获取随机数的函数,需要导入头文件,include <stdlib.h>

include <stdlib.h>
arc4random_uniform(u_int32_t);
//括号中填正整数,如果填n,则会随机生成0到n之间的数字,不包括n。

三、switch结构

//switch结构语法
switch(表达式){
case 常量表达式1:
//语句块
break;
.........
default:
printf("num = %d",num);
break;
}
//运行机制:先得出表达式的结果,根据结果跳转到对应的case里面去执行,如果没有对应的case,则会跳转到default中。
//如果case块后不加break,会发生穿透(从当前的case块执行完之后,进入下一个case块)。 /*
注意:
1、switch语句后的小括号里面只能写整数类型的表达式,否则会报错。
2、case后面只能接常量表达式且不能重复。
3、case后面不能紧跟着就声明变量,若要声明,请在声明之前加1条或者多条语句。
4、如果一定要直接声明变量,请在case块加上大括号。
5、如果不加大括号声明的变量,其他case块也可以使用;反之则不能使用
6、default语句可以写在switch块中任意位置,不影响程序执行。
*/

凡是能用if的地方,都可以用switch替换,反之,亦然。

c语言学习之基础知识点介绍(六):if和switch结构的更多相关文章

  1. c语言学习之基础知识点介绍(三):scanf函数

    本节继续介绍c语言的基础知识点. scanf函数:用来接收用户输入的数据. 语法:scanf("格式化控制符",地址列表); 取地址要用到取地址符:&(shift+7) 例 ...

  2. c语言学习之基础知识点介绍(二):格式化控制符和变量的补充

    上节简单介绍了c语言中的一些基础知识点,本节将对之前介绍的不够详细的知识点进行补充. 格式化控制符的消息介绍: %d的其他控制符: 1.%md:m代表这个整数位占用多少位,m是一个整数.实际数字不足的 ...

  3. c语言学习之基础知识点介绍(十六):文件操作

    一.文件的分类 1.文本文件:打开之后能看得懂的文件 2.二进制文件:打开之后看不懂,类似乱码之类的文件(视频,音频打开之后,能看.听,是应为电脑中装有播放器,播放器中含有解码器). 二.操作文件的步 ...

  4. c语言学习之基础知识点介绍(一):输出语句和变量简单介绍

    本系列是为了学习ios做准备的,也能作为c语言入门的教程看看. c语言的程序结构: 1.顺序结构:自上而下依次执行. 2.分支结构:程序有选择的执行某段代码或者不执行某段代码. 3.循环结构:程序循环 ...

  5. oc语言学习之基础知识点介绍(五):OC进阶

    一.点语法介绍 /* 以前封装后,要给属性赋值,必须调用方法 这样做,有两个缺点: 1.代码量多,调用方法要写的东西多. 2.看起来并不像是给属性赋值,也不像取值. 我们用点语法就可以更好的解决! 点 ...

  6. oc语言学习之基础知识点介绍(二):类和对象的进一步介绍

    一.类.对象在内存中的存储 /* 内存分区: 栈:局部变量 堆:程序员自己写代码申请开辟的 程序员自己维护,编译器现在帮我们自动优化了,它在合适的给我们加上了释放空间的语句,所以我们现在写的对象不会造 ...

  7. c语言学习之基础知识点介绍(十一):字符串的介绍、使用

    本节主要介绍c语言中的字符串的应用. 一:字符串介绍 因为c语言中没有像Java.C#那样的字符串类型,所以无法直接用字符串.需要借助数组来解决这个问题. /* 定义:把多个字符连在一起就叫字符串.但 ...

  8. c语言学习之基础知识点介绍(七):循环结构

    本节主要介绍循环结构 一.while循环 /* 语法: while(表达式){ //循环体; } 注意:循环变量.循环条件和循环控制语句三者缺一不可. 例如: */ ; //循环变量 ){ //循环条 ...

  9. c语言学习之基础知识点介绍(四):算术运算符和逗号表达式

    本节主要介绍c语言中运算符. 运算符主要分为四类: 1.算术运算符 加(+),减(-),乘(*),除(/),取余(%,两数相除,得到余数) 2.关系运算符 3.逻辑运算符 4.换位运算符 下面将依次介 ...

随机推荐

  1. easyui-lang-zh_CN.js导入后还是英文提示

    <script src="/js/easyUI1.3.3/jquery.easyui.min.js" type="text/javascript"> ...

  2. 使用Eclipse构建GeoTools项目

    转自:http://hi.baidu.com/liushuigs/item/a62969e6667f9815585dd8b1 由于GeoTools是原本是使用Maven构建的,所以,不能直接将工程导入 ...

  3. Bzoj 2393: Cirno的完美算数教室 容斥原理,深搜

    2393: Cirno的完美算数教室 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 287  Solved: 175[Submit][Status][ ...

  4. 《University Calculus》-chape6-定积分的应用-求体积

    定积分一个广泛的应用就是在求解一些“看似不规则”的几何体的体积,之所以说看似不规则,是因为不规则之下还是有一定的“规则性”可言的,我们就是需要抓住这些线索进行积分运算得到体积. 方法1:切片法. 这里 ...

  5. DIY常用网站

    工作: 技术: 学习: 个人十佳博客介绍:http://hedengcheng.com/?p=676

  6. Linux趣谈

    要解释操作系统是如何工作的,首先可以用这几个关键字来简单地概括一下:冯诺依曼.堆栈机制和中断机制. 提到冯诺依曼很显然就是在说存储程序了,这大概是计算机能够运行最为基础的条件,属于基石级别的.它的基本 ...

  7. c语言的label后面不能直接跟变量申明

    ; goto JUMP; printf("x is : %d\n",x); JUMP: ; <=== 错误,lable后面不能申明变量,只能是表达式语句(statement) ...

  8. Android Fragment 多标签应用

    1.使用Fragment 可以方便的替代TabActivity.ViewGroup 2.同时也省去了在AndroidManifest.xml文件中 添加相应的Activity 3.Fragment 是 ...

  9. 【python自动化第四篇:python入门进阶】

    今天的课程总结: 装饰器 迭代器&生成器 json&pickle实现数据的序列化 软件目录结构规范 一.装饰器 装饰器的本质是函数,起目的就是用来为其它函数增加附加功能 原则:不能修改 ...

  10. JavaScript网站设计实践(七)编写最后一个页面 改进表单

    一.最后一个页面 contact.html.改进表单 在该页面实现的功能: 几乎所有的网站都会有表单填写,对于用户输入和填写的数据,首先我们一般现在前台验证,然后再去后台验证. 在前台最简单的验证:检 ...