C语言课程设计职工信息管理系统

  • 格式:doc
  • 大小:197.50 KB
  • 文档页数:24

精品----

--精品

中国地质大学

课 程 设 计 报 告 书

所属课程名称 C程序设计

题 目 职工信息管理系统

院 (系)

班 级

学 号

学生姓名

指导教师

辅导教师

中国地质大学

2010年9月6日 精品----

--精品 精品----

--精品 课 程 设 计( 论 文 )任 务 书

工程学院 专 业 052081 班

一、课程设计(论文)题目 职工信息管理系统

二、课程设计(论文)工作:自 2010年 08月 28 日起至 2010年 09月 08 日止。

三、课程设计(论文)的内容要求:

1、设计内容:

制作职工信息管理系统,职工信息包括职工号,姓名,性别,年龄,学历,工资,住址,电话等(职工号不重复),并实现数据录入、数据删除和数据浏览以及数据查询等一些功能。

2、课程设计的要求:

A.系统以菜单方式工作

B.职工信息录入功能(职工信息用文件保存)--输入

C.职工信息浏览功能 --输出

D.查询和排序功能:(至少一种查询方式) --算法

E.按工资查询

精品----

--精品 F.按学历查询等

G.职工信息删除,修改功能(任选项)

2010 年 9月 6 日

一、需求分析

1.能够对职工的基本情况进行输入、修改、增加以及删除和存盘。

2.能够对职工信息的浏览。

3.能够实现对职工的查询。

4.能够对职工的基本工资情况进行设定。

5.能够将职工信息和基本工资信息以文档形式保存

6.程序能够以菜单形式出现

精品----

--精品 二、概要分析

职工信息管理系统设计

职工信息包括职工号,姓名,性别,年龄,学历,工资,住址,电话等(职工号不重复),试设计一职工信息管理系统,使之能提供以下功能:

✓ 系统以菜单方式工作

✓ 职工信息录入功能(职工信息用文件保存)--输入

✓ 职工信息浏览功能 --输出

✓ 查询和排序功能:(至少一种查询方式) --算法

✓ 按工资查询

✓ 按学历查询等

✓ 职工信息删除,修改功能(任选项)

下面是功能框架图: 精品----

--精品

三、详细设计以及调试分析

A.详细设计

1,创建了一个结构体employee,它包含num(工号),name(姓名),sex(性别),age(年龄),xueli(学历),wage(工资),addr(住址),tel(电话)8个基类,即为员工的基本信息。

2,创建了主函数main(),用它调用子函数menu(),add(),del(),display(),

Input(),load(),modify(),save(),search(),search num精品----

--精品 (),search xueli()。通过主函数对子函数的调用实现程序的各项功能。

B.调试分析

void main()

{ menu();

int n,flag;

char a;

--------------------Configuration: 1 - Win32 Debug--------------------

Compiling...

1.c

g:\1.c(55) : error C2143: syntax error : missing ';' before 'type'

g:\1.c(56) : error C2143: syntax error : missing ';' before 'type'

g:\1.c(61) : error C2065: 'n' : undeclared identifier

g:\1.c(64) : error C2065: 'flag' : undeclared identifier

g:\1.c(90) : error C2065: 'a' : undeclared identifier

Error executing cl.exe.

1.obj - 5 error(s), 0 warning(s) 精品----

--精品 开始由于在主函数的调用过程中把子函数的调用放在了变量的定义之前,导致程序无法运行,后来改正错误,程序可以正常运行。另外在程序中还出现各种小错误,这里不一一列举。通过调试我发现调试是一个漫长而枯燥的过程 ,很锻炼人的耐心。 精品----

--精品 四、程序使用指南

1.打开程序出现菜单选项

2,选择录入职工信息,按提示录入

精品----

--精品

3.通过选项依次实现对职工信息的浏览,查询,删除,增加和修改。

精品----

--精品

精品----

--精品

精品----

--精品 五.源代码

#include

#include

#include

#include

#define N 100

struct employee

{

int num;//工号

char name[10];//姓名

char sex; //性别

int age;//年龄

char xueli[30];//学历

int wage;//工资

char addr[30];//住址

long int tel;//电话

}em[100];

void menu();

void input();

void save(int);

void display();

void del();

void add();

void search();

void search_num();

void search_xueli();

void search_tel();

void modify();

void menu()

{

printf(" ******欢迎使用查询系统******\n");

printf("\n");

printf("\n");

printf(" ******************职工信息管理****************\n");

printf(" 1.录入职工信息");

printf(" 2.浏览职工信息\n");

printf(" 3.查询职工信息");

printf(" 4.删除职工信息\n"); 精品----

--精品 printf(" 5.增加职工信息");

printf(" 6.修改职工信息\n");

printf(" 7.退出\n");

printf(" ********************谢谢使用******************\n");

printf("\n");

printf("\n");

}

void main()

{

int n,flag;

char a;

menu();

do

{

printf("请选择你需要操作的步骤(1--7):\n");

scanf("%d",&n);

if(n>=1&&n<=7)

{

flag=1;

break;

}

else

{

flag=0;

printf("您输入有误,请重新选择!");

}

}

while(flag==0);

while(flag==1)

{

switch(n)

{

case 1:printf("◆◆◆输入职工信息◆◆◆\n");printf("\n");input();break;

case 2:printf("◆◆◆浏览职工信息◆◆◆\n");printf("\n");display();break;

case 3:printf("◆◆◆按职工号或学历查询职工信息◆◆◆\n");printf("\n");search();break;

case 4:printf("◆◆◆删除职工信息◆◆◆\n");printf("\n");del();break;

case 5:printf("◆◆◆添加职工信息◆◆◆\n");printf("\n");add();break;

case 6:printf("◆◆◆修改职工信息◆◆◆\n");printf("\n");modify();break;

case 7:exit(0);break;

default :break;

}