您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 吴文虎程序设计基础PPT第一讲
1计算机程序设计基础授课教师:吴文虎(教授)上课地点:第三教室楼上机实验:东主楼Intel机房2一、教学对象计算机科学与技术系新生(第一学期)二、教学目标程序设计的重要性程序设计的基本概念与基本方法编程解题的思路与典型方法数学模型简介算法及算法步骤程序结构与相应语句编码与上机调试3三、教学重点程序设计的基本概念,基本方法;在C/C++语言的环境下,学会如何针对问题进行分析,构建数学模型,寻找算法并编程实现;有条有理有根有据的编程实践;养成良好的编程风格与习惯;重在思维方法的学习,鼓励创新。4四、指导思想1.立足改革,人的认识要随着时代的前进而不断深化,在新的形势和环境下,教学要突破传统观念和传统模式,也要追求高效和完美,以培养高素质有创造精神的人才为这门课的教学目标。2.以学生为中心学生是教学的主体,安排教学首先须考虑培养目标、学生的认知规律和学习特点。教学的每一个环节都要顾及学生的实际情况,要有利于调动学生学习的积极性,引导学生主动学习。53.强化实践程序设计是高强度的脑力劳动,实践性极强,不是听会的、也不是看会的,而是练会的。要让学生充分上机动手编程。这可能与以往的教学安排最大的不同之处。4.鼓励和引导探索式的学习按照建构主义的学习理论,学生(作为学习的主体)是在与客观环境(所学内容)的交互过程中构建自己的知识结构的。引导学生在解题编程的实践中探索其中带规律性的认识,将感性认识升华到理性的高度。65.突出重点重点放在思路、算法、编程构思和程序实现上。语句只是表达工具,强调抱西瓜,不拣芝麻。重在训练利用计算机编程手段分析问题和解决问题的能力。6.养成良好的编程习惯强调可读性;变量要加注释;程序构思要有说明;学会如何调试程序;尽可能优化;对运行结果要做正确与否的分析。77.考试方法不纸上谈兵,不搞笔试,不考死记硬背的东西上机解题,自动测试不计失败,只计成功正在建立试题库,题目随机抽取8.学习方法动手动脑,在理论指导下实践注重学习思路,总结思路倡导:做学问,要又学又问倡导:“自学、动手、应用、上网”倡导:实践出真知。在编写大量程序之后,才能感到运用自如。89.学习心态“自立、自信、自尊、自强”要有战胜困难的勇气和信心要求做到越学越会充满信心9五、教学内容安排1.概论:程序设计的基本概念与基本方法;怎样才能学好这门基础课2.程序的基本结构3.编程关键:逻辑思维与问题求解人是怎样让计算机帮助自己解题的4.数据的组织方式一:数组5.模块化:函数与函数调用106.分治思想:递归算法及其实现7.逻辑指代与物理指代:指针8.数据的组织方式二:结构9.蒙特卡洛法10.贪心法11.动态规划1112.数据的组织方式三:链表与树13.数据的组织方式四:文件,数据的永久存储与重复使用14.面向对象程序设计的概念及特点12第一章功能强大的计算器13假如你是一个初学者,对在C++语言环境下如何编程一无所知,这里先给你搭一个台阶,教你构造一个功能强大的计算器,所谓功能强大是说(1)数学计算式子可以很复杂;(2)计算速度极快。学习目标14内容要点I/O流与插入、抽取操作符算术运算符号进入和退出C++环境常用数学函数15C++程序结构C++源代码一般都由若干函数和类组成。为了便于管理,一般把不同功能的函数和类放在不同的文件中,对于类的声明和实现也分别放在对应的.h(或.hpp)和.cpp文件中。由于文件较多,所以为了便于管理,一般的集成开发工具都会提供工程(Project)管理功能来管理这些文件,对源文件进行编译和链接。16类的声明(.h)目标文件(.obj)类的实现(.cpp)编译类的声明(.h)目标文件(.obj)类的实现(.cpp)编译……库函数可执行文件(.exe)链接目标文件(.obj)主程序(.cpp)编译17【任务1.1】计算下列三角函数的值1.1进入VC++环境,写程序代码oooosin(20)cos(20)-cos(10)/tan(10)为了完成任务1.1先要进入VC集成环境1、进入VC集成环境有两种办法(1)双击VC图标18用鼠标双击“桌面”上的VC图标,进入环境图1.119用鼠标点击“开始”菜单(图1.2)将鼠标上移至“程序(p)”然后将鼠标水平右移,在下一级菜单中将鼠标移至“MicrosoftVisualstudio6.0”再将鼠标右移至下一级菜单上,将鼠标上下移动到“MicrosoftVisualC++6.0”上,单击鼠标左键会出现图1.3,这就是我们编程时要用到的环境。(2)从开始菜单进入20图1.221图1.322图1.4File菜单:文件操作等23图1.5Edit菜单:编辑查找24图1.6View菜单:窗口设置等25图1.7Insert菜单:资源加入等26图1.8Project菜单:工程管理等27图1.9Build菜单:编译链接调试28图1.10Tools菜单:调试工具、系统配置等29图1.4图1.11Window菜单:窗口管理30图1.12Help菜单:帮助信息31见演示2.建立工程和文件3.编译和链接32//************************************************//*程序:YW1_1.cpp*//*功能:任务1.1计算三角函数的值*//*sin(20)cos(20)-cos(10)/tan(10)*//**//*作者:俞玮*//*时间:2002年6月4日*//**//*修改:张三*//*时间:2002年9月13日*//************************************************#includeiostream.h//预编译命令#includemath.h//预编译命令voidmain()//主函数{//主函数开始//计算三角函数式并输出coutsin(20.0/180*3.14159)*cos(20.0/180*3.14159)-cos(10.0/180*3.14159)/tan(10.0/180*3.14159)endl;}//主函数结束1.2任务1.1计算三角函数程序代码的说明331、以符号“#”开头的行,称为编译予处理行。2、“#include”称为文件予处理命令。3、“#includeiostream.h”这条命令是让文件“iostream.h”的内容包含到新建的程序中去。4、iostream.h是C++系统定义的一个“头文件”,在这个头文件中设置了C++的输入/输出(I/O)相关环境,定义了输入流cin和输出流cout对象。说明345、“#includemath.h”,这条命令是让系统中已经有的常用的数学函数包含到新建的程序中去。有了它你才能使用正弦、余弦函数的公式。6、main()是每一个C++程序都必须有的,称为主函数。你可以把它看成是程序的入口。在main面前的void表示我们写的这个主函数main()没有返回值,即它不代表计算出来的是什么值,它仅仅是规范了完成计算器所作的一系列步骤,这些步骤用花括号{}括起。35关于main()主函数的详细说明将在第二章中介绍。在这个计算三角函数的程序中实际上只有一行代码,开头是out,中间是三角函数算式,结尾是endl。按照这种模式,两头不动,你只要改变中间部分就可以计算任何算式(当然是math.h支持的才行)这里cout是系统的关键字,代表标准输出的流设备,其后的符号表示输出操作,可将其右侧的数据送至显示器上。在这个程序中“cout”的右侧就是三角函数算式的数值。“endl”表示在屏幕显示计算结果之后,换一行。361.3I/O流与插入、抽取操作符在C++中引入术语stream(流),指的是来自设备或传给设备的一个数据流。cout表示输出流对象,它是输入输出流库的一部分。与cout相关联的设备是显示器。在程序中有了关联字cout就有了将数据流传到显示器的条件,这时用插入操作符“”将其后的数据插入该流中去。比如下面的两条语句cout“welcometoTsinghua”;coutendl;37可以用图1.8来说明,放在引号“”中的字符串welcometoTsinghua是要给显示器设备的数据,用插入操作符将其传至显示设备上。endl字符串之后插入回车,直接将字符串写到屏幕上。welcometoTsinghuacoutwelcometoTsinghua图1.8显示器38插入操作符可以把多个输出数据组合或级联成单个的输出语句。比如下面的语句:cout“WelcometoTsinghua,”“Iamastudent.”endl;这时屏幕上显示WelcometoTsinghua,Iamastudent.39cin表示输入流对象,它也是输入输出流库的一部分,与cin相关联的输入设备是键盘,当我们从键盘输入字符串时,形成了输入流(数据流),用提取操作符将数据流存储到一个事先定义好的变量中,比如下面两条语句:floatx;cinx;第一条是定义了一个浮点数类型的对象:变量x。第二条是用键盘敲入一个带小数点的数,比如3.14159。40图1.8描述了提取输入流的示意图有关什么是变量,如何从键盘输入数据的内容放到下一章去讲。图1.8X的地址cin3.141593.14159键盘411.4注释及其重要性注释(comments)是非常重要的一种机制。没有注释的程序不能算作合格的程序。要建立这样的观念:程序是给人编的,让人家看懂是第一位重要的事情。特别是将来你可能参加一个团队,几十人甚至几百人一起合作编程,相互协同,更需将注释写得清清楚楚、明明白白,因此,我们规定程序中须有如下内容42注释内容程序名称程序要实现的功能,比如要完成什么数学运算程序的思路和特点编程的人与合作者编程的时间,修改后的第几版本其它对初学者,希望每条语句都加上注释,要求注明这条语句是做什么用的431.5算朮运算符在C/C++中基本的算术运算符有五个,分别为加+乘*减-除/求余%cout21%4endl;输出是1441.6数学函数C++提供几百个数学函数,放在函数库中,这里只介绍最常用的13个函数。1、求绝对值函数(1)函数原型为intabs(intx)自变量为整数,函数值也为整数。例abs(-415)=41545(2)函数原型为longlabs(longx)自变量为长整数,函数值也为长整数。例labs(-41576)=4157646(3)函数原型为doublefabs(doublex)自变量为双精度实数,函数值也为双精度实数。fabs(-3.14159)=3.14159472、正弦函数函数原型为doublesin(doublex)自变量和函数均为双精度实数。其中x为弧度值。例sin(3.1415926535/2)=1483、反正弦函数函数原型为doubleasin(doublex)自变量和函数均为双精度实数。例asin(0.32696)=0.333085这里的asin(x)就是数学中的arcsin(x)494、余弦函数函数原型为doublecos(doublex)自变量和函数均为双精度实数。例cos(3.1415926535/2)=4.48966e-011注意cos(π/2)的只由于π是近似值算出的余弦值不为0,但十分接近0,该值是4.48966×10‾¹¹505、反余弦函数函数原型为doubleacos(doublex)自变量和函数均为双精度实数。例acos(0.32696)=1.23771这里的acos(x)就是数学中的arccos(x)516、正切函数函数原型为doubletan(doublex)自变量和函数均为双精度实数。例tan(3.1415926535/4)=1527、反正切函数函数原型为doubleatan(doublex)自变量和函数均为双精度实数。例atan(-862.42)=-1.56964538、计算函数函数原型为doubleexp(doublex
本文标题:吴文虎程序设计基础PPT第一讲
链接地址:https://www.777doc.com/doc-3807191 .html