C++程序设计报告(17-1)

/*
* 程序头部注释开始  
* 程序的版权和版本声明部分  
* Copyright (c) 2011, 烟台大学计算机学院学生  
* All rights reserved.  
* 文件名称:                           
* 作    者:杨坛坛                              
* 完成日期:2011  年 06 月 13  日  
* 版 本号:    vc2008         
* 对任务及求解方法的描述部分  
* 输入描述: 
* 问题描述:
* 程序输出:  
* 程序头部的注释结束
*/ 

#include <iostream>
#include<string>
#include <fstream>
using namespace std;
class student
{
public:
	student(){}
	student(string Nam,double C_s,double Math_s,double English_s ,double s)
	{
		Name=Nam;
		C_score=C_s;
        Math_score=Math_s;
        English_score=English_s;
		score=s;
	}
	
	double Score();//总成绩
    void set_show(string Nam,double C_s,double Math_s,double English_s ); 
	string get_Name(){return Name;}  
    double get_C(){return C_score;}  
    double get_Math(){return Math_score;}  
    double get_English(){return English_score;}  
    double get_score(){return score;}  
    void set_C(double C_s){C_score=C_s;}  
    void set_Math(double Math_s){Math_score=Math_s;}  
    void set_English(double English_s){English_score=English_s;}  
	void set_score(double s){score=s;}  

private:
	string Name;//姓名
	double C_score;//C++成绩
	double Math_score;//高数成绩
	double English_score;//英语成绩
	double score;//总成绩
};
double student::Score ()
{
	score = Math_score + C_score + English_score;
	return score;
}
void student::set_show(string Nam,double C_s,double Math_s,double English_s)  
{  
	Name=Nam;
	C_score=C_s;
    Math_score=Math_s;
    English_score=English_s;
	Score();
}  
int main()
{
	student stud[100];
    string name;  
    double c, math, english,score;  
	fstream infile("score.dat",ios::in);//读入文件
	if(!infile)
	{
	cerr<<"open error!"<<endl;
	abort();
	}
	for(int i=0;i<100;i++)
	{
		infile>>name>>c>>math>>english;
		//infile.read((char*)&stud[i],sizeof(stud[i]));

		stud[i].set_show(name, c, math, english); 
	}
	infile.close();
	student max_stud(" ",0,0,0,0);
	for(int i=0;i<100;i++)
	{
		if(max_stud.get_C()<stud[i].get_C())
			max_stud.set_C(stud[i].get_C());
		if(max_stud.get_English()<stud[i].get_English ())
			max_stud.set_English(stud[i].get_English ());
		if(max_stud.get_Math()<stud[i].get_Math ())
			max_stud.set_Math(stud[i].get_Math ());
		if(max_stud.get_score()<stud[i].get_score())
			max_stud.set_score(stud[i].get_score());

	}
	cout<<"C++最高分:"<<max_stud.get_C()<<endl;
	cout<<"英语最高分:"<<max_stud.get_English()<<endl;
	cout<<"高数最高分:"<<max_stud.get_Math()<<endl;
	cout<<"最高总成绩:"<<max_stud.get_score()<<endl;  
    student t;
	for(int j=0;j<100-2;j++)   
    {  
        for(int i=0;i<100-j-1;i++)     
            if (stud[i].get_score()<stud[i+1].get_score())   
            {  
                t=stud[i];   
                stud[i]=stud[i+1];  
                stud[i+1]=t;  
            }  
    }  
 ofstream outfile("binary_score.dat",ios::out);  //读出文件 
    if(!outfile)      
    {  
        cerr<<"open error!"<<endl;  
        exit(1);  
    }  
    for(int i=0;i<100;i++)  
    {  
        outfile<<stud[i].get_Name()<<" ";  
        outfile<<stud[i].get_C()<<"  ";  
        outfile<<stud[i].get_Math()<<"  ";  
        outfile<<stud[i].get_English()<<"  ";  
        outfile<<stud[i].get_score()<<endl;  
    }  
	system("pause");
	return 0;
}


运行结果:

C++最高分:100
英语最高分:100
高数最高分:100
最高总成绩:291
请按任意键继续. . .

score文件:

刘得意 60 98 75
王锐 63 90 96
何煜中 90 73 82
王磊 87 86 92
冯松 89 98 83
裴培 75 82 91
马骁 62 67 90
马婧 98 84 87
周俊升 57 68 96
贺祺 61 96 72
李桐 93 83 86
高路 63 74 98
冯佳媛 61 79 81
张迪 99 88 80
张里响 85 65 96
王瑞麒 89 83 91
徐金竹 75 89 73
赵媛媛 77 75 66
宋宗杰 94 100 92
张佳玮 61 98 96
王姝 70 91 90
宋媛媛 61 94 92
于莉 55 66 78
于浩 78 84 72
王竞 90 87 67
崔赞 91 67 93
宋静 69 85 73
王磊 71 78 77
方圆 70 79 76
李朋 90 82 97
马佳 60 90 100
张龙 62 100 78
马里 73 95 73
韩明 83 97 88
马立 73 90 83
吴清正 89 97 85
印虹 92 68 75
田苗苗 75 91 71
卫青 66 73 77
冷云 89 88 71
葛志伟 100 79 71
范振光 98 87 89
王芳 71 97 99
杨超 67 73 82
杨梦婕 89 99 67
梁雅宁 55 88 100
王琦 98 95 98
吴玮 69 76 68
杨阔 90 91 98
贾伟林 63 90 86
刘亚新 77 81 95
金昕 92 67 69
董一伟 93 88 80
汤娜 68 85 71
周恒 87 82 69
张笑 86 88 76
文静 93 88 85
杨华鑫 81 81 68
苏明霞 59 79 94
黄京 62 75 96
佟欣 60 79 98
张雯 69 70 93
刘京西 67 78 78
徐嘉琦 90 75 87
魏佳 100 94 80
高举 81 99 91
边里 56 94 87
何佳成 70 75 78
赵旭洋 87 91 94
孙大伟 65 69 98
鲁继森 84 79 75
白涛 57 82 75
蔺剑飞 88 75 79
兰天 83 66 74
王悦 79 82 70
陈世勃 70 92 65
张昊 94 83 96
高清 76 83 84
王欣欣 71 83 78
王欢欢 57 33 66
叶丹 87 80 96
李悦 63 79 97
郭倩 69 94 69
刘盈 99 72 93
杨洁 96 79 87
徐一菡 85 45 62
王蒙 67 97 89
张敏 85 75 89
桂佳 60 73 65
林倩 67 77 80
任盛达 57 86 88
吴佳林 96 65 82
黄金龙 85 90 78
陈美珠 82 72 83
冼丹 100 89 89
唐楠 68 97 77
张扬 77 65 93
宋航彬 80 71 91
薛淇文 89 71 75
刘紫亮 72 98 84
binary_score.dat文件:

王琦 98  95  98  291
宋宗杰 94  100  92  286
杨阔 90  91  98  279
冼丹 100  89  89  278
范振光 98  87  89  274
魏佳 100  94  80  274
张昊 94  83  96  273
赵旭洋 87  91  94  272
吴清正 89  97  85  271
高举 81  99  91  271
冯松 89  98  83  270
马婧 98  84  87  269
李朋 90  82  97  269
韩明 83  97  88  268
张迪 99  88  80  267
王芳 71  97  99  267
文静 93  88  85  266
王磊 87  86  92  265
刘盈 99  72  93  264
王瑞麒 89  83  91  263
叶丹 87  80  96  263
李桐 93  83  86  262
杨洁 96  79  87  262
董一伟 93  88  80  261
张佳玮 61  98  96  255
杨梦婕 89  99  67  255
刘紫亮 72  98  84  254
刘亚新 77  81  95  253
王蒙 67  97  89  253
黄金龙 85  90  78  253
徐嘉琦 90  75  87  252
王姝 70  91  90  251
崔赞 91  67  93  251
马佳 60  90  100  250
葛志伟 100  79  71  250
张笑 86  88  76  250
王锐 63  90  96  249
张敏 85  75  89  249
裴培 75  82  91  248
冷云 89  88  71  248
宋媛媛 61  94  92  247
张里响 85  65  96  246
马立 73  90  83  246
何煜中 90  73  82  245
王竞 90  87  67  244
梁雅宁 55  88  100  243
高清 76  83  84  243
吴佳林 96  65  82  243
蔺剑飞 88  75  79  242
唐楠 68  97  77  242
宋航彬 80  71  91  242
马里 73  95  73  241
张龙 62  100  78  240
贾伟林 63  90  86  239
李悦 63  79  97  239
周恒 87  82  69  238
鲁继森 84  79  75  238
徐金竹 75  89  73  237
田苗苗 75  91  71  237
佟欣 60  79  98  237
边里 56  94  87  237
陈美珠 82  72  83  237
高路 63  74  98  235
印虹 92  68  75  235
张扬 77  65  93  235
薛淇文 89  71  75  235
于浩 78  84  72  234
刘得意 60  98  75  233
黄京 62  75  96  233
苏明霞 59  79  94  232
张雯 69  70  93  232
孙大伟 65  69  98  232
王欣欣 71  83  78  232
郭倩 69  94  69  232
王悦 79  82  70  231
任盛达 57  86  88  231
杨华鑫 81  81  68  230
贺祺 61  96  72  229
金昕 92  67  69  228
宋静 69  85  73  227
陈世勃 70  92  65  227
王磊 71  78  77  226
方圆 70  79  76  225
汤娜 68  85  71  224
林倩 67  77  80  224
刘京西 67  78  78  223
何佳成 70  75  78  223
兰天 83  66  74  223
杨超 67  73  82  222
周俊升 57  68  96  221
冯佳媛 61  79  81  221
马骁 62  67  90  219
赵媛媛 77  75  66  218
卫青 66  73  77  216
白涛 57  82  75  214
吴玮 69  76  68  213
于莉 55  66  78  199
桂佳 60  73  65  198
徐一菡 85  45  62  192
王欢欢 57  33  66  156

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值