第二周 项目三 用结构体数据做运算

上机目的:数据结构体

上机内容:获得奖学金的人以及排名

 

/*    
.* 程序的版权和版本声明部分    
.* Copyright (c)2013, 烟台大学计算机学院学生    
.* All rightsreserved.    
.* 文件名称:text.cpp    
.* 作者:刘玉金   
.* 完成日期: 2013年3月18日    
.* 版本号: v1.0    
.* 输入描述:从文件中获得学生名单
.* 问题描述:  求学生的排名以及获得奖学金的人
.* 输出:  学生的排名以及获得奖学金的的人 
*/    #include <iostream>  
#include <iostream>   
#include <fstream>   
#include <cstdlib> 
using namespace std;  
struct Student  
{  
    char num[13];
    char name[10]; 
	int  cpp;
    int math;  
    int english;  
    int grade;  
};  
const int N=200;  
int main( )  
{  
    int i, j, k, stuNum=0;     
    Student stu[N], t_stu;  
	
    
    ifstream infile("score.txt",ios::in);      
    if(!infile)                 
    {  
        cerr<<"open error!"<<endl;  
        exit(1);  
	}  
	
    i=0;  
    while(!infile.eof())  
    {  
        infile>>stu[i].num>>stu[i].name>>stu[i].cpp>>stu[i].math>>stu[i].english;  
        stu[i].grade=stu[i].cpp+stu[i].math+stu[i].english;  
        ++stuNum;  
        ++i;  
    }  
    infile.close();  
	
	
    for(i=0; i<stuNum-1; i++)  
    {  
        k=i;  
        for(j=i+1; j<stuNum; j++)  
            if(stu[j].grade>stu[k].grade) k=j;   
			t_stu=stu[k];         stu[k]=stu[i];  
			stu[i]=t_stu;  
    }  
	
    
	for(i=0; i<stuNum; ++i)  
    {  
        cout<<stu[i].num<<"\t"<<stu[i].name<<"\t"<<stu[i].cpp<<"\t"<<stu[i].math<<"\t"<<stu[i].english<<"\t"<<stu[i].grade<<endl;  
    }  
	
	
	cout<<"恭喜以下同学获得奖学金"<<endl;  
    i=0,j=1;  
	while (j<=30)  
    {  
        if (stu[i].cpp>=60&&stu[i].math>=60&&stu[i].english>=60)  
        {  
            cout<<j<<'\t'<<stu[i].name<<'\t'<<stu[i].grade<<endl;  
            j++;  
		}  
        i++;  
    }  
	
 
    	
    return 0;  
}


运行结果:

 

心得体会:这个根据项目一与项目二的结合,进行运算的。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值