C C++语言程序设计第1章概述课件_第1页
C C++语言程序设计第1章概述课件_第2页
C C++语言程序设计第1章概述课件_第3页
C C++语言程序设计第1章概述课件_第4页
C C++语言程序设计第1章概述课件_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C/C+语言程序设计,本课程的学时安排为:理论学时48实践学时32,学习目标,Hi,Mputer.Imhumanbeing.计算机语言是人与计算机交流的工具。所以要学好C语言,就是要做到让人与计算机相互理解对方。,怎样成为一名优秀的程序员,热情,热情,还是热情具备独立设计的能力运用计算机语言的能力具备创造力(从模仿他人开始,但不能养成惰性,要学会独立思考,独立解决问题)严谨踏实的作风(编程序最耗费时间的地方是调试与查错,严谨可以确保我们少犯错误,犯了错误容易改正),具体步骤,Step1:掌握数据类型、控制结构、语法规则。(识字、造句,授课为主),Step2:掌握程序分析、算法、编程。(体裁、布局。多看多练),Step3:循序渐进,先模仿,后分析。,Step4:重视上机,有效利用宝贵的上机时间,切实掌握调试手段。,第一章概述,1.1计算机语言及其发展1.2算法与流程1.3程序设计方法1.4C/C+的特点1.5C与C+程序实例1.6C/C+程序上机步骤1.7小结,1.1计算机语言及其发展,算法为解决某一应用问题而采用的解题步骤。对一个一元二次方程,若求其实数解,算法应为:计算方程的判别式;如判别式小于零,则输出方程没有实根的信息;否则,计算方程的实根,并输出计算结果。计算机能理解上述自然语言描述的算法么?,计算机语言的发展经历了三个阶段:,00100011111011010110000101110110,机器语言程序,1.2算法与流程,程序设计的灵魂是算法,而语言只是形式。可以说计算机语言只是一种工具,用来描述处理问题的方法和步骤。但是只要有正确的算法,可以利用任何一种语言编写程序,使计算机进行工作,得出正确的结果。所谓“算法”,指为解决一个问题而采取的方法和步骤,或者说是解题步骤的精确描述。算法应具备有穷性、确定性、有效性、有零个或多个输入(即:可以没有输入,也可以有输入)、有一个或多个输出(即算法必须得到结果)的特性。,1.2.1算法的概念,1.2.2算法的表示形式,常用的算法表示方法有自然语言、传统流程图、结构化流程图(N-S流程图)、伪代码、计算机语言等。(1)传统流程图,常用的流程图符号,【例1.1】求5!,算法分析:实际上是在做12345的运算。算法步骤可以分为:步骤1:设变量p,被乘数,p=1;步骤2:设变量i,代表乘数,i=2;步骤3:使pi,乘积放在被乘数变量p中,可表示为:pip;步骤4:使i的值加1,即i+1i;步骤5:如果i不大于5,返回重新执行步骤3以及其后的步骤4、步骤5;否则,算法结束。最后得到的p就是5!的值。绘制流程图,(2)N-S流程图基本结构的顺序组合可以表示任何复杂的算法结构,于是基本结构之间的流程线就属于多余的了,于是美国学者I.Nasii和B.shneiderman于1973年提出了一种新的流程图形式:将全部算法写在一个矩形框内,完全去掉了带箭头的流程线。这种流程图称为N-S结构化流程图,也称盒图。,例1.2求5!的算法用N-S图表示,N-S图不能表示非结构化算法,而且当问题很复杂时,N-S图可能很大。,1.3程序设计方法,结构化程序设计方法(SPStructuredProgramming)是由E.Dijkstra等人于1972年提出来的,它建立在Bohm、Jacopini证明的结构定理的基础上。结构定理指出:任何程序逻辑都可以用顺序、选择和循环三种基本结构来表示。在结构定理的基础上,Dijkstra主张避免使用goto语句(goto语句会破坏这三种结构形式),而仅仅用上述三种基本结构反复嵌套来构造程序。在这一思想指导下,进行程序设计时,可以用所谓“自顶向下,逐步求精”的方式,对问题进行分解。,1.3.1结构化的程序设计方法,一个结构化程序应符合以下标准:(1)程序仅由顺序结构、分支结构和循环结构三种基本结构组成,基本结构可以嵌套。(2)每种基本结构都只有一个入口和一个出口,即一端进,一端出。这样的结构置于其他结构之间时,程序的执行顺序必然是从前一结构的出口到本结构的入口,经本结构内部的操作,到达本结构的唯一出口,体现出流水化特点。(3)程序中没有死循环(不能结束的循环)和死语句(程序中永远执行不到的语句)。,结构化程序设计方法遵循的原则自顶向下,逐步求精。模块化设计。程序结构化。结构化程序设计过程分析问题(Question)设计算法(Algorithm)编写程序(Program)简称QAP方法。,1.3.2面向对象的程序设计方法,在结构化的程序设计中,解决某一个问题,就是要确定这个问题能够分解为哪些函数,数据能够分解为哪些基本的类型,如int、double等。也就是说,思考方式是面向机器结构的,而不是面向问题结构的,需要在问题结构和机器结构之间建立联系。面向对象的程序设计方法的思考方式是面向问题的结构,它认为现实世界是由一个个对象组成的。面向对象的程序设计方法解决某个问题时,要确定这个问题是由哪些对象组成的。,对象由数据和操作构成消息由三个部分组成:接受消息的对象;要执行的函数的名字;函数需要的参数。面向对象的主要特性:封装继承多态,面向对象程序设计过程,(1)面向对象的分析(OOA)。(2)面向对象的设计(OOD)。(3)面向对象的实现(OOI)。,结构化程序设计与面向对象程序设计的比较,1.4C/C+的特点,1.C语言的特点语言结构化语言简洁功能强大数据结构丰富运算符丰富生成的代码质量高可移植性好,2.C+的特点,与C语言兼容,既支持面向对象的程序设计,也支持结构化的程序设计。修补了C语言中的一些漏洞,提供更好的类型检查和编译时的分析功能。生成目标程序质量高,程序执行效率高。提供了异常处理机制,简化了程序的出错处理。函数可以重载及可以使用缺省参数。提供了模板机制。,1.5C与C+程序实例,例1.3简单的C语言程序。#include/*预处理命令*/main()/*主函数*/printf(MyfirstCprogram!n);/*输出双引号中的内容*/,1.5.1C语言程序实例,【例1.4】求两个整数之和,#includemain()/*主函数*/inta,b,sum;/*设置变量的数据类型*/a=1;/*给变量赋初值*/b=2;sum=a+b;/*加法运算*/printf(sum=%dn,sum);,重点,C程序的基本结构是函数,函数是完成某个整体功能的最小单位。C函数从左花括号开始,到对应的右花括号结束。main()可以在程序的任何位置上,但C程序执行时,总是从main()函数开始。,1.5.2C+程序实例,例1.5简单的C+程序。#includevoidmain()coutHello!MyfirstC+program!n;,例题解析,1.一个C程序由若干个C函数组成各个函数在文件中的书写位置为。A)任意B)第一个函数必须是主函数其他函数任意C)必需完全按调用的顺序排列D)其他函数必须在前,主函数必须在最后,你能回答下面问题吗?,2.在一个C程序中。A)main函数必须出现在所有函数之前B)main函数必须出现在所有函数之后C)main函数可以在任何地方出现D)main函数必须出现在固定位置上,3.以下叙述中正确的是。A)C程序中注释部分可以处现在程序中任何合适的地方B)花括号“”和“”只能作为函数体的定界符C)构成C程序的基本单位是函数,所有函数名都可以由用户命名D)分号是C语句之间的分隔符,不是语句的一部分,4.以下叙述中正确的是。A)C语言的源程序不必通过编译就可以直接运行B)C语言中的函数不可以进行单独编译C)C源程序经编译形成的二进制代码可以直接运行D)C语言中的每条可执行语句最终都将被转换成二进制的机器指令,5.以下说法中正确的是。A)C语言程序总是从第一个定义的函数开始执行B)C语言程序总是从main()函数开始执行C)C语言程序中的main()函数必须放在程序的开始部分D)一个C函数中只允许一对花括号,1.6C/C+程序上机步骤,一般情况下,开发一个C或C+应用程序可以按照如下步骤来进行:创建一个项目;编辑项目中的源代码;编译项目中的文件;纠正编译中出现的错误;运行可执行的文件。,1.6.1MicrosoftVisualC+6.0集成环境简介,VisualC+6.0提供了一个支持可视化编程的集成开发环境:VisualStudio(又名DeveloperStudio)。DeveloperStudio是一个通用的应用程序集成开发环境,它不仅支持VisualC+,还支持VisualBasic,VisualJ+,VisualInterDev等Microsoft系列开发工具。DeveloperStudio采用标准的多窗口Windows用户界面,包含项目工作区、ClassWizard、AppWizard、WizardBar、ComponentGallery等。DeveloperStudio提供了许多工具,包含一个文本编辑器、资源编辑器、工程编译工具、一个增量连接器、源代码浏览器、集成调试工具,以及一套联机文档。使用DeveloperStudio,可以完成创建、调试、修改应用程序等各种操作。,1.6.2C程序上机步骤,(1)启动VisualC+6.0进入DeveloperStudio编译环境,(2)单击主窗口菜单栏中的“File”(文件)菜单项,单击下拉式菜单中的选项“New”(新建),弹出新建对话框。(3)在“New”(新建)对话框上选择“Projects”(工程)选项卡,选择“Win32ConsoleApplication”(Win32控制台应用程序),(4)在“ProjectName”(工程名称)文本框内输入工程名称为exam1。工程文件存放的位置可点击按钮,选择路径,点击确定按钮。(5)在弹出的对话框(如下图所示)中,选择一个建立一个空项目的单选按钮,再点击“Finish”(完成)按钮。,(6)在弹出的对话框中,给出了新建工程的一些信息,点击“OK”(确定)按钮。,(7)再单击“File”菜单中的“New”命令,选择“Files”选项卡,选择“TextFile”,注意“Addtoproject”应勾选。,(8)在“File”文本框内输入文件名称“1.c”,点击“OK”按钮。(9)逐行输入源程序直至完毕,如下图所示。然后点击“File”菜单的“Save”(保存)命令。#includestdio.hmain()printf(MyfirstCprogram!n);,(10)单击工具栏上的红色叹号或按“CtrlF5”执行程序,出现如图所示对话框,此时显示程序运行结果。,1.5.2C+程序上机步骤,(1)按照C程序上机步骤(1)(6)操作,建立一个工程exam2,再单击“File”菜单中的“New”命令,选择“Files”选项卡,选择“C+SourceFile”,如下图所示。注意“Addtoproject”应勾选。,(2)在“File”文本框内输入文件名称“1”,点击“OK”按钮。(3)逐行输入源程序直至完毕。然后点击“File”菜单的“Save”(保存)命令。#includevoidmai

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论