第十四周项目二 带姓名的成绩单(3)
来源:互联网 发布:js设置input的宽度 编辑:程序博客网 时间:2024/04/29 17:13
问题及代码:
/** Copyright (c) 2014, 烟台大学计算机学院* All rights reserved.* 文件名称:Project.cpp* 作 者:chenqin.* 完成日期:2014年12月1日* 版 本 号:v1.0** 问题描述:设score[8]数组中存储8名同学的C++成绩,增加一个数组string name[8]并赋初值,表示同学们的姓名。 这两个数组中,每名同学的姓名与成绩的下标要始终保持一致(例如name[i]和score[i] 表示同一位同学(下标为i)的姓名和C++成绩,否则会张冠李戴)。* 输入描述:* 程序输出:*/#include<fstream>#include<iostream>#include<string>#include <cstdlib>using namespace std;const int num=90;int main(){ int i,j,t,a=0; string temp; string name[num]; double score[num]; ifstream infile("score.txt",ios::in); if(!infile) { cerr<<"open error!"<<endl; exit(1); } for(i=0; i<num; i++) { infile>>name[i]; infile>>score[i]; if(name[i]=="") break; a++; } //(1)按成绩排序并输出结果 for (j=0; j<num-1; j++) for (i=0; i<num-j-1; i++) { if(score [i]<score [i+1]) { t=score [i]; score [i]=score [i+1]; score [i+1]=t; temp =name[i]; name [i]=name [i+1]; name[i+1]=temp; } } cout <<"按成绩排序后同学名单:"<<endl; for (i=0; i<num; i++) cout <<name [i]<<" "<<score [i]<<endl; //(2)按姓名排序并输出结果 for (j=0; j<num-1; j++) for (i=0; i<num-j-1; i++) { if(name [i]<name[i+1]) { temp=name [i]; name [i]=name [i+1]; name [i+1]=temp; t=score[i]; score[i]=score [i+1]; score [i+1]=t; } } cout <<"按同学姓名排序后的成绩单:"<<endl; //排序对象是字符串 for (i=0; i<num; i++) cout <<name[i]<<" "<<score[i]<<endl; infile.close(); return 0;}
运行结果:
0 0
- 第十四周项目二带姓名的成绩单(3)
- 第十四周项目二 带姓名的成绩单(3)
- 第十四周项目二(1)带姓名的成绩单
- 第十四周项目二(2)带姓名的成绩单
- 第十四周 项目二:带姓名的成绩单(2.3)
- 第十四周项目二(1):带姓名的成绩单
- 第十四周项目二(2):带姓名的成绩单
- 第十四周 项目二--带姓名的成绩单(2.3)
- 第十四周项目二 带姓名的成绩单(1)
- 第十四周项目二 带姓名的成绩单 (2)
- 求助!!!第十四周项目二(3)从文件读入带姓名的成绩单
- 第十四周项目二(3)——带姓名的成绩单
- 第十四周项目二 带姓名的成绩单
- 第十四周项目二—带姓名的成绩单
- 第十四周项目二——带姓名的成绩单
- 第十四周项目二:带姓名的成绩单
- 第十四周项目二之带姓名的成绩单
- 第十四周项目二——带姓名的成绩单
- 话题监测与发现之热点新闻
- JXLS生成EXCEL并下载
- ubuntu14.04安装opgngl
- 虚拟机linux系统如何实现磁盘增加和磁盘扩容
- Linux(Unix)时钟同步ntpd服务配置方法
- 第十四周项目二 带姓名的成绩单(3)
- Java多线程间的通信问题扩展
- 学习Libgdx游戏开发(一)
- 黑马程序员一java的IO流中,更改输入源与输出源
- iOS 通知中心 NSNotificationCenter & NSNotification
- 14周课后自主-项目4-英文字典
- 工程师应该掌握的20个模拟电路
- qt超强绘图控件qwt - 安装及配置
- 两字符串的首尾连接