• 大小: 100KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-25
  • 语言: C/C++
  • 标签:

资源简介

C语言大作业,大一的时候写的,现在分享给小伙伴们参考以发挥余热。 这是学生考勤管理系统,更多请搜索"C语言课程设计之".

资源截图

代码片段和文件信息

#include“linklist.h“
#include
#include
#include
#include
#include
void delete_node(plinklist pl nodeitem* pn)
{
    pnode curr prev;

    if((curr=find_node(pl pn))!=NULL){
        for(curr=pl->head prev=NULL; curr!=NULL&&!is_equal(&(curr->elem) pn); prev=curr curr=curr->next)
            ;
        if(prev==NULL){
            pl->head=curr->next;
        }
        else{
            prev->next=curr->next;
        }
        free(curr);
        curr=NULL;
        printf(“\n删除成功!\n“);
    }
    else{
        printf(“\n未找到该记录!\n“);
    }
    return;
}

void read_list(plinklist pl)
{
    FILE *fp;

    if((fp=fopen(“records.txt““r+“))==NULL){
        fp=fopen(“records.txt““w+“);
    }

    nodeitem n;
    int i=0;

    fseek(fp 0 0);
    while(fread(&n sizeof(nodeitem) 1 fp)==1){
        insert_list(pl &n);
        i++;
    }
    fclose(fp);
    //printf(“%d devices have been entered\n“ i);
    return;
}

bool save_node(plinklist pl)
{
    FILE *fp;
    pnode p;
    int i=0;

    p=pl->head;

    if((fp=fopen(“records.txt“ “w“))==NULL){
        printf(“\nCan‘t open file!\n“);
        return 0;
    }
    fseek(fp 0 0);
    while(p){
        fwrite(&(p->elem) sizeof(nodeitem) 1 fp);
        p=p->next;
        i++;
    }
    fclose(fp);
    //printf(“\n%d devices have been saved!\n“ i);
    return 1;
}

pnode find_node(plinklist pl nodeitem *pn)
{
    pnode p=pl->head;
    while(p){
        if(is_equal(pn &(p->elem))){
            return p;
        }
        p=p->next;
    }
    return NULL;
}

student* find_student(pstulist pl char name[])
{
    student* p=pl->head;
    while(p){
        if(!strcmp(name p->elem.name)){
            return p;
        }
        p=p->next;
    }
    return NULL;
}

course* find_course(pcoulist pl char name[])
{
    course* p=pl->head;
    while(p){
        if(!strcmp(name p->elem.name)){
            return p;
        }
        p=p->next;
    }
    return NULL;
}

void init_list(plinklist pl)
{
pl->head=NULL;
return;
}

void insert_list(plinklist plnodeitem *pn)
{
pnode p=create_node(pn);

p->next=pl->head;
pl->head=p;

return;
}

void insert_course(pcoulist pl cou *pn)
{
course* p=create_course(pn);

p->next=pl->head;
pl->head=p;

return;
}

void insert_student(pstulist pl stu *pn)
{
student* p=create_student(pn);

p->next=pl->head;
pl->head=p;

return;
}

void display_list(plinklist pl)
{
pnode p=pl->head;

if(p==NULL){
        printf(“\n暂无记录!\n“);
        return;
}

    printf(“\n缺课日期\t第几节课\t课程名称\t\t学生姓名\t缺课类型\n\n“);
while(p)
{
display_nodeitem(&(p->elem));
p=p->next;
}
return;
}

void display_stulist(pstulist pl)
{
student* p=pl->head;
    printf(“\n学生姓名\t旷课次数\n\n“);
while(p){
printf(“%s\t\t%d\n“ p->elem.name p->elem.number);
p=p->next;
}
ret

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件          8  2017-06-24 22:42  学生考勤管理系统\password.txt

     文件        142  2017-06-24 22:42  学生考勤管理系统\records.txt

     文件        280  2017-06-13 22:57  学生考勤管理系统\使用说明及成员名单.txt

     文件       4983  2017-06-13 22:51  学生考勤管理系统\源代码\linklinst.cpp

     文件       6484  2017-06-13 22:51  学生考勤管理系统\源代码\linklinst.o

     文件       1103  2017-06-13 22:41  学生考勤管理系统\源代码\linklist.h

     文件       3567  2017-06-13 22:39  学生考勤管理系统\源代码\main.cpp

     文件       4993  2017-06-13 22:41  学生考勤管理系统\源代码\main.o

     文件       1412  2017-06-13 22:51  学生考勤管理系统\源代码\Makefile.win

     文件        719  2017-06-13 21:42  学生考勤管理系统\源代码\node.cpp

     文件        396  2017-06-13 21:42  学生考勤管理系统\源代码\node.h

     文件       1541  2017-06-13 21:42  学生考勤管理系统\源代码\node.o

     文件       2135  2017-06-13 22:16  学生考勤管理系统\源代码\nodeitem.cpp

     文件        620  2017-06-13 21:42  学生考勤管理系统\源代码\nodeitem.h

     文件       3215  2017-06-13 22:17  学生考勤管理系统\源代码\nodeitem.o

     文件          8  2017-06-13 22:52  学生考勤管理系统\源代码\password.txt

     文件         71  2017-06-13 22:52  学生考勤管理系统\源代码\records.txt

     文件       4809  2017-06-13 21:42  学生考勤管理系统\源代码\sort.cpp

     文件        212  2017-06-13 21:42  学生考勤管理系统\源代码\sort.h

     文件       5568  2017-06-13 21:42  学生考勤管理系统\源代码\sort.o

     文件       1854  2017-06-13 21:40  学生考勤管理系统\源代码\缺勤登记.dev

     文件     148673  2017-06-13 22:51  学生考勤管理系统\源代码\缺勤登记.exe

     文件        611  2017-06-13 22:56  学生考勤管理系统\源代码\缺勤登记.layout

     文件     148673  2017-06-13 22:51  学生考勤管理系统\缺勤登记.exe

     目录          0  2017-07-15 20:54  学生考勤管理系统\源代码

     目录          0  2017-07-15 20:54  学生考勤管理系统

----------- ---------  ---------- -----  ----

               342077                    26


评论

共有 条评论

相关资源