欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载  

    《C语言程序设计与数据结构》课件第01章.ppt

    • 资源ID:2152608       资源大小:725.01KB        全文页数:47页
    • 资源格式: PPT        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《C语言程序设计与数据结构》课件第01章.ppt

    C语言程序设计与数据结构,刘信杰 李艳 主编 中国水利水电出版社,第1章 语言概述,教学提示: C语言是一门很优秀的程序设计语言,它本身是一门高级语言,同时又具有低级语言的某些优点,所以,它既可以用来书写系统程序,也可以用来书写应用程序。C语言的基本单位是函数。一个C程序是由一个名为main的主函数和零到多个其他函数组成。函数可以是系统提供的库函数,也可以是自己编写的函数。C语言提供了大量的库函数,以减轻编程人员的工作量。 教学要求: 本章主要了解C语言的发展历史、C语言的特点,理解并掌握C程序的基本结构。初步掌握Visual C+ 6.0系统的集成开发环境。 本章主要介绍C语言程序的结构和书写规则,以及Visual C+的基本操作。,1.1 C语言的发展简史和特点,程序设计的基本概念 程序:是控制计算机工作的一条条有序指令的集合。 程序设计语言:是编写程序的工具,是软件系统重要的组成部分,又称为计算机语言。 一般可分为机器语言、汇编语言和高级语言3类。,1语言的诞生与发展 (1)在C语言诞生以前,系统软件主要是用汇编语言编写的。由于汇编语言程序依赖于计算机硬件,其可读性和可移植性都很差;但一般的高级语言又难以实现对计算机硬件的直接操作(这正是汇编语言的优势),于是人们盼望有一种兼有汇编语言和高级语言特性的新语言。,中级语言,高级语言,C,汇编语言,(2)语言是贝尔实验室于70年代初研制出来的,后来又被多次改进,并出现了多种版本。80年代初,美国国家标准化协会(ANSI),根据语言问世以来各种版本对语言的发展和扩充,制定了ANSI C标准(1989年再次做了修订)。 本书以ANSI C新标准来介绍。,(3)目前,在微机上广泛使用的语言编译系统有Microsoft C、Turbo C 、Borland C、Visual C+等。虽然它们的基本部分都是相同的,但还是有一些差异, 所以请大家注意自己所使用的编译系统的特点和规定(参阅相应的手册)。 本书选定的上机环境是Visual C+ 6.0。 2C语言的特点 C语言同时具有汇编语言和高级语言的优势。 (1)语言简洁、紧凑,使用方便、灵活。ANSI C共有32个关键字,9种控制语句,主要用小写字母表示(注意:在C语言中是严格区分大小写的。)。程序书写形式自由,既可以一行一句,也可一行多句,甚至一句也可分写在多行上。,(2)运算符极其丰富。C语言有34种运算符,涵盖范围广,可以实现在其他高级语言中难以实现的运算。 (3) 丰富的数据类型。C语言的数据类型有13种,特别是具有数据类型构造能力,它可以在基本类型(如字符型、整型、实型等)的基础上按层次构造各种构造类型(如数组、指针、结构体、共用体等),足以用来实现各种复杂的数据结构(如栈、链表、队列、树等)的运算。尤其是指针类型数据,功能非常强大。 (4) 具有结构化的控制语句。C语言有if else,while,do while,for,switch等语句以适应结构化的程序设计,符合现代编程风格要求。,(5) 可以直接操作硬件。能进行位(bit)操作,实现汇编语言的大部分功能。C语言有时也被称为中级语言,是因为它把高级语言的最佳成分同汇编语言的控制和灵活性巧妙地结合在了一起。正是C语言的这种双重特性,使它既能用来书写系统程序,也能用来书写应用程序。 (6) 生成的目标代码质量高。试验表明,针对同一问题,用C语言描述的代码效率只比汇编语言低1020%。 (7) 可移植性好。所谓可移植是指程序从一个环境不加或稍加改动就可搬到另一个不同的环境上运行。统计资料表明,不同机器上的C编译程序80%的代码是公共的。这就使得用C语言编写的程序,基本上不加修改就能用于各种型号的计算机和各种操作系统。,3. 在C语言中,除实现顺序、选择和循环三种基本结构等的9条控制语句外,输入输出操作均由标准库函数(不是C语言的组成部分)来实现。 所以学习C语言,不仅要学习这9条控制语句和各种运算符,而且要学习并掌握常用标准库函数的使用。,语言程序的结构与书写规则,语言程序的总体结构 一个完整的语言程序,是由一个main()函数(又称主函数)和若干个其它函数结合而成的,或仅由一个main()函数构成。 案例1.1 仅由main()函数构成的语言程序。 /*案例代码文件名:AL1_1.C*/ /*功能:仅由main()函数构成的语言程序示例*/ main() printf(“This is a C program.n”); 程序运行结果: This is a C program. (程序演示),案例1.2 由main()函数和1个其它函数max()构成的语言程序。 /*案例代码文件名:AL1_2.C*/ /*功能:由main()函数和1个其它函数max()构成的语言程序示例*/ int max(int x, int y) return( xy ? x : y ); main() int num1,num2; printf(“Input the first integer number: ”); scanf(“%d”, 程序运行情况: Input the first integer number:6 Input the second integer number:9 max=9 程序演示,案例1.3 改写案例1.2,交换main()函数和max()函数的前后位置。 源程序略。 程序运行情况: Input the first integer number:6 Input the second integer number:9 max=9 1.函数是语言程序的基本单位。 main()函数的作用,相当于其它高级语言中的主程序;其它函数的作用,相当于子程序。 2.C语言程序总是从main()函数开始执行。 一个语言程序,总是从main()函数开始执行,而不论其在程序中的位置。当主函数执行完毕时,亦即程序执行完毕。 习惯上,将主函数main()放在最前头。,1.3.2 函数的一般结构 任何函数(包括主函数main())都是由函数说明和函数体两部分组成。其一般结构如下: 函数类型 函数名(函数参数表) 函数说明部分 说明语句部分; 执行语句部分; 函数体部分 1. 使用的语法符号约定 .方括号表示可选(即可以指定,也可以缺省) 省略号表示前面的项可以重复 | 多(含2)中选1 2.函数说明 由函数类型(可缺省)、函数名和函数参数表三部分组成,其中函数参数表的格式为: 数据类型 形参, 数据类型 形参2,例如,案例1.2中的函数max(),其函数说明各部分如图1-1所示。 函数类型 函数名 函数参数表 int max ( int x , int y ) 图1-1 函数说明部分结构图 注意:在旧标准中,函数可以缺省参数表。 3.函数体 在函数说明部分的下面、大括号(必须配对使用)内的部分。 函数体一般由说明语句和可执行语句两部分构成: (1)说明语句部分 说明语句部分由变量定义、自定义类型定义、自定义函数说明、外部变量说明等组成。,(2)可执行语句 一般由若干条可执行语句构成。图1-2是案例1.2的main()函数体的示意图。 /*主函数main()*/ main() int num1,num2; 变量定义部分 printf(“Input the first integer number: ”); scanf(“%d”, 图1-2 函数体结构示意图 4.说明 (1)函数体中的变量定义语句,必须在所有可执行语句之前。 下面程序中变量定义语句“int max;”的位置是非法的:,main() int x,y; /*变量定义语句:定义2个整型变量x、y*/ x=3; /*可执行的赋值语句:将3赋值给变量x*/ y=6; /*可执行的赋值语句:将6赋值给变量y*/ int max; /*变量定义语句:出现在可执行的 赋值语句“x=3;”和“ y=6;”之后,非法!*/ max=xy?x:y; printf(“max=%dn”,max); 解决办法很简单,请读者自己思考。 (2)如果不需要,也可以缺省变量定义语句。 1.3.3 源程序书写格式 1.所有语句都必须以分号“;”结束,函数的最后一个语句也不例外。 2.程序行的书写格式自由,既允许1行内写几条语句,也允许1条语句分写在几行上。,例如,案例1.2的主函数main(),也可改写成如下所示的格式: main() int num1,num2; printf(“Input the first integer number: ”); scanf(“%d”, 如果某条语句很长,一般需要将其分写在几行上。 3.允许使用注释。 C语言的注释格式为: /* */ 例如,在案例1.1和案例1.2中,以及本节其它部分给出的源程序中,凡是用“/*”和“*/”括起来的文字,都是注释。 (1) “/*”和“*/” 必须成对使用,且“/”和“*”、以及“*”和“/”之间不能有空格,否则都出错。,技巧:为避免遗漏必须配对使用的符号,例如注释符号、函数体的起止标识符(花括号)、圆括号等等,在输入时,可连续输入这些起止标识符,然后再在其中进行插入来完成内容的编辑。在起止标识符嵌套时,以及相距较远时,这样做更有必要。 (2)注释的位置,可以单占1行,也可以跟在语句的后面。 (3)如果1行写不下,可另起1行继续写。 (4)注释中允许使用汉字。在非中文操作系统下,看到的是一串乱码,但不影响程序运行。,C语言的语句和关键字,C语言的语句 与其它高级语言一样,语言也是利用函数体中的可执行语句,向计算机系统发出操作命令。按照语句功能或构成的不同,可将语言的语句分为五类。 1.控制语句 控制语句完成一定的控制功能。语言只有条控制语句,又可细分为三种: ( 1)选择结构控制语句 if()else, switch() (2)循环结构控制语句 dowhile(), for(), while(), break, continue,(3)其它控制语句 goto, return 2. 函数调用语句 函数调用语句由一次函数调用加一个分号(语句结束标志)构成。 例如,printf(“This is a C function statement.“); 3. 表达式语句 表达式语句由表达式后加一个分号构成。最典型的表达式语句是,在赋值表达式后加一个分号构成的赋值语句。 例如,“num=5 ”是一个赋值表达式,而“num=5;”却是一个赋值语句。 4. 空语句 空语句仅由一个分号构成。显然,空语句什么操作也不执行。,例如,下面就是一个空语句: ; 5. 复合语句 复合语句是由大括号括起来的一组(也可以是1条)语句构成。例如: main() /*复合语句。注意:右括号后不需要分号。*/ 复合语句的性质: (1)在语法上和单一语句相同,即单一语句可以出现的地方,也可以使用复合语句。 (2)复合语句可以嵌套,即复合语句中也可出现复合语句。,关键字 C语言的关键字共有32个,根据关键字的作用,可分其为数据类型关键字、控制语句关键字、存储类型关键字和其它关键字四类。 (1)数据类型关键字(12个):char, double, enum, float, int, long, short, signed, struct, union, unsigned, void (2)控制语句关键字(12个):break, case, continue, default, do, else, for, goto, if, return, switch, while (3)存储类型关键字(4个):auto, extern, register, static (4)其它关键字(4个):const, sizeof, typedef, volatile,1.4 VC6.0的基本操作,1.运行一个语言程序的一般过程 2.VC的启动、退出与命令菜单 3.编辑并保存一个语言源程序 4.编译、连接单个源程序文件 5.运行与查看结果 6.编辑下一个新的源程序,1.运行一个语言程序的一般过程 VC是一个集源程序编辑、编译、连接、运行与调试于一体、 用菜单驱动的集成软件环境。 运行一个语言程序的一般过程: (1)启动VC,进入VC集成环境。 (2)编辑(或修改)源程序。 (3)编译。如果编译成功,则可进行下一步操作;否则,返回第(2)步,修改源程序,再重新编译,直至编译成功。 (4)连接。如果连接成功,则可进行下一步操作;否则,根据系统的错误提示,进行相应修改,再重新连接,直至连接成功。 (5)运行。通过观察程序运行结果,验证程序的正确性。如果出现逻辑错误,则必须返回(2)修改源程序,再重新编译、连接和运行,直至程序正确。 (6)退出VC集成环境,结束本次程序运行。,1.4.1 Visual C+简介 1、进入Visual C+工作环境 双击windows桌面上Visual C+图标;或单击windows桌面上的“开始”按钮,在“程序”中选择Visual C+运行即可。 2、Visual C+ 的集成开发环境介绍 Visual C+软件包包含了许多独立的组件,如编辑器、编译器、连接器、实用程序生成器、调试器,以及各种各样为开发Windows 环境下的C/C+程序而设计的工具,其中最重要的是一个名为Developer Studio的集成开发环境。Developer Studio把所有的Visual C+工具结合在一起,集成为一个由窗口、对话框、菜单、工具栏、快捷键及宏组成的和谐系统,通过该集成环境,程序员可以观察和控制整个开发进程。,从图1.1中可以看出,Developer Studio主窗口可以分成几个部分:窗口顶部是菜单和工具栏,左面的一个子窗口是工作区窗口,工作区窗口的右面是编辑子窗口。最下面是输出子窗口,值得注意的是,上述各种部件,包括子窗口、菜单栏和工具栏的位置不是一成不变的,可根据个人的喜好重新安排。,(1) 菜单和工具栏 Developer Studio中有一个Menu Bar(菜单栏,通常位于开发环境窗口的顶部),其中的菜单项有File (文件处理) 、Edit( 编辑功能)、view(查看)、Insert(插入)、Project(项目管理)、Build(编译)、Tools(工具)、Window(窗口) 和 Help(帮助)等,分别对应一个下拉子菜单。 除菜单栏列外,开发环境中还有几个工具栏,一般均放在开发环境的顶部、菜单栏的下方。如Standard (标准工具栏,用于文件管理、编辑和查看等),Wizard Bar (向导工具栏)和 Build MiniBar (建立工具栏,用于编译、连接等)。工具栏上有常用命令的图标。一般来说, 工具栏上的命令在菜单中均有对应选项,但工具栏使用更方便,只要用鼠标左键点击工具栏中的相应图标即可调用相应的功能。,开发环境的各种菜单栏和工具栏均为停靠式,可以用鼠标拖动改变它们的位置,也可使用菜单选项Tools/Customize( 表示菜单栏的Tools子菜单中的Customize选项,下同) 中的Toolbars 选项打开或关闭相应的工具栏,或修改工具栏的内容。 除此之外,Developer Studio的所有部分几乎都可响应鼠标右键单击而弹出一个上下文相关菜单。甚至当Developer Studio没有打开窗口时, 在空白区右击鼠标也会弹出一个菜单, 其中含有使窗口可见和调整工具栏是否可见的命令。在工具栏上除标题栏外的任何地方右击鼠标,同样可以弹出菜单。在使用集成环境工作时试一试鼠标右键,还会发现许多其他的快捷方式。例如,通过在工具栏或菜单栏上不是按钮或菜单名的地方单击并保持鼠标按键被按下,就可以把它们拖动到屏幕上新的地方。,(2) Developer studio 窗口 除了各种对话框外,Developer Studio显示两种类型的窗口,即文档窗口和停靠窗口。文档窗口是一般的带边框子窗口,其中含有源代码文本或图形文档。窗口子菜单中列出了在屏幕上是以平铺方式还是以层叠方式显示文档窗口的命令。所有其他的Developer Studio 窗口,包括工具栏和菜单栏,都是停靠式窗口。开发环境有两个主要的停靠窗口Workspace (工作区) 窗口和Output (输出) 窗口,另外还有一个Debugger (调试器) 停靠窗口,只在调试过程中显示。 停靠窗口可以固定在Developer Studio用户区的顶端、底端或侧面,或者浮动在屏幕上任何地方。停靠窗口(不论是浮动着的或是固定着的)总是出现在文档窗口的上面。这样, 就保证了当焦点从一个窗口移到另一个时,浮动的工具栏一直都是可见的。但这也意味着, 文档窗口偶尔会看起来像消失了似的。例如,如果你正在文本编辑器中编辑源代码,此时打开一个占据整个Developer Studio用户区的停靠窗口,源代码文档就会消失,它隐藏在新窗口之下。解决方法是要么关了覆盖的窗口,要么把它拖到不挡眼的地方去。,Visual C+运行C程序的上机步骤,1、创建一个新的工程文件(Project file) 启动Visual C+编译系统后,出现Microsoft Developer Studio窗口。 (1) 单击“File”菜单,在其下拉菜单中选择“New”,如图1.2。屏幕上出现一个New对话框,在该对话框中选择Projects(项目)标签,出现一个界面如图1.3。,(2) 从弹出窗口中选择工程类型为 Win32 Console Application (32 位控制台应用程序) 。这时在右边的Platforms选框中就会出现Win32。 (3) 输入工程/项目的名字。为你的应用项目取一名字,填写在弹出窗口中右上方的 Project Name(项目名称) 处,如图1.3中的cexam1_1。 (4) 输入路径名。在Location(位置)中输入将要创建的工程文件的保存路径,其实在上一步我们输入Project Name(项目名称) cexam1_1时,Location中已自动变成了c:cprogramcexam1_1,如图1.3。如对该位置不满意你可以对其进行修改,如图1.4改为c:cprogramcloc1_1。注意使下面的单选框选择Create New Workspace (即要建立新工作区 ),然后按下“OK”键,建立该工程文件。,(5) 这时会出现Application Wizard(应用程序生成向导)如图1.5,提问要生成的项目类型。选择 “An Empty Project (空项目)”,按下Finish(结束)键,会弹出一窗口如图1.6,显示新项目的有关信息。检查无误后按“OK”键。这时屏上会显示一个空项目如图1.7,并生成一个工作区文件(后缀为.DSW) 如图1.9中的cexam1_1.dsw。,(6) 建立源文件。再次选择 File 菜单的New 选项,并选择 Files 选项,从弹出如图1.8所示的窗口中选择C+Source File (C+源程序),并勾选右边的Add to project选项,激活其下面的选项。为你的程序取一名字 (当然也可与项目名相同) 填写在弹出窗口右边的 File 处,然后按下“OK”键。这时开发环境右侧的文件编辑窗口中出现了一个空文件, 即可输入源程序的内容,如图1.1。,(7)通过windows的资源管理器可以看到,如图1.9所示,在c:cprogram目录下有个文件夹cloc1_1,专门用来存放项目cexam1_1的所有内容,包括一个c源文件code1_1.c。,编译链接和运行源程序,程序编写好后要进行编译、链接和运行。步骤如下: (1)选择菜单选项 Build/Compile ×××.c (其中×××为具体文件名) 来编译源程序(也可以使用快捷键Ctrl+F7),这时系统开始对当前的源程序进行编译。在编译过程中会在Output窗口 (通常在屏幕下方)中显示编译结果。如果出错,则根据错误提示来修改程序,再重新编译。如还有错误,再继续修改、编译,直到没有错误为止;如果程序正确,编译结果会生成一个目标文件(后缀为.OBJ)。,(2)连接目标文件生成可执行文件。选择菜单选项 Build/Bui1d ×××.exe (也可以使用快捷键F7)来连接目标文件。连接的结果同样显示在Output 窗口中。同样对出现的错误要进行更改直到编译连接无错为止。连接后生成以源文件名为名字的可执行文件×××.exe (后缀为.EXE)。 以上两步也可以并为一步,即直接使用菜单选项Build/Build ×××.exe。,(3)运行程序。生成的可执行文件可以单独运行,也可以在集成开发环境中直接运行,后一种方法在程序需要反复调试时更加方便。在集成开发环境中直接运行程序的方法是选用菜单选项 Build/Excute×××.exe或使用快捷键Ctrl+F5,这时会出现一个MS-DOS窗口,输出结果显示在该窗口中。 (4)运行结束后,可以回到File菜单,单击Close Workspace选项,关闭当前的文件窗口。,提示:若要编辑新的源程序,可以再次打开File菜单,重新建立工程文件,步骤如上所示。若要打开一个已经存在的源程序,可以通过打开File菜单中的Open Workspace选项一步步来进行。,典型习题分析解答,【例1.4】以下描述正确的是( )。 (A) 最简单的C源程序可以不包括任何内容 (B) 编译程序对C源程序编译时不检查语法 (C) C程序中没有输入/输出语句 (D) 在C程序中,至少必须有一个Main()函数 分析:C 程序中至少必须包含一个main()函数,不能完全为空。所以,答案A不正确,在对C源程序进行编译时,编译程序必须检查语法,否则,将不能保证产生正确的目标文件,因此B也不正确。答案D的错误在于C语言是严格区分大小写的,Main()与main()表示两个不同的函数。C程序中没有输入/输出语句,使用scanf(),printf()函数实现输入、输出,所以答案C是正确的。 答案:C,【例1.5】以下描述正确的是( )。 (A) C程序的执行是从main()函数开始,到本程序的最后一个函数结束 (B) C 程序的执行是从第一个函数开始,到本程序的最后一个函数结束 (C) C程序的执行是从 main() 函数开始,到本程序的main() 函数结束 (D) C程序的执行是从第一个函数开始,到本程序的main() 函数结束 分析: 任何一个C程序都是从main()函数开始执行的。在main()函数中,用户根据实际需要调用其他的函数,这些函数执行完毕后将返回到main()函数。当执行完main()函数的最后一个语句后,整个程序运行结束。 答案:C,【例1.6】以下叙述中正确的是( )。 (A) C语言比其他语言高级 (B) C语言源程序可以不用编译就能被计算机识别执行 (C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 (D) C语言出现的最晚,具有其他语言的一切优点 分析: C语言是一种高级语言,但它也具有低级语言的功能,可以直接对硬件进行操作,它常被视为“高级语言中的低级语言”,所以答案A不正确。一个编写好的C源程序必须经过编译、连接后方可执行,所以答案B不正确。程序设计语言不断发展,不断会有新的语言出现。在C语言出现后,也诞生了许多新的语言,如JAVA语言等,所以答案D也不正确。 答案:C,【例1.7】在一个C程序中( )。 (A) main() 函数必须出现在所有函数之前 (B) main() 函数可以在任何地方出现 (C) main() 函数必须出现在所有函数之后 (D) 以上都不对 分析: 本题主要考查的是main()函数在程序中的位置。Main()函数在程序中的位置是任意的,可以在程序的前部、中部或后部。 答案:B,

    注意事项

    本文(《C语言程序设计与数据结构》课件第01章.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开