资源简介
学生社团管理系统
文件读取
数据结构课程设计
C语言
代码片段和文件信息
#include
#include
#include
#include
#include
//定义学生对象类型
typedef struct node{
char Sno[10]; //学号
char Sname[10]; //姓名
char Ssex[3]; //性别
char Sdept[4]; //年级专业
struct node *next;
}Student;
//定义社团对象类型
typedef struct node2{
char Cno[10]; //编号
char Cname[10]; //名称
char Ctime[10]; //成立时间
struct node2 *next;
}Course;
//定义加入社团对象类型
typedef struct node3{
char Sno[10]; //学生学号
char Cno[10]; //社团编号
char Job[10]; //会员职务
struct node3 *next;
}SC;
///将数据存到datafile.dat里
void saveDataFile(Student* stu Course* crs SC* sc){
FILE* f = fopen(“datafile.dat“ “wb“);
int sNum = 0;
int cNum = 0;
int scNum = 0;
for(Student* p=stu->next; p; p=p->next)sNum++;
for(Course* p=crs->next; p; p=p->next)cNum++;
for(SC* p=sc->next; p; p=p->next)scNum++;
fwrite(&sNum sizeof(int) 1 f);
for(Student* p=stu->next; p; p=p->next){
fwrite(p sizeof(Student) 1 f);
}
fwrite(&cNum sizeof(int) 1 f);
for(Course* p=crs->next; p; p=p->next){
fwrite(p sizeof(Course) 1 f);
}
fwrite(&scNum sizeof(int) 1 f);
for(SC* p=sc->next; p; p=p->next){
fwrite(p sizeof(SC) 1 f);
}
fclose(f);
}
///读取储存在datafile.dat里的数据
int loadDataFile(Student* stu Course* crs SC* sc){
FILE* f = fopen(“datafile.dat“ “rb“);
if(!f){
return 0;
}
int num;
{
fread(&num sizeof(int) 1 f);
Student* r = stu;
for(int i=0; i Student* newNode = (Student*)malloc(sizeof(Student));
fread(newNode sizeof(Student) 1 f);
newNode->next = 0;
r->next = newNode;
r = r->next;
}
}{
fread(&num sizeof(int) 1 f);
Course* r = crs;
for(int i=0; i Course* newNode = (Course*)malloc(sizeof(Course));
fread(newNode sizeof(Course) 1 f);
newNode->next = 0;
r->next = newNode;
r = r->next;
}
}{
fread(&num sizeof(int) 1 f);
SC* r = sc;
for(int i=0; i SC* newNode = (SC*)malloc(sizeof(SC));
fread(newNode sizeof(SC) 1 f);
newNode->next = 0;
r->next = newNode;
r = r->next;
}
}
fclose(f);
return 1;
}
///初始化学生信息表
void InitlistA(Student *stu){
stu->next=NULL;
}
///初始化社团信息表
void InitlistB(Course *C){
C->next=NULL;
}
///初始化入团对象信息表
void InitlistC(SC *S){
S->next=NULL;
}
///求社团的人数
int Getlength(SC *S){
int i=0;
SC *p;
p=S->next;
while(p!=NULL){
p=p->next;
i++;
}
return(i);
}
///用户输入数据建立学生信息表(尾插法)
void CreatelistA(Student *stu){
Student *s*r;
int mi;
r=stu;
printf(“现在输入学生信息\n“);
printf(“请输入学生个数:“);
scanf(“%d“&m);
printf(“| 学号 | 姓名 | 性别 | 年级专业 |\n“);
for(i=0;i s=(Student *)malloc(sizeof(Student));
scanf(“%s%s%s%s“s->Snos->Snames->Ssex&s->Sdept);
r->next=s;
r=s;
}
r->next=NULL;
}
///由用户输入数据建立社团信息列表
void CreatelistB(Course *C){
Course *s*r;
r=C;
int mi;
printf(“现在输入社团信息\n“);
printf(“请输入社团数量:“);
sc
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 56320 2017-02-19 22:33 学生社团管理系统C语言版\2015级数据结构课程设计任务书2017.2.doc
文件 16672 2017-03-03 16:42 学生社团管理系统C语言版\ST2.0.c
文件 616420 2017-03-03 17:18 学生社团管理系统C语言版\课设报告_李阳.pdf
目录 0 2017-03-09 19:37 学生社团管理系统C语言版
----------- --------- ---------- ----- ----
689412 4
相关资源
- 简单电子英汉词典c++
- 数据结构课程设计-班级通讯录
- AES密码学课程设计带报告
- c++学生信息管理系统附带报告
- 课程设计哲学家就餐问题报告+代码
- 操作系统课程设计 文件管理 C C++
- C语言课程设计—图书信息管理系统
- C+++课程设计+扫雷系统+报告+源代码
- 操作系统课程设计——多线程同步演
- 任意长的整数加法 课程设计
- c++ c 数据结构 课程设计 学生成绩管理
- 人事管理系统C语言课程设计报告
- C语言课程设计 - 学生宿舍管理系统
- C语言课程设计——超市商品库存管理
- c语言课程设计报告 计算器的实现内
- 数据结构课程设计 带括号的算术表达
- 操作系统课程设计银行家算法C语言
- 客房管理系统的C++课程设计
- 商品销售统计的C++课程设计
- 学生社团管理程序 c++ 课程设计
- C++ 停车场管理 数据结构 课程设计
- 分数计算器课程设计
- 人事管理系统(使用MFC单文档程序,
- c语言课程设计之网络购物系统
- 《C++面向对象程序设计》课程设计—
- 单片机简易计算器的设计包含设计报
- 编译原理课程设计广工C语言
- c语言万年历的课程设计及源码
- c语言 课程设计 井字棋
- 高速公路收费系统C语言课程设计报告
评论
共有 条评论