目录

  • 1 第一章  C语言概述
    • 1.1 第一节  C语言的产生和发展
    • 1.2 第二节  C语言的特点
    • 1.3 第三节  两个简单的C程序
    • 1.4 第四节  C程序的上机步骤
    • 1.5 第五节  Dev-C++介绍
    • 1.6 第六节  VC2010学习版介绍
    • 1.7 第七节  宏定义和文件包含
    • 1.8 本章小结
    • 1.9 本章单元测试
  • 2 第二章  基本数据类型与简单程序设计
    • 2.1 第一节  C语言的基本数据类型
    • 2.2 第二节  常量
    • 2.3 第三节  变量
    • 2.4 第四节  赋值语句
    • 2.5 第五节  数据输出
    • 2.6 第六节 数据输入
    • 2.7 第七节  运算符
    • 2.8 第八节  常用的数学函数
    • 2.9 第九节  顺序结构程序设计
    • 2.10 本章小结
    • 2.11 本章单元测试
  • 3 第三章  分支结构程序设计
    • 3.1 第一节  关系表达式和逻辑表达式
    • 3.2 第二节  if单分支语句
    • 3.3 第四节  if双分支语句
    • 3.4 第五节  if多分支语句
    • 3.5 第六节  case多分支语句
    • 3.6 第七节  分支结构程序设计实例
    • 3.7 本章小结
    • 3.8 本章单元测试
    • 3.9 书中本章习题答案
  • 4 第四章  循环结构程序设计
    • 4.1 第一节  为什么需要循环控制
    • 4.2 第一节  while循环
    • 4.3 第二节  do ... while循环
    • 4.4 第三节  for循环
    • 4.5 第四节  多重循环
    • 4.6 第五节  break语句和continue语句
    • 4.7 第六节  循环结构程序设计实例
    • 4.8 本章小结
    • 4.9 书中本章习题答案
  • 5 第五章 数组
    • 5.1 第一节  一维数组的定义和使用
    • 5.2 第二节  二维数组的定义和使用
    • 5.3 第三节  字符数组的定义和使用
    • 5.4 第四节  数组的应用举例
  • 6 第六章  函数
    • 6.1 第一节  函数的定义
    • 6.2 第二节  函数的调用
    • 6.3 第三节 数组作为函数参数
    • 6.4 第四节  变量的作用域
    • 6.5 第五节 变量的存储类别
    • 6.6 第六节 函数应用实例
  • 7 第七章 结构体和共用体
    • 7.1 第一节  概述
    • 7.2 第二节  定义结构体变量的方法
    • 7.3 第三节 结构体变量的引用
    • 7.4 第四节 结构体数组
    • 7.5 第五节 共用体
    • 7.6 第六节  结构体和共用体应用实例
  • 8 第八章 指针
    • 8.1 第一节  指针的概念
    • 8.2 第二节  指向简单变量的指针
    • 8.3 第三节 指向数组的指针变量
    • 8.4 第四节  指向字符串的指针变量
    • 8.5 第五节 指针作为函数参数
    • 8.6 第六节  指向结构体的指针变量
    • 8.7 第七节 指针应用实例
  • 9 第九章  文件
    • 9.1 第一节  文件概述
    • 9.2 第二节  文件的打开和关闭
    • 9.3 第三节 文件的读/写函数
    • 9.4 第四节  文件定位函数
    • 9.5 第五节  文件应用实例
  • 10 附录
    • 10.1 附录A  基本字符ASCII码表(0~127)
    • 10.2 附录B  运算符优先级表
    • 10.3 附录C 常用C库函数表
    • 10.4 附录D  编译常见错误提示
    • 10.5 附录E  常见C语言英语单词
    • 10.6 附录F  如何从十进制转换为二进制
    • 10.7 附录G  如何把二进制数转化为十进制数
    • 10.8 附录H  什么是编译器
    • 10.9 附录I  与编译器相关的几个知识点
第二节  if单分支语句
  • 1 文字讲解
  • 2 视频讲解
  • 3 过关测试
  • 4 拓展资料

     if语句通常被称为选择语句或分支语句。它不再局限于顺序结构的单一流程,而是用来对给定条件进行判定,根据其判定结果,从两种操作中选择其一。if 语句用于实现分支结构,C 语言提供了两种形式的 if语句。

3.2.1 if语句(单入口单出口)

一般形式∶

       if(表达式)

             语句;

执行过程:

       

       图3-1  单入口单出口if语句的一般执行过程。

说明:① 表达式可以为逻辑表达式、关系表达式或数值表达式。

       ② 执行if语句时,先对"表达式"进行求值,如果计算结果为非0(为真),则执行其后的"语句",否则跳过其后的"语句"。

       ③ "语句"可以是一条简单语句,也可以是用花括号将几条语句括起来的一个复合语句。看下面的例子。

  1.      if(x<y)

  2.            x = x+1;   // 简单语句

  3.      if(x<y)

  4.      {

  5.             x = x+1;

  6.            y = y+1;

  7.      }      //复合语句

注意∶

     ① 用“{ }”括起来的复合语句被看成是一条语句。

     ② 在编写程序时,经常会出现这样的错误,将“if(a == b)”写成"if( a = b )",由于表达式"a == b"与"a = b"均是正确的表达式,因此程序编译时不会指出错误。这样的错误在程序调试中很难被发现,所以应该特别注意。

      例3-1  输入一个成绩score,如果成绩大于等手60,则显示"通过!",否则不显示。

1、程序编写思路分析理解程序所需完成的功能,②算法分析,画出程序流程流,书写源程序,测试源程序。

2、程序功能分析:输入一个成绩后,对表达式”score>=60“进行计算,如果结果值为真(非0),就执行printf( )语句;否则,就跳过printf( )语句,转而执行后续语句。这种过程属于单入口单出口if语句。

     对于一种数据,分为两种情况,一种情况,需要程序做出相应的处理,另一种情况,则不处理。这类型问题可选用单入口单出口if语句。

3、程序流程图如下图所示

    

4、源程序如下∶

  1. #include   <stdio.h>

  2. main(  )

  3. {

  4.        int score;

  5.       printf("输入一个成绩∶");

  6.       scanf("%d", &score );

  7.       if(score >=60)    printf("通过! \n");

  8. }

5、程序测试:

     对于成绩score数据分为两类:① 若score>=60,则显示“通过”;  ② 若score<60,则不显示。

      测试程序运行是否正确,采用两组数据进行测试。

      第一组数据:代表通过类数据,选用数据样例为65。

      第一组数据:代表未通过类数据,选用数据样例为56。

      第一次程序运行时,输入 65,则输出"通过!";如下图所示。

     

     第二次程序运行时,输入 57,则不输出,如下图所示。

     

 通过两组数据的测试,若如上图所示,则可验证程序正确。