




已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,C语言程序教程,重庆工学院,2,课程要求,课程目标:正确理解和使用C语言的基本数据结构和语法运用结构化程序的思想去阅读和设计程序完成结构化程序的编写、调试的基本训练课程基本要求:学会使用C语言编译系统,学会上机调试C程序C语言概念和方法要清楚,书上的例子要明白掌握程序设计的一般方法和思想、常用算法认真完成作业,3,课程特点C是基础:接触各种数据类型及表达式、基本语句语法、常用函数C程序设计:基本算法和案例程序的融合后续课程C+程序设计、面向对象程序设计、数据结构与算法分析、操作系统(UNIX)学什么语言及程序设计概述数据类型、运算符与表达式简单程序设计(顺序、选择、循环结构程序设计)数组函数指针结构体与共用体文件,4,教学方法如何教理论课:重点讲授主要算法和程序案例实验课:验证式实验教学,实现算法程序习题课:分析复杂程序案例学习方法如何学课前预习:书中主要语句、函数、例题课后复习:教案中重点例题认真独立完成作业上机前必须完成基本程序多读、多看、多写程序,5,第一章C语言的发展及其特点和应用,本章要求:了解C语言的特点、与其它高级语言间异同;了解C程序在PC机上的建立、编译和运行过程;了解C语言程序设计思想;重点:C语言的主要特点;C语言在PC机上的运行过程及上机操作过程;常用算法的应用,6,0.回顾下计算机相关知识,.计算机定义:计算机是一种在事先存入程序的控制下,能够接收数据、存储数据、处理数据并提供处理结果的数字化电子设备。,2.计算机工作流程图,7,3.计算机内所有的信息(多媒体信息)采用二进制代码表示,称为机器数。机器数有三种不同的编码形式:原码、反码和补码。4.采用二进制的原因:1)二进制只含有两个数字0和1,因此可用大量存在两种不同稳定状态的元件来表示。2)二进制数的运算规则简单,使得计算机中的运算部件的结构变得比较简单。5.计算机中信息的表示数值直接转换为二进制字符采用ASCII编码(7位、美国标准信息交换码)其它信息(汉字、图形、图象、声音、表格)也有相应的编码标准和规则。,8,6.计算机系统的组成,9,程序设计语言发展,10,程序执行,11,1.1.1C语言的发展,C语言是在研制UNIX操作系统过程中诞生,伴随着UNIX操作系统的发展而流行ALGOL60B语言C语言(UNIX)ANSIC(1983)目前最流行的语言有以下几种:MicrosoftC或称MSCBorlandTurboC或称TurboC(本教材选用)AT其中%f为格式字符,表示按实数处理。它在格式串中两次现,分别对应了x和y两个变量。其余字符为非格式字符则按原样输出在屏幕上。,18,程序运行结果:inputtwonumbers:a,b5,9max=9,例1.3求两个数的最大值。,19,程序分析:,程序的功能是由用户输入两个整数,程序执行后输出其中较大的数。本程序由两个函数组成,主函数和max函数。函数之间是并列关系。可从主函数中调用其它函数。max函数的功能是比较两个数的大小,然后把较大的数返回给主函数。max函数是一个用户自定义函数,其返回值类型是整型。因此在主函数中要给出说明。在程序的说明部分中,不仅可以有变量说明,还可以有函数说明。在程序的每行后用/*和*/括起来的内容为注释部分,程序不执行注释部分。上例中程序的执行过程是,首先在屏幕上显示提示字符串,请用户输入两个数,回车后由scanf函数语句接收这两个数,并送入变量a,b中,然后调用max函数,把a,b的值传送给max函数的参数x,y。在max函数中比较x,y的大小,把大者通过中间变量m返回(returnm)给主函数的变量c,最后在屏幕上输出c的值。,20,2.C程序结构特点,通过上述例子,可以对源程序的结构特点归纳如下1)一个语言源程序可以由一个或多个源文件组成。2)每个源文件可由一个或多个函数组成。(main主函数、系统提供printf、scanf函数、用户定义max函数)3)一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。程序总是从main()处开始执行,而不管main()在源文件中的位置。4)源程序中可以有预处理命令(include命令仅为其中的一种),预处理命令通常应放在源文件或源程序的最前面。5)每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“”之后不能加分号。6)C语言用函数进行输入输出,如printf(),scanf()。7)C语言用/*/或/作注释。注释部分便于阅读程序的人理解程序员的设计意图,这是一个良好的习惯。8)C程序书写格式自由,一个语句可以占多行,一行也可以有多个语句。,21,3.书写C程序时应遵循的规则,从书写清晰,便于阅读,理解,维护的角度出发,在书写程序时应遵循以下的规则:1)一个说明或一个语句单独占一行。2)用括起来的部分,通常表示了程序的某一层次结构。一般与该结构语句的第一个字母对齐,并单独占一行。3)低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来层次清晰、结构明了,增加程序的可读性。,22,4.语言的字符集,字符是组成语言的最基本的元素。语言字符集由字母,数字,空格,标点和特殊字符组成。在字符常量,字符串常量和注释中还可以使用汉字或其它可表示的图形符号。1)字母小写字母az共26个,大写字母AZ共26个,2)数字09共10个3)空白符空格符、制表符、换行符等统称为空白符。空白符只在字符常量和字符串常量中起作用。在其它地方出现时,只起间隔作用,编译程序对它们忽略不计。因此在程序中使用空白符与否,对程序的编译不发生影响,但在程序中适当的地方使用空白符将增加程序的清晰性和可读性。4)标点和特殊字符,23,1.3算法表示方法,1.基本概念介绍做任何事情都有一定的步骤。为解决一个问题而采取的方法和步骤,就称为算法。在详细展开算法内容前,先介绍几个基本概念。程序数据结构+算法。数据结构是程序中用到的数据的构造形式及其类型。对于面向对象程序设计,强调的是数据结构,而面向过程的程序设计语言如C语言,主要关注的是算法。算法是程序的核心,也是面向对象程序设计的基础。,24,结构化设计是指任何复杂的程序皆可由顺序、分支、循环三种基本结构组成。程序设计的一般步骤是:设计算法描述算法编写程序检查程序编译调试和运行程序。由此,对于程序的概念,我们可以这样理解:程序算法+数据结构+程序设计方法+语言工具和环境程序设计的关键是解题的方法与步骤算法。算法可分为两大类:数值运算算法和非数值运算算法。数值运算算法:即求数值解,通过运算得出一个具体值,数值运算一般有现成的模型,算法较成熟。非数值运算算法:用于事务管理,如图书检索、人事管理等。具体对语言而言,其语法就是工具,是算法的一个具体实现和描述。,25,先看两个常用的简单算法:,例1.4累加,求:1+2+3+4+5+100。第一步:1+2S(结果)第二步:S+3S(结果)第三步:S+4S(结果)第九十九步:S+100S(结果)这样的算法虽然正确,但太繁琐。改进的算法:第一步:令x1;第二步:令i2;第三步:使x+i,和仍放在x中,可表示为x+ix;第四步:使i的值+1,即i+1i。第五步:若i100,返回重新执行步骤第三步以及其后的第四步和第五步;否则,算法结束。,26,例1.5有10个工人,要求查找其中工资高于1500元的人员,并输出。算法分析:如用n表示工人序号,ni表示第i个工人的序号,g表示工人的工资,gi表示第i个工人的工资。算法表示:第一步:1i。第二步:如果gi1500,则打印ni和gi,否则不打印。第三步:i+1i。第四步:若i10,返回第二步,否则结束。,一个优秀的算法应该具备以下特性:有穷性、确定性、有零个或多个输入、有一个或多个输出、有效性。,27,2.常用算法的表示方法,算法的表示方法有很多种,常用的有:自然语言描述、伪代码、流程图、NS图等。在这里重点介绍流程图和NS图。用流程图表示算法一个流程图包括:表示相应操作的框,带箭头的流程线,框内外必要的文字说明。几何图形框的含义如下图所示。,28,例1.6用流程图表示例1.4和1.5,29,一个流程图,包括以下几部分:表示相应操作的框;带箭头的流程线;框内外必要的文字说明;注意,画流程线时,不要忘记画箭头,因为它是反应流程的执行先后次序的,如不画出箭头就很难判断各框的执行次序了。,30,根据结构化程序设计的思想,任何一个程序都由顺序、循环、选择三种基本结构组成,其流程图结构如下所示。,顺序结构,循环结构,选择结构,31,用N-S流程图表示算法,顺序结构,选择结构,循环结构,32,用计算机语言表示算法,例1.7用C语言改写示例1.4,例1.8用C语言改写示例1.5,33,1.4运行C语言程序的基本步骤,程序开发过程,34,写好一个程序后,要经过这样几个步骤:上机输入与编辑源程序对源程序进行编译与库函数连接运行目标程序。如下图所示,其中实线表示操作流程,虚线表示文件的输入输出。,35,TurboC+3.0集成开发环境,36,小结,C语言程序是由一系列函数组成的模块结构。C语言程序的书写格式自由、有较大的灵活性,但一般应采用一定的格式书写,养成良好的编程风格。C语言是一种编译型的高级程序设计语言,其开发过程包括:编辑、编译、连接、运行四个步骤。具体操作应参阅操作系统支撑环境的有关资料。,37,作业,复习1.2,1.3熟悉和理解1.3,掌握1.3中提到的常用算法的思路和解决问题的步骤,38,C语言运行环境,TurboC2.0版本编译系统启动的命令如下:进入开机画面第二项win98在win98下四个选项中进入realdos项C:tc回车退出该系统时,先选择主菜单File,再在其下拉菜单中选择Quit子菜单项,或直接按下【Alt+X】键,便可退出该系统。,39,常用命令有:“Ins”键用来设置“插入”或“修改”方式。在“插入”方式下,从键盘上键入的字符被插入在当前光标之前;在“修改”方式下,从键盘上键入的字符将替代当前光标处的字符。“Del”键用来删除光标所在的字符。使用光标键可以上下左右移动光标。使用“Ctrl+N”组合件可在当前光标所在行上插入一空行。使用“Ctrl+Y”组合键可删除当前光标所在行。使用退格键可删除当前光标前一个字符。,40,基本操作:F10-调用主菜单F2-存盘F3-打开Alt
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 乘用车汽车零部件生产项目建筑工程方案
- 跨境视角下的2025年社区老年日间照料健康管理平台构建策略
- 业财融合视角下企业全面预算管理体系优化
- 家具门店营销策划方案
- 简约家居咨询报价方案
- 松江区整合营销方案
- 专用教室搭建咨询方案
- 跨境童鞋电商本土化市场布局与品牌竞争力分析报告
- 优化方案咨询机构
- 私立医院康复治疗师聘用与业务拓展协议
- 小学生兴趣英语课件
- 【MOOC】国际金融学-湖南大学 中国大学慕课MOOC答案
- 九年级化学人教版基于特定需求设计和制作简易供氧器(教学设计)
- SCAMPER创新思维模型
- 乡镇庆中秋迎国庆活动方案
- 山东科学技术出版社小学一年级上册综合实践活动教案
- DL∕T 1281-2013 燃煤电厂固体废物贮存处置场污染控制技术规范
- 思念混声合唱简谱
- 家庭健康指导员培训方案及流程
- 机械制图教案(完整版)
- 贷款的培训课件
评论
0/150
提交评论