第17周项目6-学生成绩统计(从文件中读入)
来源:互联网 发布:php把字符串变成数组 编辑:程序博客网 时间:2024/05/23 01:54
问题及代码:
</pre><pre class="cpp" name="code">/* *Copyright (c)2014,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:score.cpp *作 者:赵敏 *完成日期:2014年12月23日 *版 本 号:v1.0 * *问题描述:每位同学的信息学号、姓名、C++、高数、英语成绩。定义一个学生成绩的结构体数组,其中的数据成员包括学号(char num[13])、姓名(name)、三门课的成绩(grade)、总分(score)、均分(average))。 (1)从键盘上输入N名学生的信息(N定义为常变量); (2)求出每名同学的总分和均分,并存储在结构体数组中(可以读入过程中“顺便”计算); (3)输出每位同学的信息学号、姓名、总分和均分。 */ #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; double average;};const int N=200;int main(){ Student stu[N],t; int i,stuNum=0,j;//从文件中读出数据,存放到你定义的结构体数组中; ifstream infile("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; ++stuNum; ++i; } infile.close(); cout<<"成绩单为:"<<endl; for(i=0;i<stuNum;i++) { cout<<stu[i].num<<" "<<stu[i].name<<" "<<stu[i].cpp<<" "<<stu[i].math<<" "<<stu[i].english<<" "<<stu[i].grade<<endl; } cout<<endl; for(i=0;i<stuNum-1;i++) for(j=0;j<stuNum-i-1;j++) { if(stu[j].grade<stu[j+1].grade) { t=stu[j+1]; stu[j+1]=stu[j]; stu[j]=t; } } cout<<"排序后成绩:"<<endl; for(i=0;i<stuNum;i++) { cout<<stu[i].num<<" "<<stu[i].name<<" "<<stu[i].cpp<<" "<<stu[i].math<<" "<<stu[i].english<<" "<<stu[i].grade<<endl; } cout<<"获奖名单为:"<<endl;i=0,j=1;int s; while(j<=30) { if (stu[i].cpp>=60&&stu[i].math>=60&&stu[i].english>=60) { cout<<j<<"、"<<stu[i].name<<endl; s=stu[i].grade; j++; } i++; }while(s==stu[i].grade){ if (stu[i].cpp>=60&&stu[i].math>=60&&stu[i].english>=60) { cout<<j<<"、"<<stu[i].name<<endl; j++; } i++;}}
运行结果:
学习心得:
在最后的相同成绩也得奖不会,参考了老师的。。。。
0 0
- 第17周项目6-学生成绩统计(从文件中读入)
- 第17周【项目 6-学生成绩统计】(4)
- 第17周【项目 6-学生成绩统计】(5)
- 第17周项目6学生成绩统计(4)
- 第17周 项目6-学生成绩统计(2)
- 第17周 项目6-学生成绩统计(3)
- 第17周项目6-学生成绩统计(1)
- 第17周项目6-学生成绩统计(1)
- 第17周项目6-学生成绩统计(2)
- 第17周项目6-学生成绩统计(2)
- 第17周项目6-学生成绩统计(4)
- 第17周项目6--学生成绩统计(文件操作1)
- 第17周项目6学生成绩统计
- 第17周项目6(1)-学生成绩统计
- 第17周项目6(2)-学生成绩统计
- 第17周项目6-学生成绩统计简单版
- 第17周项目6--学生成绩统计
- 第17周项目6—学生成绩统计2
- UNIX环境高级编程-第9章- 进程关系
- soj 4389模拟
- jython语法
- android 事件分发
- 密码生成器
- 第17周项目6-学生成绩统计(从文件中读入)
- 获取Spring ApplicationContext 几种方法
- View中的draw和onDraw的区别
- ERLANG 语法基础
- Exercise:Self-Taught Learning 代码示例
- Android 修改出厂默认日期和默认时区的方法
- STM的调试问题集锦(更新中)
- 视锥裁剪
- ios 中内容label高度自适应