本节主要说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. .net(C#)访问Oracle数据库的几种免安装组件的对比(转)

    原文地址 [内容为转载,个人推荐还是用官方的组件,推荐使用 Oracle.DataAccess.dll ] .net(C#)编程过程中,使用到了以下三种免安装的Oracle访问组件,能够不安装Orac ...

  2. 《C语言程序设计现代方法》第1章 C语言概述

    C语言的特点:C语言是一种底层语言.C语言是一种小型语言.C语言是一种包容性语言. C语言的优点:高效.可移植.功能强大.灵活.标准库.与UNIX系统集成. C语言的缺点:C程序更容易隐藏错误.C程序 ...

  3. Unity给力插件之ShaderForge(一)

    这是一个用来制作shader的插件,也是一个很好的学习shader的工具.这个插件上手很容易,但是要用它来制作理想的Shader,需要下点功夫. 这儿先列举出基础知识,以及我的一些实践.以后我还会继续 ...

  4. 在Mac下如何开Wifi

    1. 首先打开系统偏好设置,选择共享 2. 把互联网共享给勾上 在里面选择共享来源为以太网,共享方式为Wifi 3. 点开Wifi选项,在里面设置密码(如果需要设置密码的话) 4. 然后看状态栏上的W ...

  5. Ubuntu---2

    1.Ubuntu学习笔记之:安装中文语言包 http://askubuntu.com/questions/59356/how-do-i-get-chinese-input-to-work

  6. HTML5 Canvas核心技术—图形、动画与游戏开发.pdf3

    路径与子路径 在某一时刻,canvas之中只能有一条路径存在,Canvas规范称之为“当前路径”(current path),这条路径却可以包含很多子路径(subpath),子路径是由两个或者更多点组 ...

  7. html背景为灰色 不能操作,中间div可以操作

    <container style="position: absolute; top: 0px; left: 0px; width: 0px; height: 0px; z-index: ...

  8. 如何实例化i2c_client(四法)

    一.在板文件进行client的实例化 在内核的初始化中(例如在板文件中)定义设备的信息.这种操作的前提是内核编译的时候已经确定有哪些i2c设备和它们的地址,还要知道连接的总线的编号. 比如在板文件/a ...

  9. 解析Qt4.7.3编译MySql数据库驱动,存中文乱码、过滤转义字符问题

    问题:使用QSqlDataBase类建立连接MySql数据库驱动加载失败 QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available ...

  10. Jquery- 错误消息"Date"未定义,"String"未定义

    在jquery的高版本(1.7-1.9)提示“String”未定义,稍低版本提示“Date”未定义错误 解决办法: 1.找到你发生错误的代码(即执行那条代码时发生的错误) 2.使用setTimeout ...