实验十
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验十结构体程序设计(一)
一.实验目的
1.掌握结构体的基本概念与定义方法;
2.掌握结构体的程序设计。
二.实验环境
1.硬件:PII以上计算机;
2.软件:Windows、Visual C++ 6.0;
3.其它:一张软盘或者U盘等可移动的存储设备。
三.实验内容
练习1.编写一个程序,功能如下:
⑴输入若干人员的姓名及电话号码(8位),以字符“#”结束输入;
⑵当输入姓名时,能查找出该人的电话号码(如果没有此人,则显示未找到该记录)。
运行结果示例:
练习2.编写一个程序,功能为读入一组正整数(以-1作为结束标志),将它们存储在一个动态链表中。再读入一个数m,在链表中搜索值为m的结点,输出从该结点开始
直至链表结束的所有数据。此功能为可重复多次的,直至用户输入'N'结束程序。
要求:程序包含2个子函数,各函数要求如下:
●子函数1:功能为创建包括n个结点的链表并读入数据;
形式为:struct LNode *creat(void);
●子函数2:功能为输出链表中的从m值开始的所有结点;
形式为:void print(struct LNode *head,int m);
提示:程序可根据需要设置一个全程变量n,用于计结点个数;
运行结果示例:
练习3.有4个学生,每个学生的数据包括学号、姓名、三门课的成绩,要求:
⑴从键盘输入4个学生的数据;
⑵求出每门课的平均成绩;
⑶求出每个学生的平均成绩。
运行结果示例:
程序主框架:
#include "iostream.h"
#include "string.h"
#define N 4
struct student
{
int num;
char name[20];
int score[3];
};
void input(struct student stu[]) {
}
void danke(struct student *p) {
}
void everyone(struct student *p) {
}
void main()
{
struct student stu[N];
input(stu);
danke(stu);
everyone(stu);
}