数据结构课程设计 员工信息管理系统
更新时间:2023-08-30 02:20:01 阅读量: 教育文库 文档下载
- 数据结构课程设计推荐度:
- 相关推荐
12信计2013-2014(一)
数 据 结 构 课 程 设 计
设计题目 员工信息管理系统 设计时间 学生姓名 学生学号 所在班级 12精算
指导教师
徐州工程学院数学与物理科学学院
题目 员工信息管理系统
一、 需求分析
员工信息管理系统设计,具体功能如下:
1、系统以菜单方式工作,应为用户提供清晰的使用提示,依据用户的选择来进行各种处理,并且在此过程中能够尽可能的兼容用户使用过程中的输入异常情况。 2、员工信息录入系统(员工信息用文件保存),注意员工按员工编号进行区分,即每个员工的员工编号都是唯一的,不允许出现两个员工或员工编号相同的情况。 3、可对员工信息进行查询,具体分为:按姓名查询、按员工号查询、按生日查询; 4、可对员工信息进行删除;
5、可对员工信息进行修改,但应注意员工号不能修改,修改应逐个进行,一个员工记录的更改不应影响其他的员工记录;
6、可对全部的员工信息进行显示v(员工信息浏览),注意员工信息的显示规范;
员工信息应包括姓名、员工编号、性别、年龄、生日、学历、职务、联系电话、住址。
二、概要设计 2.1、抽象数据类型
ADT List{
数据对象:D={ai|ai∈ElemSet,i=1,2,······,n,n>=0} 数据关系:R1={<ai-1,ai>|ai-1,ai∈D,i=1,2,······,n} 基本操作: Init List(&L);
操作结果:构造一个空的线性表L。 DestroyList(&L);
初始条件:线性表L存在。 操作结果:销毁线性表L。 LocateElem(L,I,&e);
初始条件:线性表L存在,1<i<Listlength(L)。
操作结果:用e返回线性表L中第i个数据元素的值。 ClearList(&L);
初始条件:线性表L存在。
操作结果:将线性表L重置为空表。 }ADT Graph 2.2、程序流程
系统的执行从菜单的选择开始,依据用户的选择进行相应的处理,直到用户选择退出系统为止。其间应对用户的选择做出判断及异常处理。系统的流程如图1所示:
图1 员工信息管理系统流程图
三、详细设计
3.1函数构成
(1)主函数:void main();
(2)文件读入函数:void read data(); (3)文件写入函数:void write data(); (4)菜单函数
函数原型:void Menu()
功能:此函数的功能为依据用户选择的功能来进行相应的处理,直到用户选择退出系统为止,包括员工信息的查询、更新、列表及退出管理; (5)信息查询函数
函数原型:void chaxun()
功能:该函数的功能是按照用户的选择进行不同方式的查找,本程序实现了按三种方式进行查找,包括按编号、姓名、生日查找; (6)信息更新函数
函数原型:void gengxin()
功能:此函数的功能为使用户修改记录。首先判断用户要修改的记录是否存在,因为只有员工编号是唯一的,所以根据员工编号进行查找。若存在则用用户输入的新的信息替换原信息;若不存在则函数结束。在此函数中要注意的是文件的打开方式应为”rb+”,因为在这个函数中不仅要读文件,还要向文件中写入数据,所以要用读写的方式打开二进制文件;
(7)信息一览函数
函数原型:void liebiao()
功能:此函数的功能为从文件中依次取出每条记录并将其显示出来。因为只需读文件不需要向文件中写入数据,所以文件的打开方式是只读。 3.2模块程序清单(详细程序见附录) 1、员工信息的结构体:
Typedef struct emp {
long int num; //编号 char name[20]; //姓名 int age; //年龄 char sex[4]; //性别 char birthday[10]; //生日 char tel[15]; //电话 char edu[8]; //学历 char pos[20]; //职务 char add[30]; //住址 struct emp *next; };
2、菜单函数:
void menu(void)
{ char i,lj[100]; int flog;time_t T; struct tm * timenow;
time ( &T );timenow = localtime ( &T ); flog=0; while(1) {
system("cls"); printf("\n\n\n\n\n");
printf(" ┏━━━━━━━━━员工信息管理系统━━━━━━━━━┓\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ 1.员工信息查询 ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ 2.员工信息更新 ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ 3.员工信息列表 ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n");
printf(" ┃ ┃\n"); printf(" ┃ 0.退出管理系统 ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━┛\n");
printf(" %s", asctime (timenow) ); printf("请输入您的选择(数字0-3):\n"); scanf("%c",&i);gets(lj); if(lj[0])i='a'; switch(i)
{ case '1':chaxun();break; case '2':gengxin();break; case '3':liebiao();break; case '0':flog=1;break;
default:printf("输入有误,请按回车键重新输入\n");gets(lj);break; }if(flog)break;}}
3、信息查询函数:
void chaxun() {
char i,lj[100]; int flog; time_t T; struct tm * timenow; time ( &T );timenow = localtime ( &T ); flog=0; while(1) {
system("cls"); printf("\n\n\n\n\n");
printf("┏━━━━━━━━━员工信息查询系统━━━━━━━━━┓\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 1.按照编号查询 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 2.按照姓名查询 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 3.按照生日查询 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 0.退出管理系统 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┗━━━━━━━━━━━━━━━━━━━━━━━━━━┛\n");
printf("%s", asctime (timenow) );
printf("请输入您的选择(数字0-3):\n"); scanf("%c",&i);gets(lj); if(lj[0])i='a'; switch(i) {
case '1':bianhao();break; case '2':xingming();break; case '3':shengri();break; case '0':flog=1;break;
default:printf("输入有误,请重新输入\n");gets(lj);break; }if(flog)break;}}
4、信息更新函数:
void gengxin() {
char i,lj[100]; time_t T; int flog;
struct tm * timenow;
time ( &T );timenow = localtime ( &T ); flog=0; while(1) {
system("cls");
printf("\n\n\n\n\n");
printf("┏━━━━━━━━员工信息更新系统━━━━━━━━━┓\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 1.员工信息添加 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 2.员工信息删除 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 3.员工信息修改 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 0.退出管理系统 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┗━━━━━━━━━━━━━━━━━━━━━━━━━┛\n");
printf(" %s",asctime (timenow) ); printf("请输入您的选择(数字0-3):\n"); scanf("%c",&i); gets(lj);
if(lj[0])i='a'; switch(i)
{ case '1':tianjia();break; case '2':shanchu();break; case '3':xiugai();break; case '0':flog=1;break; default:printf("输入有误,请重新输入\n");gets(lj);break; }
if(flog)break; } }
5、信息一览函数:
void liebiao() {
char lj[100]; struct emp *p; p=head; system("cls"); if(head==NULL){printf("查找不到信息\n");menu();}
printf("━━━━━━━━━━━员工信息列表━━━━━━━━━━━\n"); printf("编号\t\t姓名\t\t年龄\t\t性别\t\t出生年月\t\t电话\t\t学历\t\t职务\t\t住址 :\n");
if(head!=NULL) {while(p!=NULL)
{display(p);p=p->next;} }
printf("\n按回车键返回主菜单\n");gets(lj);}
四、调试分析
4.1、时间复杂度分析
在源程序的各个模块,时间复杂读为O(n),并且随着输入信息量的增加,从而时间复杂度也逐渐增加。 4.2、问题解决
在程序设计过程中,本程序采用两种方式进行数据输入,一种是由用户手动输入数据,另一种是由文本文件数据导入[1]的方式。但在文本导入过程中,导入的是二进制文件,但由于复杂程度较高,从而根据所查资料进行修改,采用导入文本文件。
在结果输出上,由于输出的是黑屏,所以经过查阅资料,运用system函数对输出结果的页面进行修饰。 4.3、设计收获
在做实验前,一定要将课本上的知识吃透,因为这是做实验的基础,否则,在做设计程序实验时,这将使你做的难度加大,浪费宝贵的时间,使你事倍功半。做实验时,一定要亲力亲为,务必要将每个步骤,每个细节弄清楚,弄明白。实验后,还要复习,思考,这样,你的印象才深刻,记得才牢固,否则,过后不久你就会忘得一干二净,这还不如不做。通过这次程序设计的实验,使我们学到了不少实用的知识,更重要的是,做实验的过程,思考问题的方法,这与做其他的实验是通用的,真正使我们们受益匪浅。
五、测试结果
1、菜单函数的测试结果如图
2
图2
2、信息查询函数的测试结果如图
3
图3
3、信息更新函数测试结果如图4
图4
六、用户使用说明
本程序实在VB.6.0环境下通过编译并执行。 用户根据提示信息进行选择并操作。
七、附录
源程序:
#include <stdio.h> #include <malloc.h> #include <stdlib.h>
#include <windows.h> //清屏函数头文件 #include <string.h> #include <time.h> #include <io.h>
#define LEN sizeof(struct emp) #define DATA "employee.txt" struct emp {
long int num; //编号 char name[20]; //姓名 int age; //年龄 char sex[4]; //性别 char birthday[10]; //生日 char tel[15]; //电话 char edu[8]; //学历 char pos[20]; //职务 char add[30]; //住址 struct emp *next; };
struct emp *head=NULL; int t=0;
void menu(); void gengxin(); void tianjia();
void insert(struct emp *em); void display(struct emp *p); void liebiao(); void chaxun(); void bianhao(); void shengri(); void xingming(); void readDate(); void writeDate(); void freeAll(); void shanchu(); void change();
void devise(struct emp *p); void main() {
struct emp *head=NULL;
head=(struct emp *)malloc(LEN);
head->next=NULL;system("color F1");
system("mode con: cols=500 lines=1000"); readDate();menu(); system("cls");
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
printf(" 谢谢使用,再见\n");
}
void menu(void) {
char i,lj[100]; int flog;time_t T; struct tm * timenow;
time ( &T );timenow = localtime ( &T ); flog=0; while(1) {
system("cls"); printf("\n\n\n\n\n");
printf(" ┏━━━━━━━━━员工信息管理系统━━━━━━━━━┓\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ 1.员工信息查询 ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ 2.员工信息更新 ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ 3.员工信息列表 ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ 0.退出管理系统 ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┃ ┃\n"); printf(" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━┛\n");
printf(" %s", asctime (timenow) ); printf("请输入您的选择(数字0-3):\n"); scanf("%c",&i);gets(lj); if(lj[0])i='a'; switch(i) {
case '1':chaxun();break; case '2':gengxin();break; case '3':liebiao();break; case '0':flog=1;break;
default:printf("输入有误,请按回车键重新输入\n");gets(lj);break; }if(flog)break; }} void tianjia()
{
struct emp *p,*p1; char lj[100]; p=NULL;p1=head;
printf("请输入第%d个员工的信息.\n",t+1); p=(struct emp *)malloc(LEN); if(p==NULL)
{printf("分配空间失败"); exit(0);} printf("请输入员工的编号:\n"); scanf("%ld",&p->num);
while((p1!=NULL)&&(p->num!=p1->num))p1=p1->next; if(p1!=NULL)
{if(p->num==p1->num) {
printf("编号已经存在,请重新输入,按回车键继续:\n"); free(p);gets(lj);getchar(); }}
printf("请输入员工的姓名:\n"); scanf("%s",p->name); printf("请输入员工的年龄:\n"); scanf("%d",&p->age); printf("请输入员工的性别:\n"); scanf("%s",p->sex);
printf("请输入员工的出生年月:\n"); scanf("%s",p->birthday); printf("请输入员工的电话:\n"); scanf("%s",p->tel); printf("请输入员工的学历:\n"); scanf("%s",p->edu); printf("请输入员工的职务:\n"); scanf("%s",p->pos); printf("请输入员工的住址:\n"); scanf("%s",p->add); insert(p); printf("输入的员工信息为:\n");
printf("------------------------------------------------------------------------:\n");
printf("编号\t\t姓名\t\t年龄\t\t性别\t\t出生年月\t\t电话\t\t学历\t\t职务\t\t住址:\n"); display(p);printf("按回车键继续\n");writeDate(); gets(lj);getchar();} void insert(struct emp *em) {
struct emp *p0,*p1,*p2; p1=head; p0=em; if(head==NULL)
{head=p0;p0->next=NULL;} else {
while((p0->num > p1->num)&&(p1->next!=NULL)) {p2=p1; p1=p1->next;} if(p0->num<=p1->num) { if(head==p1)head=p0; else p2->next=p0;p0->next=p1; } else
{p1->next=p0; p0->next=NULL; }}t++;} void display(struct emp *p)
{printf("%ld\t\t%s\t\t%d\t\t%s\t\t%s\t\t%s\t\t%s\t\t%s\t\t%s\n",p->num,p->name,p->age,p->sex,p->birthday,p->tel,p->edu,p->pos,p->add);} void liebiao() {
char lj[100]; struct emp *p; p=head; system("cls");
if(head==NULL){printf("查找不到信息\n");menu();}
printf("━━━━━━━━━━━员工信息列表━━━━━━━━━━━\n"); printf("编号\t\t姓名\t\t年龄\t\t性别\t\t出生年月\t\t电话\t\t学历\t\t职务\t\t住址 :\n");
if(head!=NULL)
{while(p!=NULL) {display(p);p=p->next;} } printf("\n按回车键返回主菜单\n");gets(lj);} void chaxun() {
char i,lj[100]; int flog; time_t T;
struct tm * timenow;
time ( &T );timenow = localtime ( &T ); flog=0; while(1) {
system("cls"); printf("\n\n\n\n\n");
printf("┏━━━━━━━━━员工信息查询系统━━━━━━━━━┓\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 1.按照编号查询 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 2.按照姓名查询 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 3.按照生日查询 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 0.退出管理系统 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┗━━━━━━━━━━━━━━━━━━━━━━━━━━┛\n");
printf("%s", asctime (timenow) ); printf("请输入您的选择(数字0-3):\n"); scanf("%c",&i);gets(lj); if(lj[0])i='a'; switch(i) {
case '1':bianhao();break; case '2':xingming();break; case '3':shengri();break; case '0':flog=1;break;
default:printf("输入有误,请重新输入\n");gets(lj);break; }if(flog)break;}}
void bianhao() {
int number;char lj[100]; struct emp *p1;p1=head;
printf("请输入要查询员工的编号:\n"); scanf("%d",&number);
while((number!=p1->num)&&(p1->next!=NULL)) {p1=p1->next; } if(number==p1->num) {
printf("━━━━━━━━━员工信息查询━━━━━━━━━━━━\n"); printf("要查询的员工信息:\n");
printf("编号\t\t姓名\t\t年龄\t\t性别\t\t出生年月\t\t电话\t\t学历\t\t职务\t\t住址:\n"); printf("%ld\t\t%s\t\t%d\t\t%s\t\t%s\t\t%s\t\t%s\t\t%s\t\t%s\n",p1->num,p1->name,p1->age,p1->sex,p1->birthday,p1->tel,p1->edu,p1->pos,p1->add); printf("按回车键继续\n");gets(lj); getchar(); } else if(p1->next==NULL)
{ printf("要查询的员工信息不存在,按回车键返回:\n"); gets(lj);getchar();}} void xingming() {
char ch[10];struct emp *p;char lj[100];p=head; printf("请输入要查询的员工的名字:\n"); scanf("%s",ch);if(p==NULL) {
printf("不存在员工记录,按回车键返回.\n"); gets(lj); getchar(); return ;}
while(strcmp(ch,p->name)&&p->next!=NULL) {p=p->next;}
if(!strcmp(ch,p->name))
{ printf("━━━━━━━━━员工信息查询━━━━━━━━━━━\n");
printf("编号\t\t姓名\t\t年龄\t\t性别\t\t出生年月\t\t电话\t\t学历\t\t职务\t\t住址:\n"); display(p);printf("按回车键继续\n"); gets(lj);getchar();} else if(p->next==NULL) {
printf("不存在员工记录.\n");gets(lj); getchar(); return;}} void shengri() {
char bir[20],lj[100]; struct emp *p;
p=head; printf("请输入要查询的员工的出生日期:\n"); scanf("%s",bir);if(p==NULL) {
printf("不存在员工记录.按回车键返回\n");gets(lj); getchar(); return ;}
while(strcmp(bir,p->birthday)&&p->next!=NULL)
{p=p->next;}
if(!strcmp(bir,p->name)) {
printf("━━━━━━━━━━员工信息查询━━━━━━━━━━━━\n"); printf("编号\t\t姓名\t\t年龄\t\t性别\t\t出生年月\t\t电话\t\t学历\t\t职务\t\t住址:\n"); display(p);printf("按回车键继续\n");gets(lj); getchar(); }
else if(p->next==NULL) {
printf("不存在员工记录.按回车键返回\n");gets(lj); getchar(); return;}} void readDate() {
FILE * fp;struct emp *p1,*p2;fp=fopen(DATA, "r"); if(!fp) {
printf("打开文件失败!按回车键继续\n");getchar();} else
{ fscanf(fp,"%d\n",&t);head=p1=p2=(struct emp *)malloc(LEN);
fscanf(fp,"%ld\t\t%s\t\t%d\t\t%s\t\t%s\t\t%s\t\t%s\t\t%s\t\t%s\n",&p1->num,p1->name,&p1->age,p1->sex,p1->birthday,p1->tel,p1->edu,p1->pos,p1->add); while(!feof(fp)) {p1=(struct emp *)malloc(LEN); fscanf(fp,"%ld\t\t%s\t\t%d\t\t%s\t\t%s\t\t%s\t\t%s\t\t%s\t\t%s\n",&p1->num,p1->name,&p1->age,p1->sex,p1->birthday,p1->tel,p1->edu,p1->pos,p1->add); p2->next=p1; p2=p1;}
p2->next=NULL;fclose(fp);}} void writeDate() {
FILE* fp; struct emp *p1;fp=fopen(DATA, "w"); if(!fp)
{ printf("打开文件失败!\n");getchar(); }else
{fprintf(fp,"%d\n",t);for(p1=head;p1!=NULL;p1=p1->next) {fprintf(fp,"%ld\t\t%s\t\t%d\t\t%s\t\t%s\t\t%s\t\t%s\t\t%s\t\t%s\n",p1->num,p1->name,p1->age,p1->sex,p1->birthday,p1->tel,p1->edu,p1->pos,p1->add); }fclose(fp);}} void freeAll() {
struct emp *p1,*p2; p1=p2=head; while(p1)
{ p2=p1->next;free(p1);p1=p2; }} void shanchu() {
struct emp *p1,*p2; long int number;char lj[100]; if(head==NULL) {
printf("无员工纪录!按回车键返回\n"); gets(lj);getchar();return; }
printf("请输入你要删除的员工的编号:\n"); scanf("%ld",&number); p1=head;
while(number!=p1->num&&p1->next!=NULL)
{p2=p1;p1=p1->next;} if(number==p1->num) {
if(p1==head)head=p1->next;
else p2->next=p1->next; free(p1);t--;
writeDate();printf("删除成功,按回车键继续\n");} else
printf("没有该员工的纪录,请核对.按回车键返回\n");gets(lj); getchar();} void xiugai() {
struct emp *p1,*p2; long int number; char lj[100]; if(head==NULL) {
printf("无员工纪录!按回车键返回\n"); gets(lj); getchar(); return; }
printf("请输入你要修改的员工的编号:\n"); scanf("%ld",&number); gets(lj); p1=head;
while(number!=p1->num&&p1->next!=NULL) {
p2=p1;
p1=p1->next; }
if(number==p1->num) {
devise(p1); writeDate();
printf("修改成功,按回车键继续\n"); } else
printf("没有该员工的纪录,请核对.按回车键返回\n"); gets(lj);
getchar(); }
void devise(struct emp *p) {
char i,lj[100]; int flog; time_t T;
struct tm * timenow;
time ( &T );timenow = localtime ( &T ); flog=0; while(1) {
system("cls");
printf("\n\n\n\n\n");
printf("┏━━━━━━━━━━员工信息修改━━━━━━━━━┓\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 1.修改员工姓名 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 2.修改员工年龄 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 3.修改员工性别 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 4.修改员工生日 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 5.修改员工电话 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 0.退出管理系统 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┗━━━━━━━━━━━━━━━━━━━━━━━━━┛\n");
printf("%s", asctime (timenow) ); printf("请输入您的选择(数字0-5):\n"); scanf("%c",&i); gets(lj); if(lj[0])i='a'; switch(i) {
case '1':printf("请输入员工的姓名:\n");scanf("%s",p->name);break; case '2':printf("请输入员工的年龄:\n");scanf("%d",&p->age);break; case '3':printf("请输入员工的性别:\n");scanf("%s",p->sex);break; case '4':printf("请输入员工的出生年月:\n");scanf("%s",p->birthday); break; case '5':xiugai();printf("请输入员工的电话:\n");scanf("%s",p->tel);break; case '0':flog=1;break;
default:printf("输入有误,请重新输入\n");gets(lj);break;
}
if(flog)break; } }
void gengxin() {
char i,lj[100]; time_t T; int flog;
struct tm * timenow;
time ( &T );timenow = localtime ( &T ); flog=0; while(1) {
system("cls");
printf("\n\n\n\n\n");
printf("┏━━━━━员工信息更新系统━━━━━━━━┓\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 1.员工信息添加 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 2.员工信息删除 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 3.员工信息修改 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ 0.退出管理系统 ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┃ ┃\n"); printf("┗━━━━━━━━━━━━━━━━━━━━━┛\n");
printf(" %s",asctime (timenow) ); printf("请输入您的选择(数字0-3):\n"); scanf("%c",&i); gets(lj); if(lj[0])i='a'; switch(i)
{case '1':tianjia();break; case '2':shanchu();break; case '3':xiugai();break; case '0':flog=1;break;
} }
default:printf("输入有误,请重新输入\n");gets(lj);break; }
if(flog)break;
正在阅读:
数据结构课程设计 员工信息管理系统08-30
河南监理工程师继续教育试题及答案11-11
深圳比利美英伟营养饲料有限公司(企业信用报告)- 天眼查 - 图文09-20
2014-2015学年四川省成都七中实验学校七年级(上)月考数学试卷(1206-21
2021年保护水资源的措施06-11
妈妈照顾生病的我的母爱,作文200字03-12
2-2. 利用E-navigator Planning Station更新电子海图培训考试试05-31
射频识别复习11-21
第2课 穆罕默德阿里改革的主要内容09-03
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 数据结构
- 管理系统
- 员工
- 课程
- 设计
- 信息
- 混凝土强度检验评定标准GB107
- 劳动纪律管理试行规定(修改稿)
- 2017-2022年中国终端显示设备市场投资战略咨询研究报告(目录)
- 第10章 数据库技术
- 第3章章末优化总结
- Nagios监控服务器与客户端的安装
- 综合英语教程 第三版 Unit 4 The Two Roads
- 各快递公司运费标准
- 电梯日常维护保养合同.范本doc
- 土石方爆破施工方案
- 基坑开挖作业指导书
- 智能家居管理系统论文开题报告及文献综述终极版
- 环境水文地质学考试重点(部分)
- 中国追踪调查数据权数的使用-北京大学中国社会科学调查中心
- 冀教版一年级语文下册 祖国多么广大
- 2012农产品安全生产记录档案
- 洒扫应对进退班会
- 2017年中国旗袍行业市场研究及发展趋势预测报告(目录)
- 贵池区石门黄煤矿矿井防治水管理制度
- 注册电气工程师考试试卷及答案-供配电_secret