【C语言】-选择结构-if语句
if语句:也可称条件语句,是根据所给定条件的值是真还是假决定执行不同的分支。
if语句有单分支、双分支、多分支以及if语句的嵌套等多种形式。
单分支if语句:
if (条件表达式)
{
语句组1;
}
例1:
if (a)
{
...
}
当条件表达式的值为“真”时,执行语句组;当值为“假”时,跳过语句,直接执行if语句后面的其他语句。
注意:
(1)if后面的“表达式”,除了可以是关系表达式或逻辑表达式外,也可以是其他类型的数据,如普通的整型、实型、字符型的常量或变量,但这些数据都看作逻辑值。如例1中,如果a不为0,执行语句。否则执行if语句后面的语句。
(2)if语句中的“表达式”必须用“(”和“)”括起来。
(3)当if下面的语句组只有一条语句时,可以不适用复合语句的形式,即花括号去掉,但多条语句必须使用复合语句形式。
双分支if语句:
if (条件表达式)
{
语句组1;
}
else
{
语句组2;
}
双分支if语句的执行过程

当条件表达式的值为“真”时,执行语句组1;当条件表达式的值为“假”时,执行语句组2;两组语句只能执行其中一个,执行完毕后,执行if语句后面的语句。
注意:
在双分支if结构中,else子句是if语句的一部分,必须与if配对使用,不能单独使用。
多分支选择结构:
一般用于某一事件可能出现的多种情况的处理。通常表现为“如果满足某种条件,就进行某种处理,否则判断是否满足另一种条件,执行另一种处理等”。
if (表达式1)
{
语句组1;
}
else if (表达式2)
{
语句组2;
}
else if (表达式3)
{
语句组3;
}
...
else
{
语句组n;
}
多分支if语句的执行过程:

if语句的嵌套:
如果在if语句中又包含一个或多个if语句,则称为if语句的嵌套。
格式1:
if (表达式1)
{
if (表达式2)
{
语句组1;
}
else
{
语句组2;
}
}
else
{
语句组3;
}
格式2:
if (表达式1)
{
语句组1;
}
else
{
if (表达式2)
{
语句组2;
}
else
{
语句组3;
}
}
注意:
- C语言规定,在if语句的嵌套结构中,else子句总是和在它上面、据它最近、且尚未匹配的if配对。
- 内嵌的if语句,一律用花括号括起来。
- 书写时,可以采用缩进形式以清楚地表达层次关系。
- if语句中嵌套层数不宜太多(2~3层)。
【C语言】-选择结构-if语句的更多相关文章
- Golang的选择结构-switch语句
Golang的选择结构-switch语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.选择语句应用场景概述 选择结构也称为条件判断,生活中关于判断的场景也非常的多,比如: ( ...
- Golang的选择结构-if语句
Golang的选择结构-if语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.选择语句应用场景概述 选择结构也称为条件判断,生活中关于判断的场景也非常的多,比如: ()登录Q ...
- 选择结构if语句和switch语句的区别
------- android培训.java培训.期待与您交流! ---------- 1.选择结构if语句格式及其使用 A:if语句的格式: if(比较表达式1) { 语句体1; }else if( ...
- C语言---选择结构和循环结构
C语言的两种选择语句,1) if语句; 2) switch语句; 在if判断语句中,一般使用关系表达式. 关系运算符: <.<=.>.>=.==.!= 关系表达式:用关系运算符 ...
- C语言----选择结构(基础篇三)
大家好,忙里抽空更新一下自己的博客,算是自己的一个进步,C语言视频启蒙我早就看完啦,只是觉得这个视频真不错,所以给大家分享一下,同时自己还有很多没有理解透彻,写写博客算是一个笔记更是对自己所学的知识的 ...
- C语言------选择结构
仅供借鉴.仅供借鉴.仅供借鉴(整理了一下大一C语言每个章节的练习题.没得题目.只有程序了) 文章目录 1 .实训名称 2 .实训目的及要求 3 .源代码及运行截图 4.小结 1 .实训名称 实训4:选 ...
- 03-03 java 顺序语句结构,选择结构if语句
顺序结构: /* 流程控制语句:可以控制程序的执行流程. 分类: 顺序结构 选择结构 循环结构 顺序结构: 从上往下,依次执行. */ class ShunXuJieGouDemo { public ...
- 怎么绘制C语言选择和循环语句的思维导图
C语言是一门非常基础的计算机语言,是大部分本科学生的公共专业,在C语言的学习中,选择和循环语句是至关重要的部分,利用思维导图可以有效节约时间并加深知识点记忆. 接下来就为大家介绍一下我用iMindMa ...
- C#语言————选择结构
int[] num = new int[] {23,76,54,87,51,12 }; //冒泡排序 for (int i = 0; i < num.Length - 1; i++) { for ...
随机推荐
- 2013 Multi-University Training Contest 4 Who's Aunt Zhang
看题就知道要用polya,但是当时没做出来,还是不是很熟悉polya!!! 总共有24种置换: 1. 不做任何旋转 K ^ (54 + 12 + 8) 2. 绕相对面中心的轴转 1) 90度 K ^ ...
- linux下使用yum安装mysql、tomcat、httpd
一.linux下使用yum安装mysql 1.安装 查看有没有安装过: yum list installed mysql* rpm -qa | grep m ...
- CentOS笔记——配置DNS服务器
前话 咳咳,这次Linux系统的DNS服务器搭建我不得不记下来.,这错误真的太蛋疼了,我整整弄了两天才解决问题(抱歉我很蠢). 也许有人会和我犯同样的错误,给大家分享一下经验. 首先总结一下知识点: ...
- CodeForces114E——Double Happiness(素数二次筛选)
Double Happiness On the math lesson a teacher asked each pupil to come up with his own lucky numbers ...
- RedMine项目管理系统安装问题(Linux版一键安装包)
安装环境 操作环境:VMware下安装的Parrot Security OS 系统 使用软件:bitnami-redmine---linux-x64-installer.run 问题描述: 安装步骤与 ...
- Java API ——StringBuffer类
1.StringBuffer类概述 1)我们如果对字符串进行拼接操作,每次拼接,都会构建一个新的String对象,既耗时,又浪费空间.而StringBuffer就可以解决这个问题 2)线程安全的可变字 ...
- Linux Shell常用命令手册(Updating)
检查远程端口是否对bash开放: nc -nvv $IP $PORT telnet $IP $PORT 当前任务的前后台切换: Ctrl + z fg 截取变量前5个字符: ${variable:0: ...
- ORA-14452: 试图创建, 更改或删除正在使用的临时表中的索引
ORA-14452: 试图创建, 更改或删除正在使用的临时表中的索引 因为表KOL_XX_FIN050_TEMP 为临时表,而且有其他session正在使用. 处理步骤: 1.先从 dba ...
- oralce索引和分区索引的使用
oracle分区表和分区索引的本质就是将数据分段存储,包括表和索引(索引从本质上来讲也是表),表分区会将表分成多个段分别存储.由此数据查询过程改变为先根据查询条件定位分区表,然后从该表中查询数据,从而 ...
- [原]Unity3D深入浅出 - 物理材质(Physics Materials)
在Unity3d中已经配置好了5种常用的物理材质,Bouncy.Ice.Metal.Rubber.Wood,在菜单中依次选择Assets - Import Package - Physics Mate ...