C语言实验报告(16)(8)

2019-04-09 15:04

程 序 调 试 过 程 实 习 小 结 36

实验十 结构体程序设计

【实验目的】

1.掌握结构体类型变量与结构体数组的定义和使用。 2.学会使用结构体指针变量和结构体指针数组。

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

【上机实习指导】

1.输入出10个学生的学号、姓名和成绩,求出其中的高分者和低分者。 # include “stdio.h” struct student { int num;

char name[20]; int score; };

void main( ) { int i;

struct student st,stmax,stmin; stmax.score=0; stmin.score=100; printf(“\\n input data”); for(i=0;i<10;i++)

{ scanf(“%d%s%d”,&st.num,st.name,&st.score);

if(st.score>stmax.score) stmax=st; if(st.score

printf(“\\n hight:]s]”,stmax.num,stmax.name,stmax.score); printf(“\\n low:]s]”,stmin.num,stmin.name,stmin.score); }

①分析程序,上机运行程序。

②程序中,哪些是对结构体变量的成员引用,哪些是整体引用? ③对于此例来说,用结构体变量作为数据结构有何优越性?

【自编程序上机】

1.有一学生情况如下表所示。编制一个C程序,用冒泡法对该学生情况表按成绩(grade)从低到高进行排序。

37

具体要求如下: ①结构体类型为 struct 结构体名 { int num;

char name[8]; char sex; int age;

int grade; }

②在程序中,首先输出排序前的学生情况,然后输出排序后的结果,其格式如上表所示(表的框线不要)。

2.定义一个学生成绩结构体类型,包含“学号”、“姓名”、“性别”、“年龄”、“英语”、“数学”、“物理”、“总分”、“名次”等信息。编写5个函数分别实现:

使用结构体数组,输入10名学生的上述信息; 计算每一个学生的总分、平均分; 计算每一门课程的平均分; 查找成绩有不及格的学生信息; 输出全班学生的学号、总分及名次。 3.链表基本操作。 具体要求如下:

①初始时链表为空,即链表的头指针为空。

②对于上表所示的学生情况表,依次将每个学生的情况作为一个结点插入到单链表的链头(即当前插入的结点将成为链表的第一个结点)。

③所有学生情况都插入到链表中后,从链头开始,依次输出链表中的各结点值(即每个学生的情况)。输出格式如同上表。

38

【实验报告】

实习时间: 实习地点: 实习机号: 具 体 实 验 内 容 39

程 序 调 试 过 程 实 习 小 结 40


C语言实验报告(16)(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高中化学实验探究教学的实践研究开题报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: