目录

  • 1 计算机概述
    • 1.1 计算机简介
    • 1.2 计算机系统
    • 1.3 数值在计算机中的表示
  • 2 C语言概述
    • 2.1 C语言发展及特点
    • 2.2 C语言程序的运行步骤和开发环境
    • 2.3 简单的C语言程序
  • 3 C语言基础
    • 3.1 变量、常量及数据类型
    • 3.2 运算符和表达式
    • 3.3 输入、输出
  • 4 选择结构
    • 4.1 计算机编程和算法
    • 4.2 if语句
    • 4.3 if嵌套和if多分支
    • 4.4 switch语句
  • 5 循环结构
    • 5.1 while语句和do...while语句
    • 5.2 for语句
    • 5.3 break语句和continue语句
    • 5.4 goto语句构成的循环
    • 5.5 嵌套循环结构
    • 5.6 程序设计举例
  • 6 函数
    • 6.1 函数的定义与调用
    • 6.2 函数的嵌套调用和递归调用
    • 6.3 作用域和生命周期
    • 6.4 章节小结与测试
  • 7 数组
    • 7.1 一维数组及应用
    • 7.2 二维数组及应用
    • 7.3 字符数组
    • 7.4 数组作为函数参数
    • 7.5 章节小结与测试
  • 8 指针
    • 8.1 指针变量
    • 8.2 指针与数组
    • 8.3 指针的多种形态
  • 9 字符串
    • 9.1 字符串概念及输入输出
    • 9.2 字符串函数
    • 9.3 指针与字符串
    • 9.4 章节小结与测试
  • 10 编译预处理
    • 10.1 宏定义
    • 10.2 文件包含
    • 10.3 条件编译
  • 11 结构体、共用体和用户定义类型
    • 11.1 结构体类型变量
    • 11.2 结构体类型数组与指针
    • 11.3 结构体与函数
    • 11.4 用指针处理链表
    • 11.5 共用体
  • 12 位运算
    • 12.1 位运算的概念和运算规则
  • 13 文件
    • 13.1 C文件概述
    • 13.2 文件的打开与关闭
    • 13.3 文件读写
    • 13.4 位置指针的定位
while语句和do...while语句

学习目标

理解并掌握循环的概念及其算法描述

理解并掌握程序设计中构成循环的方法

熟练掌握while语句的结构及使用

熟练掌握do-while 语句的结构及使用

 

 

重点

while语句的结构其使用方法

do while语句的结构其使用方法

正确区分do…while语句与while语句

do…while语句与while语句的应用

 

 

难点

do…while语句与while语句的应用

分析总结常用的程序设计方法及算法特点,并能编写相应的程序

 

引言

重复执行就是循环。重复工作是计算机特别擅长工作之一。

重复执行不是简单地重复,每次重复,操作的数据(状态、条件)都可能发生变化。

重复的动作是受控制的C语言提供三种循环控制语句,构成了三种基本的循环结构。

 

 

一、while语句

1. while语句格式

可以使用while语句实现当型循环结构

while语句格式如下:

             while(表达式)  

                  循环体语句

 

2. while语句流程

while语句的执行过程如图5.1所示。

首先计算表达式的值,若表达式为非0值(真),则执行while语句中的循环体语句。然后再次计算表达式的值;若表达式为非0值(真),则再执行循环体语句,……,如此循环,一直到表达式的值为0(假)时,结束循环。

             

               图5.1  while语句流程图

3. 应用举例

5.1 while语句求1+2+3+4+…+99+100

 

 

4. while语句说明

(1)如果首次计算while后面的表达式时值为0,则循环体一次也不执行。如下所示,如果从键盘为变量x输入0或负数,则不执行循环体语句。

         scanf("%f", &x);

         while(x>0)

            { sum+=x;

              scanf("%f", &x);

            }

         printf("%f", sum);

(2) 若被反复执行的循环体若干个基本语句,应该将这些基本语句用大括号括起来,以复合语句的形式出现。

(3) 在循环体中,要有使循环趋向于结束的语句,否则形成死循环。如下面代码所示,循环体中没有改变循环条件的语句,所以表达式n<=100永远为真,不能结束循环。

      int n=1, sum=0;  

      while( n<=100)

        sum+=n;

 

二、do...while语句

1. do...while语句格式

可以使用do-while语句实现直到型循环结构。

do-while语句格式如下:

             do

                    循环体语句

              while(表达式)

 

2. do...while语句流程

do-while语句的特点是先执行循环体,然后判断循环条件是否成立。do-while语句的执行过程如图5.2所示。先执行一次循环体语句,然后计算表达式,若表达式的值为非零(),再将循环体语句执行一次,……,如此循环,直到表达式的值等于0(假)时结束循环。


图5.2 do...while语句流程图

3. 应用举例

5.2  从键盘输入若干个数,当其中正数的和超过5000时停止输入,统计输入正数的个数并求正数的平均值。

 

5.3  从键盘输入一个正整数,求其各位数码之和。例如,输入12345,输出15

 

4. do...while说明

(1) do...while循环是先执行循环体,然后判断表达式的真假。这样,循环体至少可以被执行一次。

(2) do...while循环和while循环一样,在循环体中也一定要有使循环趋向于结束的语句,否则循环永不结束,形成死循环。