没有合适的资源?快使用搜索试试~ 我知道了~
首页C语言程序设计——职工档案管理系统
资源详情
资源评论
资源推荐

江 西 农 业 大 学
职工档案管理系统实验报告
一、 实验目的
1、加深对讲授内容的理解
2、通过设计,熟练上机调试程序
3、C 语言综合程序设计能力的提高
二、实验题目与相关说明
题目:职工档案管理系统设计
功能:职工档案管理系统设计,每个职工是一条记录,包括编号,姓名,性别,出生年
月,所在
部门,职称,工资级别、电话等。系统可实现以下功能:
1、输入功能:输入每一位职工记录,将其信息存入文件中。
2、显示功能:完成全部职工记录的显示。
3、查找功能:完成按编号或姓名查找职工的相关记录,并显示。
分步实施:
1、初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数。
2、建立一个文件,将每位职工的信息写入文件中并能显示于屏幕上。
3、完成上述查找(编号,姓名,性别等)、修改等功能。
4、进一步要求,修改记录设置密码操作。
要求:1、用 C 语言实现程序设计;
2、利用结构体数组实现职工信息的数据结构设计;
3、系统的各个功能模块要求用函数的形式实现;
4、界面友好(良好的人机交互),程序加必要的注释。
三、程序功能简介
该系统主要用于管理职工的个人信息,它具有存储、添加、查询、修改、删除、浏览
等功能。其中修改信息需要权限密码,在程序中我已将初始密码设为“1828”。但我只是完
成了初始密码的设置,修改密码及其它有关密码的程序设计还没有完成。另外,我将查找
功能分为“姓名查找”和“工号查找”,这样可使得查找的成功率增加。
下面,就给出该系统源代码。
四、程序源码(带注释)
#include<stdio.h>#include<stdlib.h>
struct sta
{
char name[8];
char num[10];
char sex[10];

char bir[15];
char dep[10];
char pos[10];
char wage[10];
char tel[15];
char addr[50];
}worker; /*定义一个结构体*/
char +lename[20]={"123456"}; /*文件名*/
FILE *fp;
void creat(); /*定义一个创建函数*/
void browse(); /*定义一个输出信息的函数*/
void search1(); /*定义一个查询的函数*/
void search2(); /*定义一个查询的函数*/
void append(); /*定义一个添加函数*/
void modify(); /*定义一个修改函数*/
void delete(); /*定义一个删除函数*/
void main() /*主函数*/
{
int m;system("color 0a");
a:
while(1)
{
printf(" \n\t* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n");
printf(" \t*\t * 职工档案管理系统 * *\n");
printf(" \t*\t * * *\n");
printf(" \t*\t * * * * * * * * * * * * * * * * * * * * * *\n");
printf(" \t*\t * 1.存入档案 * *\n");
printf(" \t*\t * * *\n");
printf(" \t*\t * 2.添加信息 * *\n");
printf(" \t*\t * * *\n");
printf(" \t*\t * 3.查询职工信息(姓名) * *\n");
printf(" \t*\t * * *\n");
printf(" \t*\t * 4. 查询职工信息(工号) * *\n");
printf(" \t*\t * * *\n");
printf(" \t*\t * 5.修改信息(需要权限密码) * *\n");
printf(" \t*\t * * *\n");
printf(" \t*\t * 6.删除信息 * *\n");
printf(" \t*\t * * *\n");
printf(" \t*\t * 7.浏览信息 * *\n");
printf(" \t*\t * * *\n");
printf(" \t*\t * 8.退出系统 * *\n");

printf(" \t* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n"); /*输出提
示信息*/
printf("选择功能(1-8):[ ]\b\b");
scanf("%d",&m);
if(m>=1 && m<=8 && m!=5)
{
switch(m)
{case 1: creat();
break;
case 2: append();
break;
case 3: search1();
break;
case 4: search2();
break;
case 6: delete();
break;
case 7: browse();
break;
case 8: exit();
}
printf("\n\n 操作完毕,请再次选择!");
goto a;
}
if(m==5)
{
int i;
printf("请输入密码 (初始密码为 1828):") ;
scanf("%d",&i);
while(i != 1828) //初始密码为 1828
{
printf("密码错误,请重输 : ") ;
scanf("%d",&i);
}
printf("Congratulations!");
printf("\n") ;
modify( );
printf("\n\n 操作完毕,请再次选择!");
}
else
printf("\n\n 选择错误,请再次选择!");
}

}
void creat()
{
struct sta one;
if((fp=fopen(+lename,"w"))==NULL) /*打开文件,实现向文件输入数据*/
{
printf("\n 不能建立!");
exit();
}
fprintf(fp,"%-10s%-10s%-10s%-18s%-10s\n%-10s%-10s%-18s%-15s\n","姓
名","工号","性别","出生年月","所在部门","职位","工资","电话号码","住址");
printf("\n 请输入职工信息(以 0 结束)\n");
printf("姓名:\n");
scanf("%s",one.name);
while(strcmp(one.name,"0"))
{
printf("工号:\n");
scanf("%s",one.num);
printf("性别:\n");
scanf("%s",one.sex);
printf("出生年月:\n");
scanf("%s",one.bir);
printf("所在部门:\n");
scanf("%s",one.dep);
printf("职位:\n");
scanf("%s",one.pos);
printf("工资:\n");
scanf("%s",one.wage);
printf("电话:\n");
scanf("%s",one.tel);
printf("住址:\n");
scanf("%s",one.addr); /*输出职工的相关信息*/
fprintf(fp,"%-10s%-10s%-10s%-18s%-10s\n%-10s%-10s%-18s%-15s\
n",one.name,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.
addr);
printf("姓名:\n");
scanf("%s",one.name);
}
fclose(fp); /*关闭文件*/
}
void browse() /*输出函数*/
{
剩余18页未读,继续阅读















安全验证
文档复制为VIP权益,开通VIP直接复制

评论4