《C语言程序设计》第三章 语句与控制流
- 格式:ppt
- 大小:2.69 MB
- 文档页数:59
C语言程序设计(第3章程序控制语句)33.3 条件控制语句在程序的三种基本结构中,第二种即为选择结构,其基本特点是:程序的流程由多路分支组成,在程序的一次执行过程中,根据不同的情况,只有一条支路被选中执行,而其他分支上的语句被直接跳过。
C语言中,提供if语句和switch语句选择结构, if语句用于两者选一的情况,而switch 用于多分支选一的情形。
3.3.1 if语句1. if语句的两种基本形式首先,我们看一个例子,由此了解选择结构的意义及设计方法。
[例3-5] 输入三个数,找出并打印其最小数。
分析:设三个数为A、B、C,由键盘读入,我们用一个变量MIN来标识最小数, A、B、C与MIN皆定义为int型变量。
每次比较两个数,首先比较A和B,将小的一个赋给MIN,再把第三个数C与MIN比较,再将小的一个赋给MIN,则最后MIN即为A、B、C中最小数。
算法如下:1) 输入A、B、C。
2) 将A与B中小的一个赋给MIN。
3 ) 将MIN与C中小的一个赋给MIN。
4) 输出MIN。
将第2)步细化为:若A < B,则MIN <==A,否则:MIN <==B;其流程图见图3- 1。
第3)步细化为:若C < M I N,则MIN <==C;其流程图见图3 - 2。
对应图3 - 1和图3 - 2,正是i f语句的两种基本形式,与图3 - 2对应的i f语句的格式为:if 语句当表达式为真时,执行语句,表达式为假时跳过语句。
与图3 - 1对应的i f语句的格式为:if语句1else语句2当表达式为真时,执行语句1,表达式为假时执行语句2。
无论如何,语句1与语句2每次只能有一个被执行。
要注意的是: if或if . . . else,包括后面要讲到的嵌套if,即if...else if...被看成是一条语句,即使其中的语句是包含多条语句的复合语句,仍然如此。
下面是例3 - 5的源程序:main( ){int a,b,c,min;printf(" input a,b,c :");scanf("%d %d %d" , &a , &b , &c);if(amin = a;elsemin = b;if (cmin = c;printf("The result is %d\n",min);}执行情况如下:input a,b,c: 3 5 2The result is : 2这里顺便提一下程序书写的缩排问题,所谓缩排,就是下一行与上一行相比,行首向右缩进若字符,如上例的min = a 、min = b等。
C语言程序设计第3章基本控制结构第3章是关于C语言程序设计的基本控制结构的章节。
在这一章中,我们将学习如何使用条件语句、循环语句和分支语句来控制程序的执行流程,以及如何使用函数进行模块化的编程。
在C语言中,最常用的条件语句是if语句。
if语句根据一个表达式的值来决定是否执行其中一段代码。
它的语法结构如下:```if (condition)// code to be executed if condition is true```在if语句中,condition是一个表达式,用来判断条件是否为真。
如果条件为真,if语句后面的代码块将被执行;如果条件为假,则忽略if语句后面的代码块。
除了if语句,C语言中还提供了其他几种条件语句,包括if-else 语句和switch语句。
if-else语句允许我们在条件为真时执行一段代码块,而在条件为假时执行另一段代码块。
switch语句根据一个表达式的值来选择不同的执行路径,类似于多个if-else语句。
在C语言中,我们通常使用循环语句来重复执行一段代码。
C语言提供了几种循环语句,包括while、do-while和for。
while循环语句首先对条件进行判断,如果条件为真,则执行循环体中的代码块,然后再次进行条件判断,直到条件为假。
do-while循环语句与while循环类似,不同之处在于它先执行循环体中的代码块,然后再进行条件判断。
for循环语句可以在一行中定义循环变量的初始值、循环条件和每次循环后的改变。
除了条件语句和循环语句,C语言还提供了分支语句来选择不同的执行路径。
常用的分支语句是break和continue语句。
break语句用于跳出当前循环或switch语句的执行,而continue语句用于结束当前迭代,开始下一次迭代。
最后,本章还将介绍如何使用函数进行模块化的编程。
函数是一段执行特定任务的代码块,它可以接收输入参数,并返回一个值。
通过使用函数,我们可以将程序的不同部分分离开来,使得程序更加简洁和易于理解。
《C语言程序设计》课程教案表算法2:分析:设想用sum作为累加器,初值为0,利用sum+=i(i依次取值为1、2。
100)此分析需要解决的3个问题:1)sum=0,i=1;2)每执行一次sum+=i 后,i增1(i=i+1);3)判断如果i小于或等于100,重新执行步骤(2),否则停止计算main(){int i,s=0;i=1;while(i<=100)/*i<=100为循环条件*/{s=s+i;i++; /*改变i的值*/}printf(″s=%d″,s);}运行结果:s=5050说明:循环结构的三个术语:1、循环条件:循环结构中的条件表达式如while (i<=100)其中,i<100就是循环条件。
2、循环体:在每个循环周期均要执行一次的语句序列。
如while下用{ }括起来的语句序列。
3、循环控制变量:能够决定控制条件是真是假的量。
如while(i<=100)中的变量i要写出一个正确的循环结构,对控制变量要做三方面的工作:1、对循环控制变量赋初值。
2、将循环控制变量写入正确的控制条件。
3、对循环控制变量值的更新。
使用while语句需要注意以下几点:while语句的特点是先计算表达式的值,然后根据表达式的值决定是否执行循环体中的语句。
因此,如果表达式的值一开始就为“假”,那么循环体一次也不执行。
当循环体为多个语句组成,必须用{}括起来,形成复合语句。
在循环体中应有使循环趋于结束的语句,以避免“死循环”的发生。
下列情况,退出while循环条件表达式不成立(为零)循环体内遇break,gotowhile(s<=10){s=s+i*i;i++;}printf(“%d”,--i);}A) 4 B) 3 C) 5 D) 6对以下程序段,描述正确的是________________。
int x=0,s=0;while(!x!=0) s+=++x;printf(“%d”,s);A) 运行程序段后输出0 B) 运行程序段后输出1C) 程序段中的控制表达式是非法的D) 程序段循环无数次下面程序段的运行结果是[ ]。
c语言程序设计(第二版)王敬华C语言程序设计(第二版)是由王敬华教授编写的一本C语言教材,它不仅涵盖了C语言的基础语法和程序设计方法,还深入探讨了C语言的高级特性和应用实践。
这本书适合作为计算机科学与技术专业的本科生教材,也适合自学者和工程技术人员参考。
第一章:C语言概述本章介绍了C语言的发展历程、特点以及与其他编程语言的比较。
C语言以其高效性、灵活性和广泛的应用领域而著称。
作者还介绍了C语言的编译过程和开发环境的搭建。
第二章:数据类型与表达式数据是程序设计中的基础元素。
本章详细讲解了C语言中的基本数据类型,包括整型、浮点型、字符型等,以及它们的存储方式和范围。
同时,介绍了常量、变量的概念和作用域,以及表达式的构成和求值规则。
第三章:控制语句控制语句是程序流程控制的核心。
本章介绍了条件语句(if、switch)、循环语句(for、while、do-while)以及跳转语句(break、continue、goto)。
通过丰富的示例代码,帮助读者理解各种控制语句的用法和逻辑。
第四章:函数函数是程序模块化设计的基础。
本章讲解了函数的定义、声明、调用以及参数传递机制。
包括值传递和引用传递的区别,以及如何设计和使用递归函数。
第五章:数组数组是存储多个数据的集合。
本章介绍了一维数组和多维数组的声明、初始化和访问方法。
同时,探讨了数组在程序设计中的应用,如排序、搜索等算法的实现。
第六章:指针指针是C语言中的一个重要概念。
本章详细讲解了指针的基本概念、指针与数组的关系、指针的运算以及指针在函数中的应用。
通过指针,可以更灵活地操作内存和数据。
第七章:结构体与联合体结构体和联合体是C语言中实现复杂数据类型的方式。
本章介绍了如何定义和使用结构体、联合体以及枚举类型,以及它们在程序设计中的应用。
第八章:预处理指令预处理指令是C语言编译前的处理指令。
本章介绍了宏定义、文件包含、条件编译等预处理指令的用法和作用。
第九章:文件操作文件操作是程序与外部世界交互的一种方式。
谭浩强c语言程序设计第二版谭浩强教授的《C语言程序设计》第二版是一本广受好评的C语言教材,它以其深入浅出的讲解方式和丰富的实例,帮助无数初学者和进阶学习者掌握了C语言的基础知识和编程技巧。
这本书不仅适合作为高校计算机专业学生的教材,也适合自学者和编程爱好者作为参考书籍。
第一章:C语言概述谭浩强教授在开篇就对C语言的历史、特点以及应用领域进行了简要介绍。
C语言以其高效性、灵活性和广泛的应用基础,成为了编程语言中的常青树。
本章还介绍了C语言程序的基本结构,包括预处理指令、函数、变量声明和程序的入口点`main`函数。
第二章:数据类型、运算符和表达式在这一章中,作者详细讲解了C语言的基本数据类型,如整型、浮点型、字符型等,以及它们在内存中的存储方式。
此外,还介绍了各种运算符,包括算术运算符、关系运算符、逻辑运算符和赋值运算符等,以及它们在表达式中的使用规则。
第三章:控制语句控制语句是程序流程控制的核心。
本章详细讲解了条件语句(if、switch)、循环语句(for、while、do-while)以及跳转语句(break、continue、goto)。
通过大量实例,作者展示了如何使用这些控制语句来实现复杂的逻辑判断和循环控制。
第四章:数组数组是C语言中一种重要的数据结构,用于存储具有相同类型的多个数据项。
本章介绍了一维数组和二维数组的定义、初始化以及访问方法。
同时,还探讨了数组在实际编程中的应用,如字符串处理和矩阵第五章:函数函数是模块化编程的基础。
本章讲解了函数的定义、声明、调用以及参数传递。
作者还介绍了如何使用递归函数来解决复杂问题,以及如何通过函数指针实现函数的动态调用。
第六章:指针指针是C语言中一个强大的特性,它允许程序员直接操作内存地址。
本章深入讲解了指针的基本概念、指针与数组的关系、指针的运算以及指针在函数中的应用。
第七章:结构体和联合体结构体和联合体是C语言中用于创建复杂数据类型的工具。
本章介绍了如何定义和使用结构体和联合体,以及它们在实际编程中的应用,如模拟现实世界的对象和数据的封装。