第二周上机错误程序——有序的结构体数组(求高人给指点迷津,程序不能运行,快难死俺了)

来源:互联网 发布:玻璃优化软件下载 编辑:程序博客网 时间:2024/05/20 11:27
/**程序的版权和版本声明部分:*Copyright(c)2013,烟台大学计算机学院学生*All rights reserved.*文件名称:*作者:刘中林*完成日期:2013年 3月 8 日*版本号:v1.0*对任务及求解方法的描述部分:*输入描述: 无*问题描述:对学生数据进行运算*程序输出:学生成绩*问题分析:*算法设计:*/#include <fstream>   //操作文件必写#include<iostream>#include<cstdlib>using namespace std;struct Student{    char num[13];    char name[10];    int cpp;    int math;    int english;    int grade;    double average;};void output(Student [],int);void sort(Student [],int);void ExcellentStu(Student[],int);int main(){    Student stu[100];    int i,stuNum=0;    ifstream infile("D:\\score.txt",ios::in);    if(!infile)    {        cerr<<"open error!"<<endl;        exit(1);    }    i=0;    while(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;        stu[i].average=stu[i].grade/3;        ++stuNum;        ++i;    }    /*infile.close();*/    cout<<"下面是成绩单:"<<endl;    output(stu,stuNum);    cout<<"按总分降序排列为:"<<endl;    sort(stu,stuNum);    output(stu,stuNum);    cout<<"优秀学生名单为:"<<endl;    ExcellentStu(stu,stuNum);    return 0;}void output(Student stu[],int n){    int i;    cout<<"学号"<<"         "<<"姓名"<<"   "<<"c++"<<" "<<"数学"<<" "<<"英语"<<" "<<"总分"<<" "<<"平均分"<<" "<<endl;    for(i=0;i<n;i++)    cout<<stu[i].num<<"        "<<stu[i].name<<"   "<<stu[i].cpp<<"  "<<stu[i].math<<" "<<stu[i].english<<" "<<stu[i].grade<<" "<<stu[i].average<<endl;}void sort(Student stu[],int n){    int i,j;    Student t;    for(j=0;j<n-1;j++)    for(i=0;i<n-1-j;i++)    {        if(stu[i].grade<stu[i+1].grade)        {            t=stu[i];            stu[i]=stu[i+1];            stu[i+1]=t;        }    }}void ExcellentStu(Student stu[],int n){    int num=0,i;    sort(stu,n);    for(i=0;i<n;i++)    {        if(stu[i].cpp>=60&&stu[i].math>=60&&stu[i].english>=60)        {    num++;        cout<<stu[i].num<<"        "<<stu[i].name<<"   "<<stu[i].cpp<<"  "<<stu[i].math<<" "<<stu[i].english<<" "<<stu[i].grade<<" "<<stu[i].average<<endl;            if(num==30)            break;        }    }}
*输出:
*心得体会:汽车没了方向盘不好开啊。

0 0
原创粉丝点击