资源描述
单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,计算机程序设计基础,授课教师:,吴文虎(教授),上课地点:,东阶教室,上机实验:,东主楼,Intel,机房,1,计算机程序设计基础,一、教学对象,计算机科学与技术系新生,(,第一学期),二、教学目标,程序设计的重要性,程序设计的基本概念与基本方法,编程解题的思路与典型方法,数学模型简介,算法及算法步骤,程序结构与相应语句,编码与上机调试,问题规模与时空复杂度估计,2,计算机程序设计基础,三、教学重点,程序设计的基本概念,基本方法;,在,C,语言的环境下,学会如何针对问题进行分析,得出数学模型,理出算法并编程实现;,有条有理有根有据的编程实践;,养成良好的编程风格与习惯;,重在思维方法的学习,鼓励创新。,3,计算机程序设计基础,四、指导思想,1.立足改革,人的认识要随着时代的前进,而不断深化,在新的形势和环境下,教学要突,破传统观念和传统模式,也要追求高效和完,美,,以培养高素质有创造精神的人才为这门课的教,学目标。,2.以学生为中心,学生是教学的主体,安排教学首先须考虑培养目标、学生的认知规律和学习特点。,教学的每一个环节都要顾及学生的实际情况,有利于调动学生学习的积极性,引导学生主动学习。,4,计算机程序设计基础,3.强化实践,这门课主张程序设计是高强度的脑力劳动,不是听会的、也不是看会的,而是练会的。这可能与以往的教学安排最大的不同之处。,4.鼓励和引导探索式的学习,按照建构主义的学习理论,学生(作为学习的主体)在与客观环境(所学内容)的交互过程中构建自己的知识结构的。引导学生在解题编程的实践中探索其中带规律性的认识。将感性认识升华到理性高度。,5,计算机程序设计基础,5.突出重点,重点放在思路、算法、编程构思和程序实现上。语句只是表达工具,要求堂上积极思考,尽量当堂学懂,重在训练利用计算机编程手,段分析问题和解决问题的能力。,6.养成良好的编程习惯,强调可读性,;,变量要加注释;,程序构思要有说明;,学会如何调试程序,;,尽可能优化,;,对运行结果要做正确与否的分析。,6,计算机程序设计基础,7.考试方法,不纸上谈兵,不搞笔试,不考死记硬背的东西,上机解题,自动测试,不计失败,只计成功,正在建立试题库,题目随机抽取,8.学习方法,动手动脑,理论指导下的实践,有条有理的实践。实践出真知,“自学、动手、应用、上网”,在编写大量程序之后,才能感到运用自如。,7,计算机程序设计基础,9.学习心态,“,自立、自信、自尊、自强,”,,要求做到越学越会充满信心。,8,计算机程序设计基础,五、教学内容安排,1.概论:程序设计的基本概念与基本方法;怎样才能学好这门基础课,2.程序的基本结构,3.编程关键:逻辑思维与问题求解人是怎样让计算机帮助自己解题的,4.数据的组织方式一:数组,5.模块化:函数与函数调用,9,计算机程序设计基础,6.分治思想:递归算法及其实现。,7.逻辑指代与物理指代:指针。,8.数据的组织方式二:结构。,9.数据的组织方式三:链表与树。,10.数据的组织方式四:文件,数据的永久存储与重复使用。,11.面向对象程序设计的概念及特点。,10,第一讲 简单的,C,程序设计,11,一、简单的,C,程序,/Sample1,.,c,1,#,include/,预编译命令,将标准输入输出函数,/作为头文件包扩到用户源文件中,2,#,include/,预编译命令,将系统提供的数学函数,/作为头文件包扩到用户源文件中,3,void main()/,主函数,名为,main,,/void,是类型说明符(无返回值),4,/函数体.开始,5,float a,b,c;/,声明部分.定义变量类型,6,b=30.0;/,执行部分.赋值语句,7,a=sin(b*3.14159/180);/,执行部分.赋值语句,8,printf,(%fn,a);/,执行部分.输出语句,9,/函数体.结束,12,一、简单的,C,程序,预编译命令,主函数,main(),函数体开始,声明部分,执行部分,函数体结束,13,讲解这个简单的程序,1 浮点数,floating-point number,指带有小数部分的数,又称实数,,C,语言中的浮点数是以十进制数表示的,采用两种形式,(1)小数形式:如,(2)指数形式:如,一、简单的,C,程序,整数,.,小数,e,指数,14,一、简单的,C,程序,类型,比特数,有效数字,数值范围,float,32,67,double,64,1516,long double,128,1819,float 32bit,double 64bit,long double 128bit,15,一、简单的,C,程序,2,声明的作用,为变量分配内存单元,变量名作为内存单元的符号地址,这件事是在程序编译链接时完成的。,3 变量,其值可以改变的量,通过,b,可以找到相应的存储单元地址,XXXX,b,变量名,变量值,存储单元地址,XXXX,30.0,16,一、简单的,C,程序,4,对变量的赋值,赋值符号“=”,b=30.0;/,读作将表达式的值30.0赋给变量,b,a=sin(b*3.14159/180);/,读作将表达式(正弦函数),/的值赋给变量,a,5,变量赋值特点,(1)先定义,后使用,int d,e,f;,定义三个变量为整数类型,如未定义,则在编译时被查出,认为非法,(2)变量未被赋值前,值为0,(3)对变量赋值过程是“覆盖”过程,用新值去替换旧值,(4)读出变量的值,该变量保持不变,(5)参与表达式运算的所有变量都保持原来的值不变,17,一、简单的,C,程序,d e f,未赋值前,0,0,0,变量赋值过程,执行,e=d,7,7,0,执行,f=d+e,7,7,14,执行,d=7,7,0,0,7,执行,d=d+1,8,7,14,1,18,一、简单的,C,程序,6,输出语句,printf,函数(格式输出函数),一般形式为,printf,(,参数1,参数2,参数3,参数,n),其中参数1格式控制,参数2,参数3,参数,n,输出表列,举例:,float a;,int b;,a=85.56;,b=100;,printf,(%f%d,a,b);,19,一、简单的,C,程序,格式控制是用双引号括起来的字符串,称“转换控制字符串”,%,f,第一个输出表列的格式说明,以小数形式输出单、双精度实数,隐含输出6位小数,%,d,第二个输出表列的格式说明,以带有符号的十进制形式输出整数(正数不输出符号),显然,%,f,是控制实数,a,的;%,d,是控制整数,b,的,20,一、简单的,C,程序,例:为了醒目,格式控制项中除格式说明之外的,普通字符,输出结果为:,换行,输出,a,的值后换一行,printf,(“a=%f b=%d,a,b);,a=85.560000 b=100,printf,(“%fn”,a);,21,一、简单的,C,程序,7 数学函数,sin(x),cos,(x),exp(x),log(x),log10(x),fabs,(x),fmod,(x,y),floor(x),pow,(x,y),sqrt,(x),x,为弧度,,double x,double sin(x),cos,(x),整除,x/y,的余数,求不大于,x,的最大整数,22,一、简单的,C,程序,8,算术运算符,加,减,*乘,/除,%模(取余数),23,一、简单的,C,程序,24,
展开阅读全文