YTU 2972: C语言习题5.24--文件操作1
2972: C语言习题5.24--文件操作1
时间限制: 1 Sec 内存限制: 128 MB
提交: 248 解决: 94
题目描述
文本文件score.dic 中存储了n名学生的信息(班级编号,姓名,成绩),每个学生信息占一行,每行的数据之间使用制表符分割,如下所示:
145811 fuxin 100
145811 chengxian 90
145812 zhangxue 92
145812 lijun 88
……
文件中存储的学生信息按照班级编号升序排列,每个班级的人数可以不同,要求读取文件中所有学生的成绩,计算每个班级的平均成绩,将班级编号和平均成绩输出。
主程序已给出,请根据提示补充缺失代码并提交该部分。
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num=0; /* 班级人数计数 */
int sumScore=0; /* 累计成绩*/
int curClass; /* 当前班级 */
int curScore; /* 当前成绩 */
int lastClass; /* 上一个班级*/
int readItems; /* 正确读入数据数目 */
FILE *fin; /* 输入文件 */
fin=fopen("score.dic","r"); /* 打开输入文件读 */
if(!fin) /* 文件打开失败 */
{
fprintf(stderr,"error open file!\n"); /* 输出错误信息到标准错误设备 */
exit(-1); /* 强制退出,并返回错误码 */
}
/****************/
/* 读入班级和成绩 */
/* 读入数据合法*/
/* 处理连续的相同班级数据*/
/* 班级人数累计 */
/* 班级成绩累计 */
/* 读入下一个班级和成绩 */
/* 输出平均成绩 */
/* 数据清零 */
/* 关闭输入文件*/
/*****************/
return 0;
}
输入
n名学生的信息(班级编号,姓名,成绩)(文件读入)
输出
每个班级的班级编号和平均成绩
样例输入
无
样例输出
145811 95145812 90
迷失在幽谷中的鸟儿,独自飞翔在这偌大的天地间,却不知自己该飞往何方……
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num=0; /* 班级人数计数 */
int sumScore=0; /* 累计成绩*/
int curClass; /* 当前班级 */
int curScore; /* 当前成绩 */
int lastClass; /* 上一个班级*/
int readItems; /* 正确读入数据数目 */
FILE *fin; /* 输入文件 */
fin=fopen("score.dic","r"); /* 打开输入文件读 */
if(!fin) /* 文件打开失败 */
{
fprintf(stderr,"error open file!\n"); /* 输出错误信息到标准错误设备 */
exit(-1); /* 强制退出,并返回错误码 */
}
while(readItems=fscanf(fin,"%d %*s %d",&curClass,&curScore))
{
if(readItems!=2)
{
break;
}
if((curClass==lastClass||num==0))
{
num++;
sumScore+=curScore;
lastClass=curClass;
}
else
{
printf("%d\t%d\n",lastClass,sumScore/num);
num=1;
sumScore=curScore;
lastClass=curClass;
}
}
printf("%d\t%d\n",lastClass,sumScore/num);
num=0;
sumScore=0;
curClass=0;
curScore=0;
fclose(fin);
return 0;
}
YTU 2972: C语言习题5.24--文件操作1的更多相关文章
- YTU 2974: C语言习题5.26--文件操作3
2974: C语言习题5.26--文件操作3 时间限制: 1 Sec 内存限制: 128 MB 提交: 213 解决: 92 题目描述 文本文件score.dic 中存储了n名学生的信息(班级编号 ...
- YTU 2973: C语言习题5.25--文件操作2
2973: C语言习题5.25--文件操作2 时间限制: 1 Sec 内存限制: 128 MB 提交: 242 解决: 105 题目描述 文本文件score.dic 中存储了n名学生的信息(班级编 ...
- YTU 2418: C语言习题 矩阵元素变换
2418: C语言习题 矩阵元素变换 时间限制: 1 Sec 内存限制: 128 MB 提交: 293 解决: 155 题目描述 将一个n×n(2<n<10,n为奇数)的矩阵中最大的元 ...
- YTU 2414: C语言习题 字符串排序
2414: C语言习题 字符串排序 时间限制: 1 Sec 内存限制: 128 MB 提交: 656 解决: 305 题目描述 输入n个字符串,将它们按字母由小到大的顺序排列并输出.编写三个函数实 ...
- YTU 2425: C语言习题 输出月份
2425: C语言习题 输出月份 时间限制: 1 Sec 内存限制: 128 MB 提交: 476 解决: 287 题目描述 编写一程序,输入月份号,输出该月的英文月名.例如,输入3,则输出Mar ...
- YTU 2420: C语言习题 不等长字符串排序
2420: C语言习题 不等长字符串排序 时间限制: 1 Sec 内存限制: 128 MB 提交: 460 解决: 239 题目描述 在主函数中输入n(n<=10)个不等长的字符串.用另一函 ...
- YTU 2419: C语言习题 等长字符串排序
2419: C语言习题 等长字符串排序 时间限制: 1 Sec 内存限制: 128 MB 提交: 650 解决: 249 题目描述 在主函数中输入n(n<=10)个等长的字符串.用另一函数对 ...
- YTU 2424: C语言习题 字符串比较
2424: C语言习题 字符串比较 时间限制: 1 Sec 内存限制: 128 MB 提交: 1042 解决: 613 题目描述 写一函数,实现两个字符串的比较.即自己写一个strcmp函数,函数 ...
- YTU 2417: C语言习题 字符串长度
2417: C语言习题 字符串长度 时间限制: 1 Sec 内存限制: 128 MB 提交: 758 解决: 548 题目描述 写一函数,求一个字符串的长度.在main函数中输入字符串,并输出其长 ...
随机推荐
- NHibernate 3.2+的 Map by Code 实例
NHibernate 3.2+的 Map by Code 的文档真的很少,除了Fabio Maulo的2篇blog(顺带说李永京的翻译,没任何新的研究). 让人感慨NH的没落, 也许从没有流行过. 在 ...
- CPU informition
tar jxvf util-linux-ng-2.18.bz2cd util-linux-ng-2.18/./configure --enable-arch --enable-partx --enab ...
- 刨根问底U3D---从一个空类说起
这篇文章包含哪些内容 这篇文章从一个Empty的MonoBehaviour入手,首先讨论一下C#的修饰符internal,default,virtual,sealed 接着讨论一下MonoBehavi ...
- break和continue的区别以及标签label的使用
break表示直接跳出当前循环,break只能运用于switch--case语句以及循环之中 continue则表示跳出当次循环,继续执行下一次循环 label标签则可以选择break,或者conti ...
- SQL top order between 一起使用
select * from emp;
- [原创]java WEB学习笔记76:Hibernate学习之路---Hibernate介绍,hibernate 环境的搭建
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- [原创]java WEB学习笔记65:Struts2 学习之路--Struts的CRUD操作( 查看 / 删除/ 添加) ModelDriven拦截器 paramter 拦截器
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- [转]怎样解决Myeclipse内存溢出?
在用myeclipes10 开发 遇到了 内存溢出问题,百度了很久,这篇比较完善. 总结起来三个方面去检查 1)myeclipes的配置:myeclipes 10 的安装路径下 的myeclipse. ...
- Java基础(53):内部类(转)
java中的内部类总结 内部类不是很好理解,但说白了其实也就是一个类中还包含着另外一个类 如同一个人是由大脑.肢体.器官等身体结果组成,而内部类相当于其中的某个器官之一,例如心脏:它也有自己的属性和行 ...
- 常见的appbug(转)
移动App Bug的影响是用户体验差.App的商店评级下降.用户换用竞争对手的App,声誉和信誉损失.最后销售量减少,如果它是一个付费App的话. 移动App测试与传统台式机测试相比有一定的复杂性.这 ...