资源简介
学生成绩管理问题
问题描述:建立两个学生成绩信息表1、2,以文件的形式分别进行存储命名为1.txt和2.txt,然后实现将两个文件合并成一个新的文件3.txt。
新文件中有补考的学生查找到,存储到另一个文件4.txt中。
基本要求:
1、学生成绩信息表至少包含姓名、学号、语文成绩、数学成绩、英语成绩、总分。
2、合并后的文件3.txt中的数据要按照总分进行降序排序。(排序方法为直接插入排序)
3、根据学生姓名和学号应该能查到学生的各科成绩。(查找方法为折半查找)
4、存储结构为顺序表。
代码片段和文件信息
/*需求:
学生成绩管理问题
问题描述:建立两个学生成绩信息表1、2以文件的形式分别进行存储命名为1.txt和2.txt然后实现将两个文件合并成一个新的文件3.txt。
新文件中有补考的学生查找到,存储到另一个文件4.txt中。
基本要求:
1、学生成绩信息表至少包含姓名、学号、语文成绩、数学成绩、英语成绩、总分。
2、合并后的文件3.txt中的数据要按照总分进行降序排序。(排序方法为直接插入排序)
3、根据学生姓名和学号应该能查到学生的各科成绩。(查找方法为折半查找)
4、存储结构为顺序表。
*****************************************************************************************************************************
knocker:1.void read(char str[40]);读取文本
2. Status InitList(SqList *L); 构造空的顺序表 L
3 Status fuzhi_sq(SqList *LSqList *L3); 将txt12中的数据传到顺序表中
4.void InsertSort(SqList &L);直接插入排序
5.void Create(SqList &Lchar str[40]); 生成txt34
6. void find_bukao(SqList &LSqList &L2); 找出补考学生
7.int Search_id(SqList &Lchar k[]);根据学号查找 (折半查找)
8.int Search_name(SqList &Lchar k[]);按姓名查找
9.void tianjia_stu(ElemType echar str[40]); 添加学生信息
10.void Delete_stu(SqList &Lint idint n); 删除学生信息
11.void Xiugai_stu(SqList &Lint id);修改学生信息
12.void Output(SqList &L);显示学生信息
*****************************************************************************************************************************
*/
#include
#include
#include
#include
#define OK 1
#define ERROR 0
#define OVERFLOW -2
#define MAXSIZE 100
float sum;
char str1[20]={“D:\\1.txt“};
char str2[20]={“D:\\2.txt“};
char str3[40]={“D:\\3.txt“};
char str4[40]={“D:\\4.txt“};
typedef int Status; // 定义函数返回值类型
struct student
{
char num[10]; // 学号
char name[20]; // 姓名
int chinese; //语文成绩
int math;//数学成绩
int English;//英语成绩
int sum;//总分
}*p*qus[3]r[MAXSIZE]c[MAXSIZE];
typedef student ElemType;
//顺序表
typedef struct
{
ElemType *elem; // 存储空间的基地址
int length; // 当前长度
}SqList;
Status fuzhi_sq(SqList *L);
//读取文档12
void read(char str[40])
{
FILE *fp;
int i;
p=c;
if((fp=fopen(str“rt“))==NULL)
{
printf(“cannot open this file\n“);
exit(0);
}
printf(“姓名\t学号\t语文\t数学\t英语\t总分\n“);
for(i=0;!feof(fp);i++p++)
fscanf(fp“%s\t%s\t%d\t%d\t%d\t%d\n“&p->name&p->num&p->chinese&p->math&p->English&p->sum);
fclose(fp);
for(int j=0;j printf(“%s\t%s\t%d\t%d\t%d\t%d\n“c[j].namec[j].numc[j].chinesec[j].mathc[j].Englishc[j].sum);
}
Status InitList(SqList *L) // 构造空的顺序表 L
{
L->elem=(ElemType *)malloc(sizeof(ElemType)*MAXSIZE);
if(!L->elem) exit(OVERFLOW);
L->length=0;
return OK;
}
//将txt12中的数据传到顺序表中
Status fuzhi_sq(SqList *LSqList *L3)
{
FILE *fp;
//把txt1内容输到数组s[3]
int ik;
p=s;
if((fp=fopen(str1“rt“))==NULL)
{
printf(“cannot open this file\n“);
exit(0);
}
for(i=0;!feof(fp);i++p++)
fscanf(fp“%s\t%s\t%d\t%d\t%d\t%d\n“&p->name&p->num&p->chinese&p->math&p->English&p->sum);
fclose(fp);
//把txt2内容输到数组r[3]
int jnm;
q=r;
if((fp=fopen(str2“rt“))==NULL)
{
printf(“cannot open this file\n“);
exit(0);
}
for(n=0;!feof(fp);n++q++)
fscanf(fp“%s\t%s\t%d\t%d\t%d\t%d\n“&q-
相关资源
- 交通咨询系统-C语言
- c++课程设计日期格式处理
- C++数据结构与算法源代码第四版清华
- 课程设计 c++学生教师管理系统
- 数据结构课程设计,飞机订票系统源
- C++ 超市管理系统
- C语言课程设计代码学生成绩管理系统
- C语言课程设计景区管理系统
- 数据结构与算法c语言 严蔚敏 代码实
- 数据结构c语言实现严蔚敏版
- 八皇后问题加实验报告
- C++课程设计 电煤气管理系统
- 东北大学C语言课设—小金库
- B-树和B+树的源代码
- 敢死队问题纯C语言编写
- 数据结构上机作业 一元稀疏多项式计
- 简单科研管理系统-----数据库课程设计
- 平差课程设计
- 数据结构习题集与答案(C语言版严蔚
- c语言哈夫曼树课程设计
- 《数据结构(c++描述)》教材习题解
- 基于FCFS和SPF的进程管理系统可用资源
- 任务书2一元稀疏多项式计算器数据结
- 操作系统课程设计 linux文件系统
- 数据结构上机 由用户输入n个10以内的
- C语言程序课程设计商品进销存管理程
- 991“数据结构与C语言程序设计”考试
- 数据结构类库c++版
- 堆排序算法严蔚敏数据结构
- 发现网络中的活动主机 网络应用课程
评论
共有 条评论