24小时热门版块排行榜    

Znn3bq.jpeg
查看: 324  |  回复: 0

幽竹的海角

银虫 (初入文坛)

[求助] 关于【学生成绩管理系统】

关于学生成绩管理,要求写【从文件读取班级信息】部分,要与【将学生信息存储到文件中】相对应,可运行
以下是已有代码
/*
        DBInfo.h的实现文件
*/
#include "DBInfo.h"
#include
#include
#include
#include

#define MAX_NAME_LENGTH 256

/*分配学生对象*/
Student* createStudent()
{

        Student* pRet = (Student*)malloc(sizeof(Student)); /*分配内存*/

        if(pRet != NULL)                                                 /*验证是否成功*/
                memset(pRet,0,sizeof(Student));                 /*初始化*/

        return pRet;
}

/*释放学生对象*/
void freeStudent(Student* pStudent)
{
        if(pStudent !=NULL)
        {
                free(pStudent);
        }
}


/*创建班级*/
Class* createClass()
{
        Class* pClass = malloc(sizeof(Class));
        memset(pClass,0,sizeof(Class));
        strcpy(pClass->Name,"default_class"  );
        return pClass;
}

/*释放班级*/
void freeClass(Class* pClass)
{
        int iStudent =0;
        if(pClass==NULL)
        {
                return ;
        }

        for(iStudent =0;iStudentStudentCount;iStudent++)
        {
                Student* pStudent = pClass->Students[iStudent];
                if(pStudent)
                {
                        freeStudent(pStudent);
                        pClass->Students[iStudent] = NULL;
                }
        }
}

/*添加学生到班级*/
void appendStudent(Class* pClass,Student* pStudent)
{
        if(pClass==NULL || pStudent == NULL)
                return ;

        pClass->Students[pClass->StudentCount]=pStudent;
        pClass->StudentCount++;

}

/*删除学生从班级中*/
void deleteStudent(Class* pClass,int index)
{
        int iStudent;
        Student* pStudent;

        if(pClass==NULL)return;
        if(index<0)return;
        if(index>pClass->StudentCount-1)return ;
       
        pStudent= pClass->Students[index];
        pClass->Students[index] = NULL;
        freeStudent(pStudent);
       
        for(iStudent = index;iStudentStudentCount-1;iStudent++)
        {
                pClass->Students[iStudent] = pClass->Students[iStudent+1];
        }
       
        pClass->Students[pClass->StudentCount-1]=NULL;
        pClass->StudentCount--;
}


/*创建班级存储信息*/
Class* createClassFromKb()
{
        char class_name[MAX_NAME_LENGTH];
        Class* pNewClass;

        printf("*********************************\n"  );
        printf("*  please input the class name: *\n" );
        printf("*********************************\n" );

        memset(class_name,0,256);
        scanf("%s",class_name);
        pNewClass = createClass();
        strcpy(pNewClass->Name, class_name );
        return pNewClass;
}

/*将学生信息存储到文件中*/
saveStudentToFile(Student* pStudent,FILE* pFile)
{
        fprintf(pFile,"%s\n",pStudent->Name);
        fprintf(pFile,"%c\n",pStudent->Sex);
        fprintf(pFile,"%s\n",pStudent->Address);
        fprintf(pFile,"%s\n",pStudent->PhoneNumber);
        fprintf(pFile,"%d\n",pStudent->Age);
        fprintf(pFile,"%f\n",pStudent->height );
}


/*保存班级别信息到文件*/
int saveClassToFile(Class* pClass,char* fn)
{
        FILE* pFile;
        int   i;

        if( (pFile = fopen(fn,"w+" ) )== NULL)
        {
                printf("File [%s]  open error , please check it",fn);
                return 0;
        }

        fprintf(pFile,"#THIS IS FILE OF XXXX SYSTEM\n"  );
        fprintf(pFile,"# the fllowing is class info\n"  );
        fprintf(pFile,"# the student :name sex adress phone age height\n"  );
       
        fprintf(pFile,"%s\n",pClass->Name);
        fprintf(pFile,"%d\n",pClass->StudentCount);

        for(i=0;iStudentCount;i++)
        {               
                fprintf(pFile,"#[%i]\n",i+1);
                saveStudentToFile(pClass->Students,pFile);
                fprintf(pFile,"#------------------------------------\n"  );
        }
        fprintf(pFile,"#END"  );
        fclose(pFile);

        return 1;
}

/*从文件读取班级信息*/

/*全局的班级入口*/
Class* g_Class;

[ Last edited by 幽竹的海角 on 2012-6-14 at 14:32 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

找到一些相关的精华帖子,希望有用哦~

科研从小木虫开始,人人为我,我为人人
相关版块跳转 我要订阅楼主 幽竹的海角 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[论文投稿] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +4 qs8kylt1wr 2026-05-01 4/200 2026-05-03 06:52 by jmr1kibhvw
[考博] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 d8tbypao1q 2026-05-01 3/150 2026-05-03 05:52 by w5idbsc3mz
[找工作] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 d8tbypao1q 2026-05-01 3/150 2026-05-03 05:07 by jmr1kibhvw
[博后之家] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 d8tbypao1q 2026-05-01 4/200 2026-05-03 04:19 by w5idbsc3mz
[论文投稿] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 d8tbypao1q 2026-05-01 4/200 2026-05-03 03:49 by w5idbsc3mz
[公派出国] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 k17zww5nna 2026-05-01 4/200 2026-05-03 03:04 by w5idbsc3mz
[考研] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 k17zww5nna 2026-05-01 4/200 2026-05-03 02:36 by w5idbsc3mz
[博后之家] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +4 k17zww5nna 2026-05-01 4/200 2026-05-03 02:06 by w5idbsc3mz
[找工作] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +4 k17zww5nna 2026-05-01 5/250 2026-05-03 01:49 by w5idbsc3mz
[考博] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 k17zww5nna 2026-05-01 4/200 2026-05-03 01:34 by w5idbsc3mz
[找工作] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +4 qs8kylt1wr 2026-05-01 4/200 2026-05-03 00:00 by 火炎焱燚炙烤
[论文投稿] 有人投过CCC中国控制会议吗? 19+3 初九凡 2026-04-26 4/200 2026-05-02 21:11 by Equinoxhua
[考博] 考博 +4 Eternitf 2026-04-29 4/200 2026-05-02 16:10 by yejenny
[考博] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 qs8kylt1wr 2026-05-01 3/150 2026-05-02 15:51 by zahslv263y
[教师之家] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 qs8kylt1wr 2026-05-01 3/150 2026-05-02 15:36 by zahslv263y
[公派出国] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 d8tbypao1q 2026-05-01 3/150 2026-05-02 14:21 by zahslv263y
[教师之家] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 k17zww5nna 2026-05-01 3/150 2026-05-02 09:36 by dz7y1p1i98
[硕博家园] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 k17zww5nna 2026-05-01 5/250 2026-05-02 09:21 by dz7y1p1i98
[论文投稿] 一篇MDPI论文改变了学习工作和生活 +3 helsinglee 2026-04-29 4/200 2026-05-01 11:45 by bobvan
[考博] 中国地质大学(北京)博士招生补录,数理学院材料科学与工程专业和材料与化工专业 +3 liuxh329 2026-04-29 3/150 2026-04-30 15:42 by 顺利毕业zs
信息提示
请填处理意见