分别在程序中按以下两种情况处理:
1 函数形参用指针变量。 ○
2函数形参用数组名。 ○
作比较分析,掌握其规律。
3 预习内容
预习教材第8章
17.10 实验10 指针(二)
1.实验目的
(1)进一步掌握指针的应用。
(2)能正确使用数组的指针和指向数组的指针变量。 (3)能正确使用字符串的指针和指向字符串的指针变量。 (4)了解指向指针的指针的用法。
2.实验内容
根据题目要求,编写程序(要求用指针处理), 运行程序,分析结果,并进行必要的讨论分析。
(1)有n个人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的人(本题是第8章第5题)。 (2)将一个5×5的矩阵(二维数组)中最大的元素放在中心,4个角放最小的元素(顺序为从左到右,从上到下一次从小到大存放),写一函数实现之。用main函数调用(本题是第8章第10题)。 (3)有一个班4个学生,5门课程。
1 求第一门课程的平均分。 ○
2 找出有两门以上课程不及格的学生,输出他们的学号和全部课程成绩及平均成绩。 ○
3 找出平均成绩在90分以上或全部课程成绩在85分以上的学生。分别编3个函数实现以○
上3个要求(本题是第8章第14题)。
(4)用指向指针的指针的方法对n个字符串排序并输出。要求将排序单独写成一个函数。n 和各整数在主函数中输入。最后在主函数中输出(本题是第8章第20题)。
3.预习内容
预习教材第8章
17.11 实验11 用户自己建立数据类型
1.实验目的
(1)掌握结构体类型变量的定义和使用。 (2)掌握结构体类型数组的概念和应用。 (3)了解链表的概念和方法。
2.实验内容
编程序,然后上机调试运行。
(1)有5个学生,每个学生的数据包括学好、姓名、3门课的成绩。从键盘输入5个学生数据,要求输出3门课总平均成绩,以及最高分的学生的数据(包括学好、姓名、3门课的成绩、平均分数),本题是第9章第5题。 要求用一个input函数输入5个学生的数据,用一个average函数求总平均分,用max函数找出最高分学生数据。总平均分和最高分的学生的数据都在主函数中输出。
(2)13个人围成一圈,从第1个人开始顺序报号1,2,3。凡报到“3”者退出圈子,找出最后留在圈子中的人原来的序号。要求用链表实现(本题是第9章第6题)。
(3)建立一个链表,每个节点包括:学号、姓名、性别、年龄。输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,则将此结点删去(本题是第9章第12题)。
3.预习内容
预习教材第9章。
17.12 实验12 文件操作
1.实验目的
(1)了解文件和文件指针的概念。
(2)学会使用文件操作函数实现对文件的打开、关闭、读、写等操作。 (3)学会对数据文件进行简单的操作。
2.实验内容
编程序并上机调试运行。
(1)有5个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生学号、姓名、3门课成绩),计算出平均成绩,将原有数据和计算出的平均分数放在磁盘文件stud中(本题是第10章第5题)。
设5名学生的学号、姓名、和3门课的成绩如下:
10101 Wang 89,98,67.5 10103 Li 60,80,90 10106 Sun 75.5,91.5,99 10110 Ling 100,50,62.5 10113 Yuan 58,68,71 向文件stud写入数据后,应检查验证stud文件中的内容是否正确。
(2)将上题stud文件中的学生数据按平均分进行排序处理,将已排序的学生数据存入一个新文件stu_sort中(本题是第10章第6题)。 在向文件stu_sort写入数据后,应检查验证stu_sort文件中的内容是否正确。
(3)将上题已排序的学生成绩文件进行插入处理。插入一个学生的3门课成绩。程序先计算新插入的学生的平均成绩,然后将它按成绩高低顺序插入,插入后建立一个新文件(本题是第10章第7题)。 要插入的学生数据为:
10108 Xin 90,95,60
在向新文件stu_new写入数据后,应检查验证stu_new文件中的内容是否正确。
3.预习内容 预习教材第10章。