第17周报告1:
实验目的:学会利用结构数组
实验内容:定义一个结构数组,并对学生成绩进行排序。
* 程序头部注释开始
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br>
* 作<wbr><wbr><wbr> 者:<wbr><wbr>雷恒鑫<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br>
* 完成日期:<wbr><wbr><wbr><wbr><wbr><wbr><wbr>2011<wbr> 年<wbr><wbr><wbr><wbr><wbr><wbr>12 月<wbr>14<wbr><wbr><wbr><wbr><wbr><wbr> 日<br>
* 版本号:<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> V1.0<br><br>
* 对任务及求解方法的描述部分<br>
* 输入描述:从文件中读入学生数据</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
* 问题描述:如何利用结构数组对学生成绩进行排序。
* 程序输出:排序后的结果
* 程序头部的注释结束(此处也删除了斜杠)
#include <fstream>
#include <iostream>
using namespace std;
struct subject
{
<wbr>double chinese;<br><wbr>double math;<br><wbr>double english;<br>
};<br>
struct student<br>
{<br><wbr>char num[12];<br><wbr>char name[12];<br><wbr>subject grade;<br><wbr>double score;<br>
};<br>
student stu[180];<br>
int main()<br>
{<br><wbr>student student1;<br><wbr>int i,j;<br><wbr>double t;<br><wbr>ifstream infile("score.txt",ios::in);<br><wbr>if (!infile)<br><wbr>{<br><wbr><wbr>cerr<<"open error!"<<endl;<br><wbr><wbr>exit(1);<br><wbr>}<br><wbr>for(i=0;i<180;i++)<br><wbr>{<br><wbr><wbr>infile>>stu[i].num>>stu[i].name>>stu[i].grade.chinese>>stu[i].grade.math>>stu[i].grade.english;<br><wbr><wbr>stu[i].score=stu[i].grade.chinese+stu[i].grade.math+stu[i].grade.english;<br><wbr>}<br><wbr>infile.close();<br><wbr>for(i=0;i<180;i++)<br><wbr>{<br><wbr><wbr>cout<<stu[i].name<<"同学的总分为:"<<stu[i].score<<'\t';<br><wbr>}<br><wbr>cout<<endl;<br><wbr>for(j=0;j<180-1;j++)<br><wbr><wbr>for(i=0;i<180-1-j;i++)<br><wbr><wbr><wbr>if(stu[i].score<stu[i+1].score)<br><wbr><wbr><wbr>{<br><wbr><wbr><wbr><wbr>student1=stu[i];<br><wbr><wbr><wbr><wbr>stu[i]=stu[i+1];<br><wbr><wbr><wbr><wbr>stu[i+1]=student1;<br><wbr><wbr><wbr>}<br><wbr><wbr><wbr>cout<<"排序后的成绩单为:"<<endl;<br><wbr><wbr><wbr>for(i=0;i<180;i++)<br><wbr><wbr><wbr>{<br><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr>cout<<stu[i].num<<'\t'<<stu[i].name<<'\t'<<stu[i].grade.chinese<<'\t'<<stu[i].grade.math<<'\t'<<stu[i].grade.english<<'\t'<<stu[i].score<<endl;<br><wbr><wbr><wbr>}<br><wbr><wbr><wbr>cout<<"获得奖金同学的名单为:"<<endl;<br><wbr><wbr><wbr>for(i=0;i<=30;i++)<br><wbr><wbr><wbr>{<br><wbr><wbr><wbr><wbr>if(stu[i].grade.chinese && stu[i].grade.math && stu[i].grade.english>=60)<br><wbr><wbr><wbr><wbr>{<br><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr>cout<<stu[i].name<<'\t';<br><wbr><wbr><wbr><wbr>}<br><wbr><wbr><wbr>}<br><wbr><wbr><wbr>cout<<endl;<br><wbr><wbr><wbr>return 0;<br>
}</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
运行结果:
经验积累:
1.如果想要对结构数组stu[i]排序需定义一个结构体变量student student1。
2.
3.
上机感言:
原来表格可以用结构数组做出来,
结构数组功能挺强大的。
贺老师,黑窗口中学号后面两个相同的名字如何去掉一个?
分享到:
相关推荐
python学习笔记,包含-数组方法-数组排序-数组形状-对角线
python学习笔记,包含choose 函数实现条件筛选-数组广播机制-数组读写-结构化数组
Java程序设计课程实验4-数组Java程序设计课程实验4-数组Java程序设计课程实验4-数组Java程序设计课程实验4-数组Java程序设计课程实验4-数组Java程序设计课程实验4-数组Java程序设计课程实验4-数组Java程序设计课程...
数据结构实验报告-数组和广义表.doc
python学习笔记,包含python-numpy-简介-基础-数组-数组类型
matlab数组循环赋值 1--MATLAB数组的创建、寻访与赋值1--MATLAB数组的创建、寻访与赋值1--MATLAB数组的创建、寻访与赋值1--MATLAB数组的创建、寻访与赋值1--MATLAB数组的创建、寻访与赋值1--MATLAB数组的创建、寻访...
java-c语法8---数组的数组1 java视频 马克java社区 马克towin
数组的概念和定义 一维数组 多维数组 -- 二维数组 字符型数组和字符串型数组
第七章-数组-数据结构与数组的概念-影响程序设计的因素优秀文档.ppt
数据结构---数组和广义表
数据结构数组好资源PPT
用数据结构与算法 实现的数组 用一维数组定义用 二维数组 定义三维数组 用模版
程序设计基础徐明星w06-chap06-数据组织一-递推思想-数组定义-字符数组-part1.ppt
JAVA实验报告-数组.docx
C++编程数据组织1-数组-1.pptx
pythonlist是数组还是链表实现的-数组和链表结构(python)-1 数组和链表.pdf
python学习笔记,包含数组属性方法总结-数组与字符串的转换-生成数组的函数-矩阵
matlab数组定义 [matlab学习笔记ppt]概述-基本操作-数组定义-数组矩阵
02-Java基础(数组-常见操作-遍历
LAMPBrotherPPT--数组