《《C程序设计》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《C程序设计》PPT课件.ppt(20页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、1/10/2023教材、参考书与课时安排教材、参考书与课时安排教材C高级实用程序设计 王士元 清华大学出版社C程序设计 谭浩强编著 清华大学出版社参考书C语言程序设计教程 谭浩强 高等教育出版社课时安排授课 :58学时C综合编程训练:18学时1/10/2023课程要求课前请做好预习保持课堂安静,头脑清醒,思维活跃认真、独立、按时完成并提交作业重视上机实践,有效利用宝贵的上机时间1/10/2023第第一一章章 C 语语 言言概概述述 C C语言出现的历史背景语言出现的历史背景 C C语言的特点语言的特点 简单的简单的C C程序介绍程序介绍 C C程序的上机步骤程序的上机步骤 习习 题题1/10/
2、2023 以前的操作系统等系统软件主要是用汇编语言编写的。由于汇编语言依赖于计算机硬件,程序的可读性和可移植性都比较差。为了提高可读性和可移植性,最好改用高级语言,但是一般高级语言难以实现汇编语言的某些功能。人们设想能否找到一种既具有一般高级语言特性,又具有低级语言特性的语言。于是,介于高级语言和低级语言之间的c程序设计语言(简称c语言)就在迅速发展起来。它适合于作为系统描述语言,既可以用来写系统软件,也可用来写应用软件。1.1.汇编语言汇编语言的可读性和可移植性都比较差。的可读性和可移植性都比较差。2.2.高级语言无法对硬件进行直接操作。高级语言无法对硬件进行直接操作。C 语语言言出出现现的
3、的历历史史背背景景1/10/2023 C不仅仅是系统描述语言,而且是一种通用的程序设计语言,C出现于1972年至1973年间,是BCPL语言和B语言的后继,故命名为C。ALGOL 60(1960年)|CPL(1963年)(剑桥和伦敦大学)|BCPL(1967年)(Martine Richards,剑桥)|B语言(1970年)(Ken Thompson,贝尔实验室)|C语言(Dennis Ritchie,贝尔实验室)(与UNIX在发展过程中相辅相成)C C 语语言言的的发发展展历历程程1/10/2023 程序设计语言有许多种类,每一种类都有其特殊功能和其应用范围。C语言之所以成为当今世界上最流行
4、的几种语言之一,其特点如下:1、语言简洁、紧凑,使用方便、灵活,32种关键字(附录II),9 种控制语句。2、运算符丰富,有 34 种运算符(附录III)。3、数据类型丰富,具有现代化语言的各种数据类型。4、具有结构化的控制语句(见目录),用函数实现程序的模块化,标准函数(附录V)。C C 语语 言言 的的 特特 点点(一)(一)1/10/20235、语法限制不太严格。6、允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。7、生成目标代码的质量高,程序执行效率高。8、与汇编语言相比,用编写的程序可移植性好。C 语语 言言 的的 特特 点点(二)(二)1/1
5、0/2023C C 程程序序 的的上上 机机步步 骤骤1.分析问题2.解题步骤3.选择语言工具编码4.目测正确性5.上机输入与编辑6.编译7.调试8.与库函数等连接9.运行*本课程以Turbo C为语言环境源程序exp1.c目标程序exp1.obj库函数和其他目标程序开始编辑编译连接执行有错结果正确结束可执行目标程序exp1.exeYYNN1/10/2023/*sample 1_1*/main()/*输出字符串输出字符串*/printf(“Hello!n”);/*输出字符串输出字符串*/简简 单单的的 C程程 序序介介 绍绍(一一)其中:1.main()表示“主函数”,每一个c程序都必须有ma
6、in函数函数体由 括起来。2.printf是c语言中的输出函数,双引号中的字符串原样输出。3.“n”是换行符。4.每个语句最后要有一个 分号 ;。1/10/2023/*Sample 1_2 */main()/*求和程序1*/int a,b,sum;/*定义变量2*/a=123;b=456;/*给a,b分别赋值3*/sum=a+b;/*求出a和b的和,把和放在变sum中4*/printf(“sum is%dn”,sum);/*输出结果5*/*6*/简简 单单的的 C程程 序序介介 绍绍(二二)1.本程序的作用是求两个整数a和b之和sum。/*/表示注释部分,起说明的作用,不影响 编译和运行。注释
7、可以加在程序的任何位置。2.第2行是声明部分,定义变量a和b;3.第3行是两个赋值语句;4.第4行是求和,并保存值5.第5行中%d是输入输出的“格式字符串”,用来指定输入输出 时的数据类型和格式。(见第4章)1/10/2023简简 单单的的 C程程 序序介介 绍绍(三三)/*Sample 1_3*/int max(int x,int y)/*max子函数子函数*/int z;if (xy)z=x;else z=y;return(z);/*返回值放在返回值放在z中中*/main()int a,b,c;scanf(%d,%d,&a,&b);/*分别输入数到分别输入数到a和和b中中*/c=max(a
8、,b);/*调用子函数求出最大数调用子函数求出最大数*/printf(max=%d,c);1/10/20231.本程序包括两个函数:主函数main和被调用的函数max。2.max函数的主要功能是将x和 y中的较大者的值赋给变量 z。3.return语句将 z的值返回给主调函数main。返回值是通过max带回到调用处。4.scanf是“输入函数”的名字。1/10/2023小小结结-C程程序序的的结结构构C C程序的组成和形式简单总结如下:程序的组成和形式简单总结如下:1 1、C C程序由函数构成:程序由函数构成:一个程序至少包含一个函数,是函数式的语言,其函数库非常丰富。容易实现程序的模块化。2
9、 2、函数由两部分组成:函数由两部分组成:函数的说明部分函数的说明部分-包括函数名、类型、形参名、形参类型等。函数名后必须跟一对圆括函数参数可以没有。函数体函数体-即最外层大括号括起的部分。1/10/2023函数体一般包括:变量定义变量定义:定义所要使用的变量的类型等。执行部分执行部分:由若干语句组成。*允许没有变量定义部分,甚至允许没有 执行部分,即一个空函数。如:kong()1/10/2023小小 结结-C 程程序序 的的结结 构构 3、在一个函数中可以调用其他的函数。4、总是从main函数开始执行。5、书写格式自由。6、每个语句和数据定义的后面必须有一个分号。7、对输入输出实行函数化。8
10、、可以用/*/形式作注释。1/10/2023注:注:1.main表示主函数2.每个C程序都必须有main函数3.大括号 表示函数体的开始和结束4.分号表示语句的结束5.一行可以写一个语句或几个语句6.C语言本身没有输入输出语句,而是调用库函数来实现数据的输入输出7.可以用/*/形式作注释。1/10/2023习习题题(1)一、选择题.一个c程序的执行是从()A.本程序的main函数开始到main函数结束B.本程序的第一个函数开始到本程序的最后一个函数结束C.本程序的main函数开始到本程序的最后一个函数结束D.本程序的第一个函数开始到main函数结束.以下叙述正确的是()A.在c程序中,main
11、函数必须位于程序的最前头B.C程序的每行中只能写一条语句C.C语言本身没有输入输出语句D.在对一个c程序进行编译的过程中,可发现注释中的拼写错误 A C1/10/20233、以下叙述不正确的是()A、一个c源程序可由一个或者多个函数组成B、一个c源程序必须包含一个main函数C、C程序的基本组成单位是函数D、在c程序中,注释说明只能位于一条语句的后面4、c语言规定:在一个源程序中,main函数的位置()A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后 DC1/10/2023返回习习 题题(2)5.一个c语言程序是由()A.一个主程序和若干子程序组成B.函数组成C.若干过程组成D.若干子程序组成E.二、填空题1.C源程序的基本单位是()2.一个c程序中至少包含一个()3.在一个 c源程序中,注释部分两侧的分界符分别为()和()4.在c语言中,输入操作是由库函数()5.完成的,输出操作是由库函数()完成的B 函数函数 主函数或主函数或main函数函数 /*/printf scanf1/10/2023
限制150内