-
大小: 480KB文件類型: .rar金幣: 2下載: 0 次發(fā)布日期: 2021-06-09
- 語言: C/C++
- 標(biāo)簽: 課程設(shè)計(jì)??
資源簡(jiǎn)介
學(xué)生社團(tuán)管理系統(tǒng)
文件讀取
數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)
C語言

代碼片段和文件信息
#include
#include
#include
#include
#include
//定義學(xué)生對(duì)象類型
typedef?struct?node{
char?Sno[10];????//學(xué)號(hào)
char?Sname[10];??//姓名
char?Ssex[3];????//性別
char?Sdept[4];???//年級(jí)專業(yè)
struct?node?*next;
}Student;
//定義社團(tuán)對(duì)象類型
typedef?struct?node2{
char?Cno[10];????//編號(hào)
char?Cname[10];??//名稱
char?Ctime[10];??//成立時(shí)間
struct?node2?*next;
}Course;
//定義加入社團(tuán)對(duì)象類型
typedef?struct?node3{
char?Sno[10];????//學(xué)生學(xué)號(hào)
char?Cno[10];????//社團(tuán)編號(hào)
char?Job[10];????//會(huì)員職務(wù)
struct?node3?*next;
}SC;
///將數(shù)據(jù)存到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);
}
///讀取儲(chǔ)存在datafile.dat里的數(shù)據(jù)
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;
}
///初始化學(xué)生信息表
void?InitlistA(Student?*stu){
stu->next=NULL;
}
///初始化社團(tuán)信息表
void?InitlistB(Course?*C){
C->next=NULL;
}
///初始化入團(tuán)對(duì)象信息表
void?InitlistC(SC?*S){
S->next=NULL;
}
///求社團(tuán)的人數(shù)
int?Getlength(SC?*S){
int?i=0;
SC?*p;
p=S->next;
while(p!=NULL){
p=p->next;
i++;
}
return(i);
}
///用戶輸入數(shù)據(jù)建立學(xué)生信息表(尾插法)
void?CreatelistA(Student?*stu){
Student?*s*r;
int?mi;
r=stu;
printf(“現(xiàn)在輸入學(xué)生信息\n“);
????printf(“請(qǐng)輸入學(xué)生個(gè)數(shù):“);
????scanf(“%d“&m);
printf(“|??學(xué)號(hào)??|??姓名?|??性別??|??年級(jí)專業(yè)??|\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;
}
///由用戶輸入數(shù)據(jù)建立社團(tuán)信息列表
void?CreatelistB(Course?*C){
Course?*s*r;
r=C;
int?mi;
printf(“現(xiàn)在輸入社團(tuán)信息\n“);
printf(“請(qǐng)輸入社團(tuán)數(shù)量:“);
sc
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????56320??2017-02-19?22:33??學(xué)生社團(tuán)管理系統(tǒng)C語言版\2015級(jí)數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)任務(wù)書2017.2.doc
?????文件??????16672??2017-03-03?16:42??學(xué)生社團(tuán)管理系統(tǒng)C語言版\ST2.0.c
?????文件?????616420??2017-03-03?17:18??學(xué)生社團(tuán)管理系統(tǒng)C語言版\課設(shè)報(bào)告_李陽.pdf
?????目錄??????????0??2017-03-09?19:37??學(xué)生社團(tuán)管理系統(tǒng)C語言版
-----------?---------??----------?-----??----
???????????????689412????????????????????4
評(píng)論
共有 條評(píng)論