C程序设计 教学课件 ppt 作者 王丽娟 第1-6章第3章

上传人:w****i 文档编号:94839904 上传时间:2019-08-12 格式:PPT 页数:35 大小:1.11MB
返回 下载 相关 举报
C程序设计 教学课件 ppt 作者 王丽娟 第1-6章第3章_第1页
第1页 / 共35页
C程序设计 教学课件 ppt 作者 王丽娟 第1-6章第3章_第2页
第2页 / 共35页
C程序设计 教学课件 ppt 作者 王丽娟 第1-6章第3章_第3页
第3页 / 共35页
C程序设计 教学课件 ppt 作者 王丽娟 第1-6章第3章_第4页
第4页 / 共35页
C程序设计 教学课件 ppt 作者 王丽娟 第1-6章第3章_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《C程序设计 教学课件 ppt 作者 王丽娟 第1-6章第3章》由会员分享,可在线阅读,更多相关《C程序设计 教学课件 ppt 作者 王丽娟 第1-6章第3章(35页珍藏版)》请在金锄头文库上搜索。

1、第三章 C程序设计初步,3.1 结构化程序设计思想 3.2 C语句概述 3.3 赋值语句 3.4 文件包含 3.5 流和文件初步 3.6 数据输出 3.7 数据输入 3.8 程序举例,3.1 结构化程序设计思想,3.1.1 程序的质量标准,一个好的程序在满足运行结果正确的基本条件之后,首先要有良好的结构,使程序清晰易懂。在此前提之下,才考虑使其运行速度尽可能的快, 运行时所占内存应尽量压缩至合理的范围。也就是说,现在的程序质量标准易读性好是第一位的,其次才是效率。因为从根本上说,只有程序具有了良好的结构,才易于设计和维护,减少软件成本,从整体来说才是真正提高了效率。,3.1.2 结构化程序设计

2、方法,(1) 一个大的程序开发应当采取“自顶向下, 逐步细化, 模块化”的方法。 (2) 任何程序均由具有良好特性的三种基本模块(顺序, 分支,循环)“堆积”搭成,即由基本小单元顺序组成一个大结构,从而避免了使用goto语句的缺点。,3.1.3 结构化程序的标准,(1) 程序符合“清晰第一,效率第二”的质量标准。 (2) 具有良好的特性。 只有一个入口。 只有一个出口(有些分支结构很容易写成多个出口)。 无死语句(永远执行不到的语句). 没有死循环(永远执行不完的无终止的循环)。,3.1.4 三种基本模块,1. 顺序结构,图 3.1 顺序结构,2. 分支结构,图 3.2 分支结构,3. 循环结

3、构,图 3.3 当型循环结构,图 3.4 直到型循环结构,3.2 C 语 句 概 述,C语言是函数式语言,每一个函数是由数据说明部分和执行语句部分组成。C语言中的所有语句均是执行语句,没有非执行语句。根据C语言的句法, 语句可分为单个语句,复合语句和空语句。根据结构化程序设计的三个模块大致可分为: 用于顺序结构中的表达式语句、赋值语句、函数调用语句等; 用于分支结构中的if语句、switch语句、转移语句、标号语句等;用于循环结构中的while语句、for语句、do-while语句。 另外在后两种结构中还可出现break语句、continue语句、复合语句和空语句等作为其中的一部分。,(1)

4、逻辑上每个语句最后都必须有一个分号(;), 一个语句可分写成几行, 几个语句也可合写成一行(但不提倡, 因其不利于单步调试)。 (2) 空语句直接由分号(;)组成,常用于控制语句中必须出现语句之处,它不做任何操作,只在逻辑上起到有一个语句的作用。 (3) 复合语句由花括号 括起的若干个语句, 语法上可以看成是一个语句。复合语句中最后一个语句的分号不能省略。 如下面是一个复合语句: z=x+y; y=x/z; x=z-y; ,(4) 表达式语句是在各种表达式后加一个分号(;)形成一个语句。如赋值语句由赋值表达式加一个分号构成: x=x+y; 再如表达式x+后加一个分号构成表达式语句: x+; 表

5、达式和表达式语句的区别是表达式后无分号, 可以出现在其它语句中允许出现表达式的地方;而表达式语句后有分号, 自己独立成一个语句,不能再出现在其它语句的表达式中。 如: if(a=b)0) min=a;,(5) 控制语句有条件判断语句(if、 switch), 循环语句(for、 while、 do-while),转移语句(goto、 continue、 break、 return)。,3.3 赋值语句,赋值语句是由赋值表达式加上一个分号构成。 如x=a+b;。 C语言的赋值语句具有其它高级语言中赋值语句的一切特点和功能,也有C语言自己的特色: (1) C语言中赋值号“=”作为赋值运算符。 (2

6、) 其它高级语言没有赋值表达式这个概念。作为赋值表达式可以出现在其它表达式能出现的地方,也可出现在其它表达式之中。 例如: if(x=a+b)! =0) t=10;,3.4 文件包含,一个C程序由若干个源文件组成,而一个源文件还可将另一个源文件的全部内容包含进来,即将另外的文件包含到本文件之中,二者合为一个大些的文件。这个包含进来的文件只是一个文件名,在编译时先进行展开,这个文件名我们用预编译命令“include”来指定,其一般形式为: include 或 include 文件名,3.5 流和文件初步,C语言的输入和输出由库函数来完成。在C语言中没有用于完成I/O操作的关键字,而是采用I/O操

7、作函数。因此数据的输入输出要调用输入输出库函数。 在ANSI C标准中定义了一组完整的I/O操作函数。这些函数调用时所需的一些预定义类型和常数都在头部文件stdio.h和conio.h中。因此调用输入输出函数时,在程序前面应加上 include 和(或) include 如没有该命令指定, 可能造成错误。,C语言I/O系统为C语言编程者提供了一个统一的接口, 与具体的被访问设备无关。也就是说,在编程者和被使用设备之间提供了一层抽象的东西,这个抽象的东西就叫做“流”。 具体的实际设备叫做“文件”。 所有的流具有相同的行为,相当于一个缓冲区,流可分为文字流和二进制流。 一个文字流是一行行的字符,换

8、行符表示这一行的结束。 文字流中某些字符的变换由环境工具的需要来决定。例如一个换行符可以变换为回车换行两个字符。因此所读写的字符与外部设备中的数据没有一一对应的关系。,3.6 数据输出,3.6.1 putchar函数(字符输出函数) 函数调用形式: char ch; putchar (ch); ,例 3.1 字符数据的输出。 include main( ) char a, b; a=b; b=o; putchar(a); putchar(b); putchar(y); putchar(n); 经编译后运行, 在屏幕上显示: boy,3.6.2 printf函数(格式输出函数),函数的调用形式:

9、 printf(控制字符串, 参量表);,例如: printf(The output x=%dn, x); 若x=10, 则输出为“The output x=10”。,表 3.1 printf()的格式说明,例 3.2 不同类型数据的输出。,程序:,3.6.3 puts函数(字符串输出函数),函数的原型是: char *puts(char *s),函数的调用形式是: puts(字符串数据); puts函数将字符串数据(可以是字符串常量、 字符指针或字符数组名)写在屏幕上并换行。,3.7 数据输入,3.7.1 getche函数与getchar( )和getch( ),getche函数的调用形式:

10、 char# ch; ch=getche( ); getche( )用于等待从键盘上键入一个字符, 返回它的值并在屏幕上自动回显该字符。使用该函数必须在程序的头部使用文件包含命令: include ,例 3.3 单个字符的输入和输出。,include include main( ) char ch; ch=getche( ); putchar(ch); putchar(n); 经编译后运行, 输入a, 最后在屏幕上显示: aa,例 3.4 多个字符的输入和输出。,include include main( ) char# a, b, c; a=getch( ); b=getch( ); c=g

11、etch( ); putchar(a); putchar(b); putchar(c); putchar(n); getch( ); ,3.7.2 scanf函数(格式输入函数),scanf函数的调用形式: scanf(控制字符串,参量表); 如scanf(a, b=%d, %d, 即要在键盘上输入a, b=12, -34 此时12送给变量a,-34送给变量b,而控制字符串中a, b=和两个%d之间的逗号必须原封不动照样输入。,scanf函数括号中的控制字符串包含三类不同的字符内容: (1) 格式说明。 (2) 空白字符。 (3) 非空白字符。,表 3.2 scanf()的格式说明,3.7.3

12、 gets函数(字符串输入函数),函数的原型是: char *gets(char *s) 其中s是一个字符数组或有存贮空间的字符指针。 gets( )函数用来从键盘读入一串字符, 并把它们送到gets函数中的字符数组成字符型指针所指定地址的存贮单元中。 在输入字符串后,必须用回车作为输入结束,该回车符并不属于这串字符,由一个“空操作字符(0)”在串的最后来代替它。此时空格不能结束字符串的输入。gets函数返回一个指针。,例 3.5 字符串的输入和输出。 程序: include main( ) char str80; gets(str); puts(str); 运算结果: ABC DEF ABC

13、 DEF,3.8 程序举例,例 3.6 输入一个小写字母, 按大写输出。 程序一: include include main() char ch; ch=getche( ); putchar(ch-32); 运行: aA,程序二: include include main( ) char ch; ch=getch( ); putchar(ch-32); 运行: A,程序三: include main( ) char ch; ch=getchar( ); putchar(ch-32); 运行: abcdefgA,例 3.7 输入三角形的三条边长,求三角形的面积。我们假设输入的三边能构成三角形。 分析: 三角形面积的计算公式如下:,s=(a+b+c)/2,程序: include main( ) float a, b, c, s, area; scanf(%f, %f, %f, 运行: 3, 4, 6 a=3.00, b=4.00, c=6.00 area=5.33,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号