资源预览内容
第1页 / 共78页
第2页 / 共78页
第3页 / 共78页
第4页 / 共78页
第5页 / 共78页
第6页 / 共78页
第7页 / 共78页
第8页 / 共78页
第9页 / 共78页
第10页 / 共78页
亲,该文档总共78页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
语言程序设计教学软件bb湖南建材高等湖南建材高等 专科学校专科学校bb计算机科学系计算机科学系bb主讲:陈香兰主讲:陈香兰C语言程序设计主讲:湖南建材高等专科学校 计算机科学系系 陈香兰计本 0401 、2 班 C语言本课程属于计算机本科生必修考试课程n理论:60学时 地点: T1 教 室n实验:20学时 地点:实验中心n上课时间:每周4节(周一、周五)共15周 n(第16-17周进行课程设计)n若有免修者,提前向主讲教师声明,可待 期末参加考试。n根据学校规定,若有缺席占抽查出席次数 三分之一者,免去考试资格。n课程的性质与任务根据教学大纲要求:n C语言程序设计是计算机专业和非计算机 专业的公共基础课程。本课程实践性很强,既 要掌握概念,又要动手编程,还要上机调试运 行。同时,这门课程也是“湖南省非计算机专业 学生计算机应用能力水平考试”二级考试的主要 语种之一。 n 通过本课程的学习,使学生了解算法的基本 概念,会根据算法编制相应的程序,并初步掌 握软件开发的基本技巧,同时也为后继课程的 学习打下坚实的基础。n 本课程的先行课程为计算机应用基础。 是数据结构操作系统数学建模等 课程的前导课程。考试要求:n平时学习态度、完成作业情况、实验成绩与期 末考试成绩共同评定为课程总成绩。在考试中 ,对要求“了解”和“理解”的内容,可以采用选择 题、填空题、简答题的方式进行考核,对要求“ 会”、“掌握”和“熟练”的内容,可采用计算题、综 合题的方式进行考核。n1、期末闭卷考试占总成绩的70%-80%。n2、平时成绩(作业、上机实验和课堂考勤等)占总成绩的20%-30%。第一章 C 语言概述nC 语言是一种得到广泛重视并普遍应用的计 算机程序设计语言,也是国际上公认的最重 要的几种通用程序设计语言之一。n它即可以用来编写: 系统软件(操作系统、编译系统等。与 C同 时出现的多用户操作系统 UINX 现在都是 用 C 语言程序编制的)。 应用软件(C是工业控制单片机的开发语言 之一,图形处理)。 数据处理(如企业管理)。 数值计算等各个领域。1-1 C 语言出现的历史背景n从 1946 年世界第一台计算机诞生以来, 计算机使得世界技术发生了翻天覆地的变 化,计算机已作为一种文化渗透到世界每 一个角落。其中作为使用计算机的工具语 言对世界影响较大的有三种有:n汇编语言(机器语言)。n数据库。nC 语言。几种计算机语言简介n机器语言 n数据库管理系统 nFORTRAN nCOBOL nBASIC nALGOL60 nC机器语言(汇编语言) n所谓机器语言,是一种计算机的指令集合。 nZilog 公司的 Z80 微处理器(1975年)nMotorola 公司的 M6502 及以其为 CPU 的 APPLEII 计算机。 nIntel 公司的 8088 及以其为 CPU 的 IBM- PC 计算机。n8088 及 80386 成为现在流行的微型计算机 及汇编语言的主要教学和应用语言。 关系型数据库管理系统 n最成功的要属 1986 年美国 Fox Software公司推出的 FoxBASE+。 n其特点是:速度快,用户接口好,特别 适合于各种信息管理,如财务管理、物 资管理、档案管理、图书资料检索与管 理。 n现在常用的有 FoxBASE、FoxPro、VF 等 兼容系列。FORTRAN n数值计算语言nFormula Translation 公式翻译。 n计算机出现最早的科学计算的语言。从 1954年提出,曾在 60-90 年代初在全世界 得到最广泛的应用。n特点执行效率较高,标准化程度高,程序结 构灵活特点,但结构不精确。n进入 90 年代由 C 及 BASIC 语言取代。COBOL n通用商务语言 nCommon Business Oriented Language。 n1960 年由美国推出。n主要用于商务处理、企业管理等方面。 n由于编程规则众多繁琐、程序代码较 长、译成机器语言后效率低等缺点。 n当进入 90 年代后,COBOL 所工作的领 域被C 语言及数据库系统所取代。 ALGOL60 n算法语言。nAlgorithmic Language 。 该语言在 1958 年提出,1960 年确定标准。n它是经典(精确)语言中成功的一个。但由 于过于精密,执行效率低 40%,而 C 仅低 10%。n在 60-90 年代,一直是计算机系统的教学语 言。n直到 C 语言出现并广泛应用后,C 语言完全 取代了它。BASICn初学者通用符号指令代码。nBeginner s All-purpose Symbolic Instruction Coden1969 年提出,1971 年形成标准版本。n由美国 Dartmouth 学院 John Kemeny 和 Thomas Kurts 两位教授创立的。n语言简练,容易掌握。n有较强的会话功能和程序的编辑修改调试功 能。即有科学计算,又能进行非数值计算。n语言小,功能多但每一项都不是特别出色。计算机语言的发展简介n早期的操作系统等系统软件,主要是用 汇编语言编写的,它依赖于计算机硬件 ,程序的可读性和可移植性都很差。n若用高级语言来编写,又难以实现汇编 语言能直接对硬件进行操作的某些功 能。n为此,人们开始寻找一种即具有高级语 言特性,又具有低级语言特性的语言。 C 语言的发展简介n60 年代,计算机及其应用的飞速发展, 使得程序量越来越大。n而当时,汇编语言太难于编程,FORTRAN 语言又太不精确,使得程序的可靠性的 验证无法实现,出现了软件危机。n当时给人们的印象是:软件越来越大, 错误越来越多,交付日期越来越长,软 件越来越不可靠。 n1964 年提出了“计算机软件”的概念。n1968 年提出了“软件工程”的概念。n中心思想是如何研制大型软件,提高软件 生产率,使之具有较高的可靠性和可维护 性。n这时,人们自然想到一个优秀的、但又不 太合格的工具语言 ALOGL60,对它进行改 造的工作也就顺理成章的开始了。1-2 C 语言的特点n简洁、灵活,表达能力强,代码质量高 ,结构化程序,可移植性好。n具体可叙述如下:n例如 1.1:n main ( )n n printf(“This is a c program.n);n 、有32个关键字1)数据类型定义: typedef 类型定义 void 定义空类型1)数据类型: char 字符 double 双精度 enum 枚举 float 实型 int 整型 long 长整型 short 短整型 struct 结构体 union 共用体 unsigned 无符号整型3)存储方式: auto 自动 extern 外部 register 寄存器 static 静态3)运算符: sizeof 3)语句: if,else switch,case,default for,while,do break,continue goto return、有种控制语句1)条件语句:if( )else2)循环语句:for( )3)循环语句:while( )4)循环语句:dowhile( )5)结束本次循环语句:continue6)中止执行 switch 或循环语句:break7)多分支选择语句:switch8)转向语句:goto9)从函数返回语句:return3. 程序书写形式自由n一行可写多个语句,一个语句也可分写多 行。主要用小写字母表示。n压缩了一切不必要的成分。n使用一些简单、规整的方法,就可构造出 相当复杂、功能很强的数据类型、语句、 程序结构。n可进行运算符省写方式。n从语言内部实现角度看,C 没有其它高级 语言的输入输出语句、文件存取方式,代 之都通过显式函数调用来实现。C 与 BASIC 语言进行比较nC 语言 BASIC 语言n BEGINENDnif(e)s; IF e THEN snint i; I%nint a 10; DIM (10)nint f( ) 无nint *p 无ni+=g I=I+Gni+,+i I%=I%+1二、表达式灵活实用n具有一般高级语言使用的算术运算功能。nC 语言n具有单项运算功能:n如:a+、 b等。n复合运算功能:n如:+=、-=等。n提供了多种获得表达式值的方法:n赋值表达式、逗号表达式等。n对变量类型使用灵活:n整型、字符型、逻辑量等可以通用。三、表达能力强 1. 数据类型丰富n具有现代化语言所要求的各种数据类型 :n整型;n实型;n字符型n数组类型;n指针类型;n结构体类型;n共用体类型等。2. 可实现数据结构n上述数据类型实现各种复杂的数据结构 :n链表;n栈;n树等。3. 兼有低级语言功能n可直接访问物理地址。n能进行位操作。n可直接对硬件进行操作。n能实现汇编语言的大部分功能。n即可以用来开发应用软件,也可以用来 编写系统软件。四、语言生成的目标代码质量高 n目标代码效率仅比汇编语言低 10%20%。n描述问题迅速,工作量小,可读性好。n程序易于调试、修改和移植。n几乎成为当代系统软件开发的唯一工具。五、结构化程序设计n用函数作为程序设计的基本单位,实现程 序的模块化。允许一个程序分割为多个源 文件,并分别进行编译,再通过连接得到 可执行的目标程序文件。n提供了多种存储属性,使得数据可根据需 要在相应的模块中共享或隐藏。nC 语言还提供了多种结构化控制语句,如 用循环for、while、dowhile 语句,用 判定的 ifelse、switch 语句等。n十分便于采用自顶向下、逐步求精的结构 化程序设计技术。六、具有预处理能力 n#include(预编译命令#include )使程序设计时可引用数学函数等。n #define(宏定义:#define 标识符号 字符串)可指定标识符来代表一个字符串 ,例如:#define PI=3.1415926。n上述两个预处理命令实现对外部文件的包 含以及对字符串的宏定义。n还具有 #if#else 等条件编译预处理 语句。n这些功能的使用提高了软件开发的工件效 率,并为程序的组织和编译提供了便利。七、输入输出处理n提供标准输出函数 printf。n提供标准输入函数 scanf。n可使程序直接进行一般输入输出处理。八、程序可移植性好 n汇编语言因依赖于机器,不可移植。n而一些高级语言(如 FORTRAN、BASIC 等)的编译程序也不可移植。换机型需 要重新编写。nC 在不同机型上的出现,基本都是编译 移植得到的(统计资料表明:不同机器 上的 C 编译程序 80% 的代码是公共的 )。nC 编译程序便于移值,使得 C 语言编写 的程序基本上不用修改或稍加改动就能 在各种型号的计算机和各种操作系统环 境下运行。 九、不足 n运算符的优先级别较多,有些与常规约定不 同,不便记忆。n某些语法部分不易用形式化方法进行描述。nC 语言不是强类型的语言,它强调灵活、高 效的同时,在一定程度上牺牲了某些安全 性。n类型检验太弱。n不同数据类型转换比较随便。n上述这些,对程序员提出了更高的要求。C 语言的特点总结n总之:nC语言优点突出;n吸引人们越来越多的关心;n研究 C 语言的人正迅猛增加;n在国内外广泛使用;n优秀的 C 语言版本和配套工具软件不断涌 现。 1-3 简单的C程序介绍 main( ) printf(“This is a C program.n“ ); nmain表示“主函数”,每一个C程序都必须 有一个main函数。n函数体由大括号括起来。n“n”是换行符。n程序作用(执行结果):This is a C program.在屏幕上显示在屏幕上显示例1-2(P4)
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号