if语句是实现分支结构的常用分支语句之一,另外还有条件运算符、switch语句等。

if语句的功能是:根据给定条件,选择程序执行方向。

if语句的基本格式

“if语句”又称条件语句,其基本格式为:
    if(表达式)      语句1;
    else           语句2;
其中:

  • 表达式——条件表达式,可以是C++中任意合法表达式,如算术、关系、逻辑或逗号表达式等。表达式的值为0则为“假”;非0则为“真”。
  • 语句1、2——内嵌语句,可以是单一、复合或者空语句,在语法上各自表现为1个语句。

执行流程


if语句的执行流程示意图如上图所示,描述如下:
(1) 计算条件表达式的值;
(2) 若表达式的值为真(或非0),执行语句1;否则,即表达式的值为假(或为0),则执行语句2。
图中的“块”即代表语句。

注意:if分支中的语句1也可以是空语句。如:
    if(x<0)  ;
 注意与前面的简化格式区别开,使用时千万记得空语句也要以分号与其他语句分隔!

简化格式

当语句2为“空语句”时,往往可以将else语句省略,得到基本格式的简化形式:
    if(表达式)      语句1;
执行流程变为:当条件表达式的值为假时,程序将直接执行分支语句之后的语句。

例如,对于下列分支函数:

(1)用标准if语句描述,格式如下:
        if(x<0)      y=0;
        else        y = x*x*x+3*x; y = 0;
(2)用无else的简化格式,其思想是:令y的值为0,如x>=0,重新计算y的值,否则(即x<0),y的值不变。 则可描述为:
        if(x>=0) y = x*x*x+3*x;

应用举例

【例2.4】 输入一个年份,判断是否为闰年。
#include <iostream>
using namespace std;
int main( ){
    int year;
    cout<<"输入年份:"<<endl;
    cin>>year;
    if (year%4==0&&year%100!=0||year%400==0)
        cout<<year<<"是闰年"<<endl;
    else  cout<< year<<"年不是闰年"<<endl;
    return 0;
}

【例2.5】 从键盘上输入三个整数,输出其中的最大数。
#include <iostream>
using namespace std;
int main(){
    int a, b, c, max;
    cout<<"输入三个整数:";
    cin>>a>>b>>c;
    cout<<"a="<<a<<'\t'<<"b="<<b<<'\t'<<"c="<<c<<endl;
    if(a>=b) max=a;
    else max=b;
    if(c>max) max=c;
    cout<<"最大数为:"<<max<<endl;
    return 0;
}

说明:‘ \t’ 为水平制表符,一般相当与敲一个Tab的效果(也就是4个或者8个空格),即空格效果。(注意用单引号或双引号)

条件语句(if语句)的用法的更多相关文章

  1. sql语句中charindex的用法 可用于截取字符串

    使用CHARINDEX和PATINDEX函数来搜索文字列和字符串.这两个函数是如何运转的,解释他们的区别.同时提供一些例子,通过这些例子,你可以可以考虑使用这两个函数来解决很多不同的字符搜索的问题. ...

  2. SQL语句一些特殊的用法

    SQL语句一些特殊的用法 一.基础 1.说明:创建数据库 CREATE DATABASE database-name  2.说明:删除数据库 drop database dbname 3.说明:备份s ...

  3. Shell编程之循环语句与echo的用法

    Shell编程之循环语句与echo的用法 目录 Shell编程之循环语句与echo的用法 一.echo用法 1. echo常用选项 2. 常用的转义字符 3. 特殊符号%.#的用法 二.循环语句 1. ...

  4. python之最强王者(3)——变量,条件、循环语句

    1.Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的 ...

  5. java break语句的三种用法

    1.用于switch语句当中,用于终止语句 2.用于跳出循环,此为不带标签的break语句,相当与goto的作用 e.g while(i<j&&h<k){ if(h< ...

  6. Python新手学习基础之条件语句——elif语句

    elif语句 (相当于C语言的else if) 在Python中,当我们需要有更多的判断条件时,我们往往会使用另外一种语法表达,即使用elif: if 判断条件1: 执行语句1 elif 判断条件2: ...

  7. Python 2.7 学习笔记 条件与循环语句

    本文介绍下python条件和循环语句的语法 一.if条件语句 语法格式如下: if 表达式: .... elif 表达式: .... elif 表达式: .... else: ..... 说明:与其它 ...

  8. 第二部分 条件控制执行语句、循环语句、switch语句、跳转语句和其它语句

    条件控制执行语句: if语句 if....else....语句 循环语句: while语句 do....while语句 for语句 switch语句: 跳转语句: break; continue; r ...

  9. Python中的条件和循环语句

    条件和循环语句 1. 条件语句 if单用 格式:if 条件表达式 例如:if 5 > 3: print('True') >>> 'True' #当条件满足时才会执行上述操作. ...

  10. #7 Python顺序、条件、循环语句

    前言 上一节讲解了Python的数据类型和运算,本节将继续深入,涉及Python的语句结构,相当于Python的语法,是以后编写程序的重要基础! 一.顺序语句 顺序语句很好理解,就是按程序的顺序逻辑编 ...

随机推荐

  1. 前端知识之css

    css的几种引入方式 行内样式 行内式是在标记的style属性中设定css样式,不推荐大规模使用 <p style='color:red'>hello world</p> 内部 ...

  2. 吴裕雄 python 机器学习——KNN回归KNeighborsRegressor模型

    import numpy as np import matplotlib.pyplot as plt from sklearn import neighbors, datasets from skle ...

  3. 【原】接口mock作用

    1.前后端 接口定义完成 并发开工 2.测试拿到mock接口 编写用例 3.mock接口 模拟异常服务器返回值 500 404 4.mock接口 模拟数据 不修改线上数据库

  4. Python 多任务(进程) day1(3)

    进程间的通信 可以用socket进行进程间的通信 可以用同意文件来进行通信(但是在硬盘上读取和写入比较慢,内存运行太快了) Queue队列(记得是队列)  在同一内存中通信 因为进程之间不能共享全局变 ...

  5. Educational Codeforces Round 80 (Rated for Div. 2)E(树状数组,模拟,思维)

    #define HAVE_STRUCT_TIMESPEC #include<bits/stdc++.h> using namespace std; ],mx[],a[],pos[],sum ...

  6. Javascript模块化编程之CommonJS,AMD,CMD,UMD模块加载规范详解

    JavaSript模块化 在了解AMD,CMD规范前,还是需要先来简单地了解下什么是模块化,模块化开发?     模块化是指在解决某一个复杂问题或者一系列的杂糅问题时,依照一种分类的思维把问 题进行系 ...

  7. centos 7 添加swap

    [root@lab01 /]# cd / [root@lab01 /]# + records in + records out bytes ( MB/s [root@lab01 /]# free -m ...

  8. 【Python】字符串(String)

    python中单引号和双引号使用完全相同. 使用三引号('''或""")可以指定一个多行字符串. 转义符 '\' 反斜杠可以用来转义,使用r可以让反斜杠不发生转义.. 如 ...

  9. 2019,.Net开发者的高光时刻

    随着微软发布的一系列关于Windows..net和C#的公告,.Net开发者将在2019年,迎来自己的高光时刻,毕竟“世界上只有少数几种语言是多功能的,而没有一个像C#那样干净整洁.” 一.现在学C# ...

  10. Dubbo监控中心搭建-dubbo-monitor-simple的使用

    场景 Dubbo环境搭建-管理控制台dubbo-admin实现服务监控: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10362 ...