C语言程序设计 教学课件 ppt 作者 蔡启先 第1章 C语言与程序设计

上传人:E**** 文档编号:89190697 上传时间:2019-05-21 格式:PPT 页数:44 大小:1.25MB
返回 下载 相关 举报
C语言程序设计 教学课件 ppt 作者 蔡启先 第1章 C语言与程序设计_第1页
第1页 / 共44页
C语言程序设计 教学课件 ppt 作者 蔡启先 第1章 C语言与程序设计_第2页
第2页 / 共44页
C语言程序设计 教学课件 ppt 作者 蔡启先 第1章 C语言与程序设计_第3页
第3页 / 共44页
C语言程序设计 教学课件 ppt 作者 蔡启先 第1章 C语言与程序设计_第4页
第4页 / 共44页
C语言程序设计 教学课件 ppt 作者 蔡启先 第1章 C语言与程序设计_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《C语言程序设计 教学课件 ppt 作者 蔡启先 第1章 C语言与程序设计》由会员分享,可在线阅读,更多相关《C语言程序设计 教学课件 ppt 作者 蔡启先 第1章 C语言与程序设计(44页珍藏版)》请在金锄头文库上搜索。

1、第1章 C语言与程序设计,1.1 语言和编程,1.2 算法、C语言和程序设计,1.4 C语言程序的开发过程,第 1 章 C 语 言 与 程 序 设 计,目录,1.3 C程序的形式要点,1.1 语言和编程,冯.诺伊曼计算机的基本原理是存储程序和程序控制。,程序,就是计算机指令序列 。,编写计算机程序必须应用程序设计语言,计算机指令就是指示和控制计算机进行相应操作的命令。,高级语言接近于人们的自然语言(英语)和数学语言,易学易用,编程效率高,且适用于各种计算机,通用性强,是人们经常用来编制应用程序和系统程序的计算机语言。,1.1 语言和编程,不管用哪一种语言来编写程序,都必须熟悉该语言的语法规则和

2、使用规定,严格按照该语言的语法规则和使用规定来编写程序。,要经常进行程序设计的脑力思维,掌握程序设计的技能,人们是如何从解决实际问题入手编写程序的?,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,1.2.2 C语言及其特点,1.2.3 用C语言编写程序实现算法,1.2.4 算法的三大要素,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,1算法,算法就是为解决一个特定的问题所采取的确定的有限的步骤。 例1.1 求导体电阻。 计算机操作步骤如下: (1)从键盘输入电压数据和电流数据; (2)用公式R=U/I求出导体电阻; (3)在屏幕上输出运算结果。,1.2 算法、C语言

3、和程序设计,1.2.1 算法和算法设计,算法描述: (1)设置:变量u,变量i,变量r; (2)输入:u,i; (3)运算:r=u/i; (4)输出:r。,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,算法流程图 :,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,例1.2 输出两个数据中的较大者。 算法描述: (1)设置变量a1,a2,max; (2)输入输入两个数据分别存放于a1,a2中; (3)若a1a2,则让max=a1, 否则就是a1a2,则让max=a2 ; (4)输出max内容; (5)结束。,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,

4、算法流程图 :,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,例1.3 统计某次考试100个学生的平均成绩。 对这道题,粗略的算法是分两步: 第1步,计算出100个学生的成绩总分; 第2步,求出平均分并打印出来。,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,算法描述: (1)将第1个学生的成绩输入计算机; (2)将第2个学生的成绩输入计算机; (3)将以上两个学生的成绩相加; (4)将第3个学生的成绩输入计算机; (5)将它和前两个学生的成绩和相加; (6)将第4个学生的成绩输入计算机; (198)将第100个学生的成绩输入计算机; (199)将它和前99个学生的

5、成绩和相加得到这100个学生的成绩总分; (200)将成绩总分除以100,得到平均分; (201)打印出平均分。,这个算法是 可以实现的, 但非好的 算法! 可以让计算 机进行 “循环”, 重复 同一操作, 直至加完 100个学生的 成绩为止。,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,先安排好存放数据的变量 设:sum为“累加变量”,sum的初值=0。 c为“输入暂存变量”。 mean为“平均分变量”,存放要输出的结果。 n为 “计数变量” ,记录累加的学生成绩个数。n的初值=0。,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,具体算法: (1)sum0; (

6、2)n0; (3)输入一个成绩c; (4)c+sumsum; (5)n+1n,表示已累加了一个学生的成绩; (6)若n100则返回(3),否则执行(7); (7)sum/nmean; (8)打印出平均分mean的值。,此算法 简单明确, 且可 灵活改变。,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,2.算法的流程图表示 算法可以用自然语言来表示,也可以用流程图来表示。 流程图能直观简明地描述算法,它由一些特定的几何符号、文字说明和流向线组成。 常用流程图符号,1.2 算法、C语言和程序设计,椭圆框(始止框), 表示程序的开始和结束 矩形框(处理框) 数据的处理和输入输出 菱形框

7、(判断框), 根据框内条件判断分支出口 调用框, 子程序、过程或函数调用 流向线, 指示程序的流向。 图间联系,1.2.1 算法和算法设计,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,画流程图要自上而下按执行顺序画下来。 各图形框内的文字符号描写要简明确切,不能有二义性 对于同一种操作可以有多种方式表达。如“0sum”、“ sum0”、“ sum=0”、 “将0放入sum中”、“使sum值为0”等都是表示同样的操作。,1.2 算法、C语言和程序设计,1.2.1 算法和算法设计,3算法的特性 (1)有穷性。 (2)确定性。 (3)有0个或多个输入量或者初始值,有1个或多个输出量。

8、所有算法涉及的数据,包括运算的中间结果和暂存数据,必须以变量的形式安排好存放的地方。一般变量有自己的标识,即变量名称。 (4)可执行性。,1.2 算法、C语言和程序设计,1.2.2 C语言及其特点,C语言是国际上广泛流行的高级语言 1C语言及其发展 C语言是在B语言的基础上发展起来的。 B (BCPL)语言是1970年由美国贝尔实验室设计的, 并用于编写了第一个UNIX操作系统,在PDP 7上实现。优点:精练,接近硬件,缺点:过于简单,数据无类型。 1973年,K.Thompson和D.M.Ritchie共同用C语言改写了90%以上的UNIX系统源代码,引起了计算机界对C语言的普遍关注。,1.

9、2 算法、C语言和程序设计,1.2.2 C语言及其特点,1975年Brian W.Kernighan和D.M.Ritchie合著The C Programming Language一书,为C语言在全世界范围内的推广与普及提供了一本很好的教科书,被世人誉为标准版本。从此,C语言便越来越受到软件工程人员的喜爱。 C语言的使用实践表明,C语言是一个非常成功的系统描述语言,适合于编写系统软件(如操作系统、编译软件等),又是一个相当有效的通用程序设计语言,适合于编写各种应用软件,如图形软件、控制软件等。 之后,C语言先后移植到大、中、小、微型计算机上,已独立于UNIX和PDP,风靡世界,成为最广泛的几种

10、计算机语言之一。,1.2 算法、C语言和程序设计,1.2.2 C语言及其特点,为提高互换性,美国国家标准学会(ANSI)对C语言进行了规范化,并于1987年公布了新标准87 ANSI C,得到了各国的承认,以后又发展为新的C语言标准,既ANSI X3.159-1989,简称C89。 1990年,国际标准化组织ISO接受C89为国际标准ISO/IEC 9899:1990,简称C90,以后修订为C95。 1999年,又扩充了一些面向对象的特征,命名为ISO/IEC 9899:1999,即C99。 目前流行的C编译系统如DOS系统下的MS C5.0、Turbo C 2.0/3.0,UNIX系统下的U

11、NIX 4.2BSD等都是以它为基础的。,1.2 算法、C语言和程序设计,1.2.2 C语言及其特点,随着计算机技术的发展,C语言本身也在不断地改进和发展。如C+就是在C基础上,扩充了面向对象的程序设计而发展为一种全新语言。 C+与C完全兼容,C+是C的超集,C是C+的子集。 现今普遍流行的基于可视化编程的Visual C+、Borland C+、网络编程语言JAVA等皆以C语言为基础。可以说,掌握了C语言,就掌握了深层应用计算机的本领。,1.2 算法、C语言和程序设计,1.2.2 C语言及其特点,2C语言的特点 优点: (1)C语言既具有一般高级语言的易读、易写、易查错等特点,又具有某些低级

12、语言的功能,它的这一特点使得它很适合编写需要直接与计算机硬件打交道的系统软件和控制软件。 (2)C语言是一种结构化程序设计语言,它主张程序模块化,采用函数调用方式来组成程序,非常方便模块化软件设计。,1.2 算法、C语言和程序设计,1.2.2 C语言及其特点,(3)C语言数据类型很丰富。有基本类型和构造类型等。特别是C的指针类型,它的强有力的功能与使用上的灵活成为C语言的特征。 (4)C语言的运算符极其丰富,有34种之多。除了拥有一般高级语言普遍具有的运算外,还有位运算及独具特色的自增自减、复合赋值等运算。 (5)C语言移植性好,其输入输出功能是通过系统提供的库函数完成的。 (6)C语言提供了

13、一组以“#”号打头的预处理命令,便于有效地组织和编译程序。 (7)语言简捷、紧凑、高效。,1.2 算法、C语言和程序设计,1.2.2 C语言及其特点,C语言也有不足的一面 如它对变量类型的不一致性不作语法上的严格检查, 对变量和指针、数组越界没有设置屏障, 某些运算(自增自减等)还带来副作用等。 因此,编程者不能过多地依赖编译程序找出错误,而要靠自己去保证程序的正确性,初学者应注意这点。 目前,C语言成了学习和使用人数最多的一种计算机语言,熟练掌握和应用C语言是从事计算机应用人员的必备技能。,1.2 算法、C语言和程序设计,1.2.3 用C语言编写程序实现算法,1例1.1求梯形面积的C程序 #

14、include “stdio.h” void main() /* 主函数,C程序的执行起点,该函数类型是void型 */ /* 说明语句部分 */ int a,b,h; /* 变量说明,设梯形的上底、下底和高为int型变量 */ float area; /* 变量说明,设area为实型变量(float型变量) */ /* 以下为执行语句部分 */ printf(“Input a,b,h:”); /* 提示输入a、b和h数据,末尾不换行 */ scanf(“%d,%d,%d”, /* 调用输出函数printf()输出结果,显示area=字样,n表示换行 */ ,1.2 算法、C语言和程序设计,1

15、.2.3 用C语言编写程序实现算法,1例1.1求梯形面积的C程序 #include “stdio.h” void main() int a,b,h; float area; printf(“Input a,b,h:”); scanf(“%d,%d,%d”, ,程序运行如下: Input a,b,h:5,8,3 area=19.500000,为什么不是(a+b)*h/2?,1.2 算法、C语言和程序设计,1.2.3 用C语言编写程序实现算法,2例1.2的C程序 #include “stdio.h” void main() char ch; ch=getchar() ; if (ch=a ,程序运

16、行如下: d D,1.2 算法、C语言和程序设计,1.2.3 用C语言编写程序实现算法,3例1.3的C程序 #include “stdio.h” void main() int temp,n; float total, aver; total=0; n=0; do scanf(“%d”, ,假定循环条件是n=5 程序运行如下: 85 92 73 76 81 average=81.400000,dowhile为循环控制语句,1.2 算法、C语言和程序设计,1.2.3 用C语言编写程序实现算法,4应用函数调用的C程序例 C程序中的函数实际上是一个具有一定功能的程序段或者程序模块,利用已有函数来实现程序的某些功能是C程序设计中常用到的高效率的编程方法。,1.2 算法、C语言和程序设计,1.2.3 用C语言编写程序实现算法,例1.4 求两个整数中的大数。,#include “

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

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

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