《C语言程序设计》实验教学大纲 - 2011 联系客服

发布时间 : 星期一 文章《C语言程序设计》实验教学大纲 - 2011更新完毕开始阅读a7d9a29d51e79b89680226b6

题4. 编写一个函数,使给定的一个二维整型数组(5×5)转置,即行列互换。主函数完成数据的输入与结果的输出。

题5. 编写一个函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。 题6.(选作)编写程序,从键盘输入一行字符,统计其中英文字母、空格、数字和其它字符的个数。

题7.(选作)编写一个函数,用“选择排序法”对输入的10个整数按由小到大顺序排列。主函数完成数据的输入与结果的输出。

实验七 指针(设计性实验,8学时)

1.考察知识点

? 变量的定义

? 算术运算符、逗号运算符、赋值运算符、关系运算符及逻辑运算符的运用 ? 数据的输入输出

? 选择结构:if语句和switch语句

? 循环结构:while语句,do-while语句和for语句 ? 一维数组、二维数组及字符数组 ? 函数定义、调用 ? 全局变量、局部变量 ? 宏、文件包含 ? 各种指针的定义及使用 2.实验目的及要求

? 理解指针的基本个概念,掌握各种指针变量的定义方法及指针变量的基本运算规则。 ? 掌握运用指针进行数组操作和进行字符串处理的方法。 ? 掌握指针类型数据作函数参数时的数据传递方法。 ? 了解指向函数的指针变量的基本概念。 ? 了解返回指针的函数的定义及其调用方法。 ? 掌握指向指针的指针的概念及其使用方法。 3.实验重点

? 正确使用数组的指针和指向数组的指针变量。 ? 正确使用字符串的指针和指向字符串的指针变量。 ? 返回指针的函数的定义及其调用方法。 ? 正确使用指向指针的指针变量。 4.实验难点

? 数组的指针和指向数组的指针变量的概念及其使用方法。 ? 字符串的指针和指向字符串的指针变量的概念及其使用方法。 ? 函数的指针的定义及其使用方法。 ? 返回指针的函数的定义及其调用方法。 ? 指针的指针的定义及使用方法。 5.实验内容

编写程序并上机调试运行。说明:以下实验内容均要求用指针方法处理。

题1.请编写函数,对传送过来的3个数选出最大和最小数并通过形参传回调用函数。主函数完成数据的输入与结果的输出。

题2.定义一个函数void sort(int a[ ],int n),用选择法对整型数组a中的元素排序,并定义main()函数调用sort()函数。主函数完成数据的输入与结果的输出。

题3. 编写一个函数,将给定的一个二维整型数组(N×N)转置,即行列互换。主函数完成数据的输入与结果的输出。

题4.将一个数的数码倒过来所得的新数叫原数的反序数。如果一个数等于它的反序数,则称它为对称数。编程序求不超过2000的所有对称数。请编写函数,判断一个数字是否为对称数。若是对称数,函数返回值为1,否则返回值为0。主函数完成数据的输入与结果的输出。

题5.请用字符指针实现函数strlen(s)的功能,函数返回值为s字符串的长度。主函数完成数据的输入与结果的输出。

题6.请用字符指针定义函数strcpy(s,t,m),将字符串t中从第m个字符开始的全部字符复制到字符串s中。主函数完成数据的输入与结果的输出。

题7.请用字符指针实现函数strcat(s,t)的功能,即字符串t接到字符串s后,并返回字符串s的首地址。主函数完成数据的输入与结果的输出。

题8.(选作)编写程序,输入5个单词,请将它们按从小到大的顺序排序后输出。

题9.(选作)编写程序,请分别用指针数组和指向指针的指针对10个整数排序,并输出排序结果。 题10.(选作)编写程序,从键盘输入一行字符,统计其中英文字母、空格、数字和其它字符的个数。

实验八 结构体和共用体(设计性实验,2学时)

1.考察知识点

? 变量的定义

? 算术运算符、逗号运算符、赋值运算符、关系运算符及逻辑运算符的运用 ? 数据的输入输出

? 选择结构:if语句和switch语句

? 循环结构:while语句,do-while语句和for语句 ? 数组及指针的应用 ? 函数定义、调用 ? 全局变量、局部变量 ? 宏、文件包含 ? 结构体的定义及使用 2.实验目的及要求

? 掌握结构体的基本概念和结构体定义的方法,理解结构体数据在内存中的存储形式。 ? 掌握结构体变量和结构体数组的定义和赋值方法,掌握结构体变量成员和结构体数组元素成员的引用方法。

? 了解共用体的概念和用法。

? 掌握链表的概念,初步学会对链表进行操作。 3.实验重点

? 结构体类型变量的定义和使用。 ? 结构体类型数组的概念和使用。 ? 链表的概念及对链表进行操作。 4.实验难点

? 结构体类型变量的定义和使用。 ? 结构体类型数组的概念和使用。 ? 链表的概念及对链表进行操作。 5.实验内容

编写程序并上机调试运行。

题1. 有10个学生,每个学生的信息包括学号、姓名、3门课的成绩,从键盘输入10个学生数据,要求打印每个学生3门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课成绩和平均分)。

题2. 定义一个包含10个教师信息的结构体数组,教师信息包括职工号、姓名、性别、教龄、职称和工资。完成功能如下:

① 设计一个函数input,从键盘输入10位教师的信息。 ② 设计一个函数output,输出该结构体数组内容至屏幕。

③ 设计一个函数sort,实现结构体数组按教师工资由大到小的排序。 ④ 设计一个函数aver,用来计算教师的平均工资并返回。

⑤ 设计一个函数add,对教师进行加工资处理,超过10年教龄的教师工资增加10%,其他人增

加100元。

⑥ 设计main函数,完成对上述函数的调用,实现数据的输入、输出、排序和计算等功能。 题3.(选作)有N个学生围成一圈并依次编号,教师指定从第M个学生开始报数,当报到第S个学生时,即令其出列,然后再从下一个学生开始继续报数,数到第S个学生又令其出列,这样直到所有的学生全部依次出列,求学生出列的顺序。

例如:当N=5,M=2,S=2时,输出应为:3,5,2,1,4。

4.(选作)学生信息包括:学号、姓名、一门课成绩,编程实现学生链表的建立、插入和删除操作。请按以下要求编程:

① 设计一函数建立学生链表。

② 设计一个函数实现向该链表中插入一个新结点。 ③ 设计函数实现删除该链表中指定结点。 ④ 主函数调用上述函数实现程序功能。

实验九 文件(设计性实验,2学时)

1.考察知识点

? 变量的定义

? 算术运算符、逗号运算符、赋值运算符、关系运算符及逻辑运算符的运用 ? 数据的输入输出

? 选择结构:if语句和switch语句

? 循环结构:while语句,do-while语句和for语句 ? 数组及指针的应用 ? 函数定义、调用 ? 全局变量、局部变量 ? 宏、文件包含 ? 结构体的定义及使用 ? 文件操作 2.实验目的及要求

? 掌握文件的基本概念,包括文本文件和二进制文件、文件类型指针、文件结束标志等。 ? 掌握文件的基本操作及文件操作函数的调用形式,包括文本文件和二进制文件的打开和关闭操作、读写操作、文件结束测试函数的使用等。 3.实验重点

? 文件、缓冲文件系统及文件指针的概念。 ? 文件的打开、关闭、读写操作