資源簡(jiǎn)介
1. 系統(tǒng)總體描述
員工管理系統(tǒng)為用戶提供員工信息錄入、查看、查找、更新、刪除、添加、請(qǐng)假記錄
保存信息到文檔等功能。
(1) 登錄
登錄系統(tǒng)時(shí),對(duì)用戶名和密碼進(jìn)行驗(yàn)證,兩者均無(wú)誤后方可進(jìn)入系統(tǒng)。
(2) 輸入員工信息
輸入員工信息,分別記錄員工的姓名 性別 編號(hào)等信息進(jìn)行錄入,不可錄入相同編號(hào)
的職員,否則提示輸入有誤。
(3) 添加員工信息
添加員工信息默認(rèn)員工編號(hào)為已有員工編號(hào)的下一個(gè),同時(shí)也可錄入職員的姓名 性別
部門 職位等等。
(4) 職員信息查詢
可根據(jù)不同職員的姓名 編號(hào) 部門進(jìn)行分別查詢。
(5) 職員信息刪除
可根據(jù)不同職員的姓名 編號(hào) 部門多方式進(jìn)行刪除。
(6) 請(qǐng)假情況記錄
對(duì)于已請(qǐng)假的員工進(jìn)行請(qǐng)假情況的記錄,記錄之后將記錄信息存入員工信息表。
(7) 信息儲(chǔ)存
將操作的員工信息表記錄于相同路徑下的文件夾中,作為操作的數(shù)據(jù)記錄。
代碼片段和文件信息
#include?
#include?
#include?
#include?
#define?LIST_INIT_SIZE?10????//線性表存儲(chǔ)空間的初始分配量
#define?LISTINCRMENT?5??????//?線性表存儲(chǔ)空間的分配增量
typedef?struct?//員工信息結(jié)構(gòu)體
{
int?num;//編號(hào)
char?name[20];//姓名
char?sex[20];//性別
char?local[20];//籍貫
char?bumen[20];//部門
char?zhiwei[20];//職位
char?xinzi[20];//薪資
char?tel[20];//電話
int?lea;//請(qǐng)假次數(shù)
}employee;
typedef?struct?//順序表
{
employee?*elem;??????//?存儲(chǔ)空間基地址
int?length;??????//當(dāng)前長(zhǎng)度
int?listsize;????//?當(dāng)前分配的存儲(chǔ)容量
}SqList;
void?InitList(SqList?*L)//初始化
{
L->elem?=?(employee?*)malloc(sizeof(employee)*LIST_INIT_SIZE);
if?(!L->elem)
exit(1);
L->length?=?0;
L->listsize?=?LIST_INIT_SIZE;
}
void?CreateList(SqList?*L)//初始建立
{
int?i;
char?a[20];
int?nu;
printf(“請(qǐng)輸入員工人數(shù):\n“);
scanf(“%d“?&L->length);
for?(i?=?0;?ilength;?i++)
{
printf(“請(qǐng)輸入第%d個(gè)員工的編號(hào),姓名,性別(w/m),籍貫,部門,職位,薪資,請(qǐng)假次數(shù),電話.\n“?i?+?1);
scanf(“%d“?&L->elem[i].num);
scanf(“%s“?L->elem[i].name);
while?(1)
{
scanf(“%s“?a);
if?(strcmp(a?“w“)?==?0?||?strcmp(a?“m“)==0)
{
strcpy(L->elem[i].sex?a);
break;
}
else
{
printf(“請(qǐng)重新輸入性別!\n“);
}
}
scanf(“%s“?L->elem[i].local);?getchar();
scanf(“%s“?L->elem[i].bumen);?getchar();
scanf(“%s“?L->elem[i].zhiwei);?getchar();
scanf(“%s“?L->elem[i].xinzi);?getchar();
scanf(“%d“&nu);
L->elem[i].lea?=?nu;
scanf(“%s“?L->elem[i].tel);?getchar();
}
}
void?add(SqList?*L)
{
int?i;
int?nu;
char?a[20];
printf(“目前已有員工%d個(gè)員工\n“?L->length);
printf(“請(qǐng)輸入您要添加員工的姓名,性別,籍貫,部門,職位,薪資,請(qǐng)假次數(shù),電話.\n“);
i?=?L->length;
L->length++;
L->elem[i].num?=?i?+?1;
scanf(“%d“?&L->elem[i].num);
scanf(“%s“?L->elem[i].name);
while?(1)
{
scanf(“%s“?a);
if?(strcmp(a?“w“)?==?0?||?strcmp(a?“m“)?==?0)
{
strcpy(L->elem[i].sex?a);
break;
}
else
{
printf(“請(qǐng)重新輸入性別!\n“);
}
}
scanf(“%s“?L->elem[i].local);
scanf(“%s“?L->elem[i].bumen);
scanf(“%s“?L->elem[i].zhiwei);
scanf(“%s“?L->elem[i].xinzi);
scanf(“%d“?&nu);
L->elem[i].lea?=?nu;
scanf(“%s“?L->elem[i].tel);
printf(“添加成功!“);
}
void?PintList(SqList?*L)//打印全部信息
{
int?i;
printf(“\n|?編號(hào)?|??|?姓名?|??|?性別?|??|?籍貫?|??|?部門?|??|?職位?|??|?薪資?|??|?請(qǐng)假次數(shù)?|??|?電話?|\n“);
for?(i?=?0;?ilength;?i++)
{
printf(“?%-10d%-10s%-10s%-10s%-10s%-10s%-10s%-14d%-11s?\n“?L->elem[i].num?L->elem[i].name?L->elem[i].sex?L->elem[i].local?L->elem[i].bumen?L->elem[i].zhiwei?L->elem[i].xinzi?L->elem[i].lea?L->elem[i].tel);
}
}
void?GetElem(SqList?*L)//查找
{
int?i?t;
char?w[10]?q[10];
int?n?x?=?0;
printf(“請(qǐng)選查找方式:\n“);
printf(“1.編號(hào)查找\n“);
printf(“2.姓名查找\n“);
printf(“3.部門查找\n“);
scanf(“%d“?&t);
switch?(t)
{
case?1:
printf(“請(qǐng)輸入要查找的編號(hào):\n“);
scanf(“%d“?&n);
printf(“\n|?編號(hào)?|??|?姓名?|??|?性別?|??|?籍貫?|??|?部門?|??|?職位?|??|?薪資?|??|?請(qǐng)假次數(shù)?|??|?電話?|\n“);
for?(i?=?0;?ilength;?i++)
{
if?(n?==?L->elem[i].
評(píng)論
共有 條評(píng)論