2 qq 34054983 qq_34054983 于 2016.02.23 14:19 提问

编程:假设一个班的成绩交给M个人去输入,每个人随机从班级中抽出若干名学生信息进行输入

假设一个班的成绩交给M个人去输入,每个人随机从班级中抽出若干名学生信息进行输入,
每个人输入完后放在M个文件中, 每个人输入的成绩都按学号排好序的
学生成绩信息文件1(1.txt),例如:
姓名 性别 学号 语文 数学 英语
张明明 男 01 67 78 82
张辉灿 男 03 68 82 56
陈东明 男 05 67 38 47
李成友 男 32 78 91 88
王露 女 34 56 45 77
…. .. .. .. …
学生成绩信息文件2(2.txt), 例如:
姓名 性别 学号 语文 数学 英语

李华明 男 02 88 90 68
李明国 男 04 50 45 87
陈果 女 31 57 68 82
张明东 男33 48 42 56
陈道亮 男35 47 58 77
…. .. .. .. …
一共M个文件
1) 现在编程实现将M个文件的成绩合并一个文件,并且仍按学号有序的(total.txt)
提示,可以用合并排序
2) 从原文件(不是合并后文件)中抽出三科成绩中有补考的学生(只要有一门不及格,整个学生的信息都要抽出),并保存在一个新文件中,新文件不需要按学号有序(bk.txt)
3) 对补考文件(bk.txt) 中的数据按学号排序,保存在一个新文件bksort.txt (至少采用两种排序方法实现)中,并按各科打印出补考学生名单
4) 对于新文件(total.txt),读入内存,输入一个学生学号后,能查找到此学生的信息并输出结果(至少采用两种查找方法实现)
5). 对于新文件(total.txt),读入内存,分男生和女生分别到存到两个文件中(boy.txt,girl.txt)
要求男生和女生分别按学号有序
6). 对于新文件(total.txt),读入内存,按总分排序,放入到(scoresort.txt)中
规定:
学生信息要求使用结构体,采用顺序表实现上述要求,上述6个功能的程序分开编写,最后能够合在一起运行。每个功能可以设立菜单。
采用多种方法且算法正确者,可适当加分。
(数据文件的数据读写方法等相关内容在c语言程序设计的书上,请自学解决,文件读写功能要写成通用函数, 上述6个功能直接调用)

1个回答

caozhy
caozhy   Ds   Rxr 2016.03.07 06:06

就是简单的txt文件读写,装入数组,循环遍历

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
一个班级m个人,每人n门课程,求每个人的各科平均成绩和整个班级的各科平均成绩。
 #include #include int main() {     int m,n,i,j,c,d;     while(scanf("%d%d",&m,&n)!=EOF)     {         double a[m+1][n+1];         for(i=0; i             for(j=0; j                 a[i]
输入一个班30位同学的成绩,
#include main() { int a,n,b,c,d,e,f,i,j,s[100]; for(i=0;i scanf("%d",&s[i]); a=0,b=0,c=0,d=0,e=0,j=0; for(i=0;i {if(s[i] {a++;continue;} if(s[i] {b++;continue;} if(s[i] {c++;continue;} i
c语言从键盘输入班级人数,及每个人的分数,计算出平均分数
#include int main(int argc, const char * argv[]) {     int n;//学生总人数     int temp;//保存零时一个学生的成绩     int sum=0;//总分     int i;//循环变量     printf("请输入班级人数:");     scanf("%d",&n);
某班有20名学生,从键盘输入这20名学生的成绩存放在数组中,实现由大到小输出。
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace _118_3._3 {     class Program     {         static void Main(string[] args)         {    
一个班有n个学生,需要把每个学生的简单资料(姓名和学号)输入计算机保存。然后可以通过输入某一学生的姓名查找其有关资料。当输入一个姓名后程序就查找该班有无此学生,如果有,则输出他的姓名和学号,如果找不到
/* * Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 作 者: 刘同宾 * 完成日期:2012 年 11 月 25 日 * 版 本 号:v1.0 * 输入描述: * 问题描述:一个班有n个学生,需要把每个
HDU2023——求平均成绩
Problem Description 假设一个班有n(n Input 输入数据有多个测试实例,每个测试实例的第一行包括两个整数n和m,分别表示学生数和课程数。然后是n行数据,每行包括m个整数(即:考试分数)。 Output 对于每个测试实例,输出3行数据,第一行包含n个数据,表示n个学生的平均成绩,结果保留两位小数;第二行包含m个数据,表示m门课的平均成绩,结果保留两位小数;第三行是一
29.结构体求出班级中最高分和学号,将学生信息按照成绩从高到低输出。
一个班不超过40个人,人员信息有成绩和学号组成,班级人数从键盘输入,完成函数,实现求出班级中最高分和学号,将学生信息按照成绩从高到低输出。 #include <stdio.h> #define ARR_SIZE 40 struct student { int st; long num; }; int findmax(struct student score[],int n,long
假设某一班级有M名学生,没人考N门功课,试设计两个c++函数,(1)求第i个学生N门功课的平均分数。(2)求第j门课程的平均分数
#include using namespace std; float hhh(int a[]); float ppap(int b[]); const int M = 5, N = 5; void main() { cout int a[M][N], i, j, p,average1, average2; for (i = 0; i for (j = 0; j cin
寻找最高分成绩的学生
2 寻找最高分成绩的学生(4分) 题目内容: 下面程序的功能是用动态数组编程输入任意m个班学生(每班n个学生)的某门课的成绩,计算最高分,并指出具有该最高分成绩的学生是第几个班的第几个学生。其中,m和n的值由用户从键盘任意输入(不限定m和n的上限值)。程序的运行结果如下所示: Input array size m,n: 3,4↙ Input 3*
输入三个班,每班10个学生的成绩,求和并求平均分(数组)
输入三个班,每班10个学生的成绩,求和并求平均分 用数组装载分数的代码 package com.sxt; import java.util.Scanner; public class ZuoYe2 { public static void main(String[] args) { //输入三个班,每班10个学生的成绩,求和并求平均分 Scanner sc