1沐川县职业中学校C语言程序设计实践教案(内部资料)编者:张攀、黄珂伟出版:沐川职中教务处2《C语言程序设计》实践教案课程基本信息:课程名称C语言程序设计编制人张攀、黄珂伟课程总学时适用专业计算机类实践学时48学时实践项目数13学年学期一、制定实践教案的依据《C语言程序设计》实践教案是根据《C语言程序设计》课程教学大纲的实践教学要求和我校教学设备与学生具体情况而制定。二、实践目的与要求C语言程序设计的实践是学生重要的实习环节。上机实践不仅要求学生掌握C语言程序设计的基本知识,更重要的是培养学生掌握程序设计开发的基本素质、思维方法和技能,为学生综合素质的培养打下坚实基础。根据所选题目首先进行年算法分析,根据实现的功能进行数据分析,设计相应的数据结构,同时为贯彻“程序设计=算法+数据结构”的思想,要求学生在课下完成流程图的设计,然后根据流程图写出实践代码。三、实践方式上机操作四、考核方法实践报告占30%,实验70%。《C语言程序设计》实践实验部分评分结构表序号项目成绩比例(%)审评成绩(%)1程序完成情况能正常运行,无语法错60100若有错误,经学生本人调式后能正常运行基本功能完备在完成基本功能的基础上,有扩展2操作操作熟练40各种操作有提示五、实践项目及学时分配实践项目一览表序号实践项目名称学时项目类型必做/选做3实践一VC++6.0开发平台环境及应用2验证型必做实践二C语言基本数据类型的输入、处理、输出4设计型必做实践三分支结构程序设计4设计型必做实践四循环结构程序设计4设计型必做实践五结构化程序设计综合应用4设计型必做实践六数组的构造与应用4设计型必做实践七函数的应用6设计型必做实践八结构体的构造与应用2设计型必做实践九指针的应用6设计型必做实践十文件的打开,关闭,修改4设计型必做实践十一综合设计一4设计型必做实践十二综合设计二4设计型必做实践十三课程设计6设计型必做六、实践项目内容及其要求实践一、VC++6.0开发平台环境及应用(2学时)【实践目的】:通过本次实践内容,使学生对C语言程序有一个简单的认识,熟悉VC++6.0的运行环境,掌握C程序的执行方法,了解程序的结构和输出函数等。【实践内容】:VC++6.0开发平台环境及应用:任给一半径,输出圆的周长【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:代码完整但不能运行通过成绩评定:A-实践要求:代码运行通过成绩评定:A实践要求:代码规范并运行通过成绩评定:A+实践二、C语言基本数据类型的输入、处理、输出(4学时)【实践目的】:通过本次实践内容,使学生对C语言程序有一个系统的认识,并在此基础上掌握三种基本数据类型、部分运算符号和常用函数的应用,体现在自己动手编写的小程序中。【实践内容】:1.求三个整数的和2.把输入的大写字母转换为小写字母3.求一个四位整数的各个数据位4.交换两个变量的值5.求一元二次方程的根【实践设备】:PC机投影仪4【实践要求及成绩评定】:实践要求:代码完整但不能运行通过成绩评定:A-实践要求:代码运行通过成绩评定:A实践要求:代码规范并运行通过成绩评定:A+实践三、分支结构程序设计(4学时)【实践目的】:通过本次实践,掌握if语句的使用和switch多分支选择结构的实现,并能熟练的进行应用。【实践内容】:1.任意输入一个年份,判断是否是闰年。2.输入三角形的三边长,求三角形的面积。3.任意输入一个成绩,给出评语:90-100:优秀;80-89:良好;60-79:及格;0-59:不及格。【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:代码完整但不能运行通过成绩评定:A-实践要求:代码运行通过成绩评定:A实践要求:代码规范并运行通过成绩评定:A+实践四、循环结构程序设计(4学时)【实践目的】:通过本次实践,掌握循环语句for、while和do-while的使用和break和continue的功能,并能熟练的进行应用。【实践内容】:1.编程求1+2+3+···+100的和。2.求1到100之间的奇数之和,偶数之积3.把输入的一行字符原样输出,若是大写字母需要转换成小写的。4.编写程序求20+21+22+23+···+263的和。5.从键盘上任意输入一个正整数,判断其是否为素数。【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:代码完整但不能运行通过成绩评定:A-实践要求:代码运行通过成绩评定:A实践要求:代码规范并运行通过成绩评定:A+实践五、结构化程序设计综合应用(4学时)【实践目的】:掌握算法的概念,并在编程中进行具体算法的应用【实践内容】:1.找出100之内的所有素数并输出。52.搬砖问题:36块砖,36人搬,男搬4,女搬3,两个小孩抬1砖,要求一次搬完,问男、女和小孩各若干?3.要登上n阶楼梯,每一步允许跨1阶或2阶,问共有多少种登楼梯的方法?4.计算和统计旅客运费程序。【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:代码完整但不能运行通过成绩评定:A-实践要求:代码运行通过成绩评定:A实践要求:代码规范并运行通过成绩评定:A+实践六、数组的构造与应用(4学时)【实践目的】:数组是一种构造类型,在解决问题中使用非常普遍,通过本次实践内容,使学生对数组类型有一个系统的认识,并能灵活的在具体问题中进行应用。【实践内容】:1.一个班有30个同学,通过键盘输入成绩,并打印输出,每行输出10个同学的成绩。2.一个班有n个同学,通过键盘输入成绩,并进行以下处理:(1)求平均成绩;(数组求和)(2)添加m个同学的成绩;(数组添加)3.对已经排好序的成绩数组进行以下操作:把一个新成绩按照顺序插入到数组的合适位置。(提高)。4.某学习小组有4名同学,学习了5门课程,求每个同学的平均分和每门课程的平均分。【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:代码完整但不能运行通过成绩评定:A-实践要求:代码运行通过成绩评定:A实践要求:代码规范并运行通过成绩评定:A+实践七、函数的应用(4学时)【实践目的】:函数体现了程序设计的模块化思想,可以把复杂的问题简单化,并可实现代码共享。通过本次实践内容,使学生对函数的定义及应用能系统认识,并能熟练地在编程中体现出来。【实践内容】:1.利用自定义函数输出两个数中的大数。2.编写以下功能函数(1)求两个数的和(2)求两个数的差(3)求两个数的积(4)求两个数的商3.编写函数实现由小到大排序。64.用递归法计算n!(通过函数的递归调用计算阶乘)【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:代码完整但不能运行通过成绩评定:A-实践要求:代码运行通过成绩评定:A实践要求:代码规范并运行通过成绩评定:A+实践八、结构体的构造与应用(2学时)【实践目的】:通过本次实践内容,使学生初步了解构造类型--C语言结构体类型,掌握结构体类型的定义、结构体数组的定义、结构体指针的定义及初始化、引用、应用,并在此基础上重点掌握链表的建立及输出。【实践内容】:1.一个学生的基本信息有:学号、姓名、性别和年龄,现要存放5个同学的信息,编程实现把各项信息输出出来。。2.建立一个静态链表,它由三个学生数据结点组成,输出各结点的数据【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:代码完整但不能运行通过成绩评定:A-实践要求:代码运行通过成绩评定:A实践要求:代码规范并运行通过成绩评定:A+实践九、指针的应用(6学时)【实践目的】:通过本次实践内容,使学生对C语言指针有一个系统的认识,并在此基础上掌握指向简单变量的指针、指向数组的指针、指向字符串的指针的定义、引用及应用,同时指针与函数的结合应用是一个重点和难点,通过具体题目的训练能领会指针的本质,并应用在程序设计中。【实践内容】:1.指向简单变量的指针变量的应用。2.利用指向数组的指针变量输出数组的全部元素。3.指针的延伸应用,也可用数组名访问元素。4.指针变量作为函数参数的应用--排序。5.有一个长度不大于40的字符串,已知其中共包含两个字符“A”,求处于两个字符“A”中间的字符个数,及这些字符。6.返回指针值的函数,有一个长度不大于40的字符串,已知其中总包含两个字符‘A’,编写函数求处于两个字符’A’中间的这些字符.【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:代码完整但不能运行通过成绩评定:A-7实践要求:代码运行通过成绩评定:A实践要求:代码规范并运行通过成绩评定:A+实践十、文件的打开,关闭,修改(4学时)【实践目的】:通过本次实践内容,使学生初步了解C语言中文件操作的类型,掌握文件的打开及关闭的操作,并能熟练进行字符及数据块的读写操作,为后续的课程设计打好基础。【实践内容】:1.从键盘上接收字符写到文件中去,然后将其关闭。2.从文件中读取字符,并通过显示器显示出来,然后将其关闭。3.从键盘上输入若干个学生的学号及考试成绩,将这些数据写入磁盘文件y.dat中。(由学号等于0作终止标记)4.指针变量作为函数参数的应用--排序。4.将程序4建立的文件内容读出并显示出来。【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:代码完整但不能运行通过成绩评定:A-实践要求:代码运行通过成绩评定:A实践要求:代码规范并运行通过成绩评定:A+实践十一、综合设计一(4学时)【实践目的】:综合实践,为提高学生的学习积极性,同时为培养软件开发的合作精神,在之前实践完成的基础上,给学生设计相对该内容综合运用的实例,通过本次实践让学生深刻理解循环结构和分支结构的用法,丰富学生解决问题的方法,拓宽思路;【实践内容】:编程打印所有的水仙花数,所谓水仙花数是指一个3位数,其各位数字立方和等于该数本身。如:153是水仙花数,因为153=1^3+5^3+3^3。【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:正确定义变量及正确使用算术运算符;成绩评定:A-实践要求:采用合适的程序控制结构完成所需的功能;代码运行通过成绩评定A实践要求:选择合适的算法,以最优的方式实现设计,代码规范并运行通过成绩评定:A+实践十二、综合设计二(4学时)【实践目的】:综合实践,为提高学生的学习积极性,同时为培养软件开发的合作精神,在之前实践完成的基础上,给学生设计相对该内容综合运用的实例,通过本次实践使学生能正确定义数组并能进行合理的初始化操作;熟练掌握访问数组的方法及引用方式;深刻理解数组在应用过程中的重要作用丰富学生解决问题的方法,拓宽思路;8【实践内容】:编程实现任意输入年月日,计算出该天是当年的第几天。如:请输入日期(年月日的格式):2007131该天是本年的第31天。【实践设备】:PC机投影仪【实践要求及成绩评定】:实践要求:代码完整成绩评定:A-实践要求:代码完整并能运行通过成绩评定:A实践要求:选择合适的算法,以最优的方式实现设计,代码规范并运行通过成绩评定:A+实践十三、课程设计(6学时)【实践目的】:(1)加深对基础内容的理解和把握;(2)通过设计,提高学生编写程序、调试程序的能力;(3)初步培养学生软件开发的能力及团队合作的精神。【实践内容】:参考题目及选题(1)学生成绩管理,可包括以下功能:学生信息及成绩输入、输出、成绩插入、成绩删除、成绩排序、成绩查询、数据保存及打开。(2)某班学生基本信息管理,可包括以下功能:学生基本信息输入、输出、插入、删除、排序、查询、数据保存及打开。(3)职工信息管理职工信息包括职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等(职工号不重复),职工信息管理,可具有以下功能:职工信息录入、输出、查询、删除、修改、数据保存、文件打开等。(4)飞机订票系统设计假定民航机场共有n个航班,每个航班有一航班号、确定的航线(起始站、终点站)、确定的飞行时间(星期几)和一定的成员订额。试设计一民航订票系统,可提供下列服务:航班信息录入、航班信息浏览、航班查询(按航班号查询或按终点站查询)、承办订票和退票业务(可选项)、数据保存、文件打开等。。(5)图书信息管理图书信息包括:登录号、书名