项目3-用结构体数组作计算
来源:互联网 发布:js 微信分享demo 编辑:程序博客网 时间:2024/05/16 01:12
(1)从文件中读出数据,存放到你定义的结构体数组中,即项目2(1);
(2)求出每名同学的总分(可以在读入过程中“顺便”计算);
(3)按总分排序(降序);
(4)输出排序后的成绩单;
(2)求出每名同学的总分(可以在读入过程中“顺便”计算);
(3)按总分排序(降序);
(4)输出排序后的成绩单;
(5)有30名同学可以获得奖学金,规则是总分高者优先,有挂科不能得奖学金。请输出可以得奖学金同学的名单。
#include <iostream>#include<fstream>#include<cstdlib>#include<iomanip>using namespace std;struct Score{char num[14];char name[10];int cpp;int math;int english;int sum;Score *next;friend istream &operator >>( istream &is, Score &a){is>>a.num>>a.name>>a.cpp>>a.math>>a.english;return is;}friend ostream &operator<<(ostream &os,const Score &a){os<<a.num<<" "<<left<<setw(6)<<a.name<<" "<<a.cpp<<" "<<a.math<<" "<<a.english<<" "<<a.sum;return os;}};int main(){ifstream infile;infile.open("haohaoxuexi.txt");if(!infile){cerr<<"file can not open"<<endl; exit(1);}Score a[10];int i=0;Score rep;while(infile>>a[i]){a[i].sum=0;a[i].sum=a[i].cpp+a[i].math+a[i].english;i++;} infile.close(); for(int j=0;j<10;j++)cout<<a[j]<<endl; for(int i=0;i<9;i++)//冒泡排序法for(int j=0;j<9-i;j++) if(a[j].sum<a[j+1].sum){rep=a[j];a[j]=a[j+1];a[j+1]=rep;}cout<<endl; for(int i=0;i<10;i++)cout<<a[i]<<endl;//输出排序后的名单 //输出前拿奖金(总分高,无挂科) cout<<endl; cout<<"拿奖学金的人名单:"<<endl; int num=0; for(int i=0;i<10;i++) { if(a[i].cpp>=60&&a[i].math>=60&&a[i].english>=60){cout<<a[i]<<endl;num++;}if(3==num)break; }return 0;}
0 0
- 项目3-用结构体数组作计算
- 项目三--用结构体数组作计算
- 第二周 项目三:用结构体数组作计算
- C++第2周项目3——用结构体数组作计算
- C++第2周项目3——用结构体数组作计算
- 用结构体数组作计算
- 用结构体数组作计算
- 用结构体数组作计算
- 第二周上机任务项目3-用结构体数组做计算
- 用结构体数组计算
- 结构体计算数组
- 结构体数组计算
- 用结构体数组做计算、
- 用结构体数组做计算
- 用结构体数组做计算
- 用结构体数组做计算
- 2013第二周上机任务项目三(用结构体数组做计算)
- 第二周项目三—用结构体数组做计算
- QT模态对话框和非模态对话框
- 在ListView中多个item里面的按钮,获取不到当前item的位置
- unity3d学习笔记(十六)--unity3d读取plist或xml文件
- Freeradius原理
- unity3d学习笔记(十八)--利用C#的代理和事件结合NGUI的按钮实现施放
- 项目3-用结构体数组作计算
- hadoop常用命令笔记
- openjtag 调试 u-boot
- K-means特征学习
- C++ boost智能指针详解
- 使用直方图比较图像的相似度
- Fedora 16下python连接MySQL环境配置
- iOS-多线程(模拟火车票售票系统)
- 研发与测试