实验9 自定义结构体

2026/4/29 4:02:12

学 号1207010103

天津城市建设学院

高级程序设计语言C++

实验报告

(实验名称) 实验九 自定义数据类型

学班成

生姓名 级 绩

余祥 计算机一班

指导教师(签字)

计算机与信息工程学院

2013年 6 月 23 日

实验九 自定义数据类型

一、实验目的和要求

1. 掌握结构体类型变量的定义和使用; 2. 掌握结构体类型数组的概念和应用; 3. 学习结构体类型数组的说明和使用方法;

二、实验内容和过程

1、定义一个结构体变量(包括年、月、日),编写程序,要求输入年、月、日,程序能计算并输出该日在本年中是第几天。注意闰年问题。

算法流程:

? 定义Date结构体类型 ? 定义Date结构体变量

? 输入数据

? 根据月份求出前几个月的天数之和(switch语句得到每个月的天数) ? 再累加本月的天数

? 特殊情况:根据年是否是闰年,若月对于2且是闰年 天数再加1; 考核知识点:

单个结构体的成员的引用

源程序:

#include using namespace std; struct date { int month; int year; int day; };

int main() { date time; int i,sum=0; cin>>time.year>>time.month>>time.day;

cout<

sum+=30; else sum+=28; } sum=sum+time.day; if (time.month>2&&((time.year%4==0&&time.year0!=0)||time.year@0==0)) sum+=1;

cout<<\本日是该年的\天\ return 0; }

运行结果:

体会:

2、有10个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入10个学生数据,要求打印出3门课的总平均成绩,以及最高分的学生的成绩的数据(包括学号、姓名、3门课成绩、平均分)。 学生1 学生2 学生3 。。。。。 学号 姓名 课程1 课程2 课程3 平均分 算法流程:

? 定义Student结构体类型

struct Student{ int num; string name; double score[4]; };

? 定义Student结构体变量数组,10个学生Student st[10]

? 通过循环输入每个学生的成绩,其中3门课的输入也要用到数组

? 对每个学生的成绩做累计求和,然后求平均值,在求平均值的同时求最大值;最大

值比较得到,因为要把最高分的学生的成绩数据都要输出,此时,因为比较的是分数,所以,我们可以把最高分值的同学所在的数组的下标存储下来。 ? 最后输出所有学生的平均分,及最高分值学生的所有的信息。

源程序:

#include #include using namespace std; struct student { int num; string name; double socre[3]; };

int main() { student st[10]; int i; for(i=0;i<10;i++) { cin>>st[i].num>>st[i].name>>st[i].socre[0]>>st[i].socre[1]>>st[i].socre[2]; st[i].socre[3]=(st[i].socre[0]+st[i].socre[1]+st[i].socre[2])/3; } cout<<\ \学号 \姓名 \课程1 \课程2 \课程3 \平均分\

for (i=0;i<10;i++) cout<<\学生\ \ \ \ \ \ \

return 0; }

运行结果:


实验9 自定义结构体.doc 将本文的Word文档下载到电脑
搜索更多关于: 实验9 自定义结构体 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

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