《C语言程序设计》实验教学大纲
课程名称:
| C语言程序设计
|
|
|
课程编号:
| 420003
| 408003
| 436003
|
适用专业:
| 网络工程
| 计算机科学与技术
| 软件工程
|
总 学 分:
| 4
| 4
| 4
|
总 学 时:
| 72
| 72
| 72
|
其中实验学时
| 30
| 30
| 30
|
一、实验课程性质、目的与任务
《c语言程序设计》课程是一门重要的专业必修课。其主要任务是使学生掌握C语言的基本概念与结构化程序设计方法等方面的知识。实验课是本课程重要的教学环节,其目的是使学生加深对讲授内容的理解,熟悉所用计算机系统的操作方法,学会上机调试程序;提高学生的动手能力和分析、解决问题的能力。
通过本实验课程,应达到以下几个教学目的
1.掌握各种类型数据及赋值语句的使用;
2.掌握结构化程序设计方法;
3.掌握数组的定义、赋值、输入输出;
4.掌握函数定义及函数调用;
5.理解指针的作用,能正确使用指向处理数组与字符串;
6.掌握结构体类型变量的定义和使用;
7.初步学会使用文件的打开、关闭、读、写等文件操作函数。
二、实验教学基本要求
要求掌握程序设计的原理、思想、方法,能够熟练运用VC开发环境编写和调试程序;进一步掌握利用C语言编写解决实际问题的方法和技术;为学习《数据结构》课程打下坚实的基础。学生通过实验能够将理论所学应用于实践,能根据给定的问题独立设计程序并上机调试程序运行通过;获得上机调试能力、分析问题与解决问题能力的较大提高,具有良好的程序设计素质。
上机实验要求:
1、准备好上机所需的程序;
2、上机输入和调试自己所编写的程序;
3、上机结束后,应整理出实验报告,实验报告应包括以下内容:实验项目名称;算法分析;程序清单;运行结果;对运行情况所作的分析以及本次调试程序所取得的经验,如果程序未能通过,应分析其原因。
三、实验项目与类型:
序号
| 实验项目
| 学时
| 实验性质
| 备注
|
验证
| 综合
| 设计
| 研究
探索
| 必做
| 选做
|
1
| C语言概述及程序设计基础
| 2
| √
|
|
|
|
| √
|
2
| 简单的C语言编程
| 4
| √
|
|
|
|
| √
|
3
| 选择结构程序设计
| 2
| √
|
|
|
| √
|
|
4
| 循环结构程序设计
| 6
| √
|
|
|
| √
|
|
5
| 数组
| 6
|
| √
|
|
| √
|
|
6
| 函数
| 6
|
| √
|
|
| √
|
|
7
| 结构体与共用体
| 4
|
| √
|
|
| √
|
|
8
| 指针
| 8
|
| √
|
|
| √
|
|
9
| 文件
| 4
|
|
| √
|
|
| √
|
四、实验教学内容
实验一:C语言概述及程序设计基础
1、实验目的
熟悉C语言的集成环境,了解菜单的使用方法;
掌握C语言程序上机的编辑、编译、连接、运行的基本步骤;
了解C语言程序的结构。
2、方法原理
安装VC6.0开发软件,并对软件环境进行测试。
3、主要实验仪器及材料
计算机、VC6.0软件开发工具
4、实验内容
(1)熟悉VC中常用菜单项及对应快捷键的使用方法;
(2)熟悉C语言程序上机的编辑、编译、运行的基本步骤;
(3)编程实现一个字符串的输出;
(4)编程输出两个数的最大值。
实验二:简单的C语言编程
1、实验目的
掌握定义整型、字符型和实型变量的方法,以及对它们的赋值方法;掌握常用算术运算符的使用方法、优先级别及结合方向;掌握C语言表达式的运算规则。
2、方法原理
利用C语言中各种数据类型及各种运算符构造表达式。
3、主要实验仪器及材料
计算机、VC6.0软件开发工具
4、实验内容
(1)验证C语言中各种数据类型的取值范围及各种类型变量的定义和使用方法;
(2)编程实现由键盘输入的任意两个数的平均值,并对不同类型的数据进行测试;
(3)验证各种运算符的使用。
(4)、按格式要求输入/输出数据;
(5)、输入三角形三边长,求三角形面积;
(6)、已知圆半径,圆柱高,求圆周长,圆柱体积;
(7)、输入一个摄氏温度,要求输出华氏温度。公式为f=9/5*c+32;(5)、求方程ax2+bx+c=0的实数根。a,b,c由键盘输入,a≠0,设b2-4ac>0。
实验三:选择结构程序设计
1、实验目的
掌握利用if语句实现选择结构程序设计的方法;掌握利用switch语句实现选择结构的程序设计方法;注意break在switch语句的作用。
2、方法原理
用VC编写简单的选择结构程序。
3、主要实验仪器及材料
计算机、VC6.0
4、实验内容
主要实现:
(1)、判断方程ax2+bx+c=0有几个解,如果有解则输出;
(2)、企业发放奖金根据利润提成。利润低于或等于10万元时,奖金可提10%;利润高于10万元,低于等于20万元时,其中10万元按照10%提成,高于10万元的部分,可提成7.5%;利润高于20万元,低于等于40万元时,其中20万元仍按照上述办法提成(下同),高于20万元的部分按5%提成;利润高于40万元,低于等于60万元时,高于40万元的部分按3%提成;利润高于60万元,低于等于100万元时,高于60万元的部分按1.5%提成;利润高于100万元时,超过100万元的部分按1%提成。要求:(1)用if语句编程;(2)用switch语句编程。
实验四:循环结构程序设计
1、实验目的
掌握利用while或do while实现条件型循环结构程序设计的方法;掌握利用for语句实现循环结构程序设计的方法;
2、方法原理
用VC编写单循环与多重循环程序,实现部分常用算法。
3、主要实验仪器及材料
计算机、VC6.0
4、实验内容
主要实现:
(1)、用For语句编程实现1!+2!+…+n!的和;
(2)、猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第十天早上想吃时,见只剩下一个桃子。求第一天共摘了多少桃子?
(3)、编程实现“水仙花数”的打印,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身;
实验五:数组
1、实验目的
掌握一维数组的定义、初始化、赋值和输入输出操作(循环结构);掌握二维数组的定义、初始化、赋值和输入输出操作(循环结构);掌握字符数组和字符串处理函数的使用;掌握与数组有关的重要算法:排序、查找等。
2、方法原理
用VC编写一维、二维数组程序,使用数组对字符串进行处理。
3、主要实验仪器及材料
计算机、VC6.0
4、实验内容
(1)、输出Fibonacci数列的前20个数;
(2)、用冒泡法对10个数排序;
(3)、用选择法实现十个整数的排序;
(4)、已有一个已经排好序的数组,要求输入一个数后,按原来排序方式将它插入数组中;
(5)、有一篇文章,共有3行文字,每行有80个字符。要求分别统计出其中英文大写字母、小写字母、数字、空格以及其它字符的个数。
实验六:函数
1、实验目的
掌握C语言中函数定义、函数调用的方法和规则;掌握函数实参与形参的对应关系,以及“值传递”的含义;掌握递归函数的设计方法;掌握全局变量和局部变量的概念和使用方法。
2、方法原理
用VC编写函数,并调用。
3、主要实验仪器及材料
计算机、VC6.0
4、实验内容
(1)、输入10个学生5门课的成绩,分别用函数求:1.每个学生平均分;2.每门课的平均分;3.找出最高的分数对应的学生和课程;4.求平均分方差;
(2)、递归求第n个人的年龄。
实验七:结构体与共用体
1、实验目的
掌握结构体类型变量的定义和使用;掌握结构体类型数组的概念和应用;掌握链表的概念,初步学会对链表进行操作;掌握共用体的概念与使用。
2、方法原理
用C语言链表的增删改查。
3、主要实验仪器及材料
计算机、VC6.0
4、实验内容
(1)、定义一个结构体变量(包括年、月、日)。计算该日在本年中第几天?(注意闰年问题;)
(2)、编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num、name、score[3],用主函数输入这些记录,用print函数输出这些记录。
(3)、13个人围成一圈,从第1个人开始顺序报号1、2、3。凡报到“3”者退出圈子,找出最后留在圈子中的人原来的序号。
实验八:指针
1、实验目的
掌握指针的概念,学会定义和使用指针;掌握跟数组有关的指针的操作(包括字符数组);掌握跟函数有关的指针的操作;
2、方法原理
用VC实现变量、函数、数组的操作。
3、主要实验仪器及材料
计算机、VC6.0
4、实验内容
(1)、输入10个整数,将其中最小的数于第一个数兑换,把最大的数与最后一个数对换。写三个函数:1)输入10个数;2)进行处理;3)输出10个数;
(2)、有n个整数,使前面个数顺序向后移m个位置,最后m个数变成最前面m个数。写一个函数实现以上功能,在主函数中输入n个整数和输出调整后的n个数;
(3)、在主函数中输入10个等长的字符串。用另一个函数对它们排序。然后在主函数输出这10个已排好序的字符串。
实验九:文件
1、实验目的
掌握文件与文件指针的概念以及文件指针的定义方法;掌握并灵活使用文件打开、文件关闭、文件读写等基本函数;掌握文件的随机读写及有关文件读写指针的定位函数。
2、方法原理
用VC文件读写操作。
3、主要实验仪器及材料
计算机、VC6.0
4、实验内容
(1)、从键盘输入一行字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存,并检验test文件中的内容,
(2)、有五个学生,每人有3门课的成绩,从键盘输入学生学号、姓名、3门课成绩,计算出每人平均分并将其和原始数据都存放在磁盘文件“stud”中,并检验stud文件的内容。
五、考核方法
1.教师对学生实验过程完成情况进行详细登记,记入实验成绩中。
2.学生完成实验后按要求撰写实验报告,根据实验报告确定每次实验的等级。
3.实验成绩按20%比例计入课程期评总成绩中。
六、实验指导书及主要参考书目
1、实验指导书
[1]《C语言程序设计实验指导书》,羊四清、易叶青主编,北京:中国水利水电出版社,2012.1
2、 主要参考书
[1]谭浩强著.《C程序设计》(第三版).北京:清华大学出版社,2005
[2]杨路明主编.《C语言程序设计》.北京:北京邮电大学出版社,2005
[3]谭浩强著.《C程序设计题解与上机指导》.北京:高等教育出版社,2005
[4]杨路明主编.《C语言程序设计上机指导与习题解答》.北京:北京邮电大学出版社,2005
主 撰 人:阙清贤
审 核 人:罗如为
2012.6