C语言人事管理系统设计

C语言人事管理系统设计
C语言人事管理系统设计

设计题目:人事管理系统设计

目录:

1.设计任务---------------------------------------------------------------------------------------------1

2.正文-----------------------------------------------------------------------------------------------------------2

(1).系统模块图------------------------------------------------------------------------------------------3 (2).模块说明---------------------------------------------------------------------------------------------3 (3).用户使用说明---------------------------------------------------------------------------------------3 (4).测试结果---------------------------------------------------------------------------------------------3

3.设计小结--------------------------------------------------------------------------------------------------9

4.附录-----------------------------------------------------------------------------------------------------------10

一.设计任务

1、需求分析:人事档案信息采用文件存储,因而要提供文件的输入输出操作;根据学院人事的变动情况,添加删除记录,因而要提供文件的添加删除操作;根据编号和姓名进项查询,所以要提供文件的查找操作;高级编辑功能,就是提供文件的修改操作;统计功能要提供统计操作;排序功能要提供用排序算法对文件记录的排序;另外还要提供键盘式选择菜单以实现功能选择。

2、总体设计:整体设计为数据输入模块、数据添加模块、数据删除模块、数据查询模块、数据修改模块、数据统计模块、数据排序模块。

3、详细设计

数据结构采用结构体:

Struct personnelArchiveInfo

{ Char No[10]; //编号

Char name[10]; //姓名

Int sex; //性别

Int age; //年龄

Char job[10]; //职务

Char post[10]; //职称

Char politic[10]; //政治面貌

Char edu_level[10]; //最高学历

Char period[10]; //任职时间

Char start_time[10]; //来院时间

Char type[10]; //人员类别

}PAInfo;

(1)数据输入模块把员工信息写入人事档案文件。

(2)数据添加模块用追加的方式把新增员工信息写入人事档案文件。

(3)数据删除模块根据人员编号查找要删除的人员,从文件中读一条记录,查看编号是否要删除,如果是,则舍弃,不再写入文件;否则重新写入文件。

(4)数据查询模块把编号和姓名作为查询字段,用基本查找算法查找人事档案文件,把符合查找要求的记录输出。

(5)数据修改模块查找要修改的记录,修改之。先读记录,若是要修改的记录,则修改信息,把修改后的信息写入文件;否则直接写入文件。

(6)数据排序模块通过菜单选择年龄或者来院时间,把数据从文件中读出来,任意选择一种排序算法对记录进行排序,输出排序结果。

(7)数据统计模块通过菜单选择统计字段:在职人数、党员人数、女工人数、高学历人数、高职称人数。例如选择党员人数,则统计运算伪码如下:

Count=0; //记录在职人数

While(文件未读完)

{

读一条记录;

If(政治面貌是党员)

{ Count++;

输出该条记录;

}}

其他字段的统计运算与次类似.

二.正文

1.系统模块图

人事管理系统

2.模块说明

(1).主函数:显示封面和菜单;

(2).输入模块:建立文件,输入数据;

(3).增加模块:追加新数据到文件;

(4).删除模块:先读取数据,再将要删除的数据去掉后重新写入文件;(5).排序模块:读取文件,选择排序;

(6).统计模块:选择要统计的人的数量;

(7).退出模块:主函数中。

3.用户使用说明

源程序需用visual C++运行。其它按系统说明操作。

4.测试结果

封面

主菜单

输入模块

增加模块

删除模块

查询模块

选择排序

统计模块

三.设计小结

C语言课程设计经过2周的实习终于落幕了。不断的复习理论知识、编程、

调试、改错,直至存盘,同样的环节、同样的工作步骤,重复又重复,枯燥而乏味;看似简单的程序题,编写后调试却屡屡出错。如何改如何错,怎么编写怎么调试失败,心烦而意乱。但在不断的调试成功中,不断的激励着我,每次看到运行结果是自己所想的时候感觉很有成就感。最后的成功让我感到付出的一切都很值得。

当然,这次的程序存在着一些瑕疵和不足,相信下次我能编出更好的程序。

参考文献

[1]。谭浩强。C程序设计(第二版)。北京。清华大学出版社,1999

[2]。谭浩强。张基温。C语言程序设计(第三版)。北京。高等教育出版社,2006.8

[3]。谭浩强。C程序设计(第三版)。北京。清华大学出版社,2006

五.附录

#include

#include

#include

#include

//#include

#define N 50

struct personnelArchiveInfo

{

char No[10]; //编号

char name[10]; //姓名

int sex; //性别

int age; //年龄

char job[10]; //职务

char post[10]; //职称

char politic[10]; //政治面貌

char edu_level[10]; //最高学历

char period[10]; //任职时间

char start_time[10]; //来院时间

char type[10]; //人员类别

}PAInfo;

void sta()//封面

{ int i,j;

printf("\n\n");

for(j=0;j<3;j++)

{ printf("\t");

for(i=0;i<68;i++)

printf("*");

printf("\n");}

printf("\t**************三峡大学理学院2010级光信息科学与技术专业**************\n"); printf("\t**************\t《高级语言程序设计》课程设计\t\t************\n");

printf("\t**************\t\t说明书\t\t\t\t************\n");

printf("\t**************\t设计题目:人事管理系统设计\t\t************\n");

printf("\t**************\t班级:光信\t\t\t\t************\n");

printf("\t**************\t学号:2010146108\t\t\t\t************\n");

printf("\t**************\t姓名:张俊\t\t\t\t************\n");

printf("\t**************\t完成时间:2011.11.15\t\t\t************\n");

for(j=0;j<4;j++)

{ printf("\t");

for(i=0;i<68;i++)

printf("*");

printf("\n");}

system("pause");}

void input()//输入模块

{system("cls");

int i,x;

FILE *fp;

struct personnelArchiveInfo *p[N];

fp=fopen("d://stu.txt","w");

if((fp=fopen("d:/stu.txt","w"))==0)

{ printf("打开文件失败");

exit(1); }

printf("请输入要输入的人员个数:");

scanf("%d",&x);

for(i=0;i

{ p[i]=(struct personnelArchiveInfo *)malloc(sizeof(struct personnelArchiveInfo));

printf("编号:");scanf("%s",p[i]->No);

printf("姓名:");scanf("%s",p[i]->name);

printf("性别'1'男,'2'女:");scanf("%d",&p[i]->sex);

printf("年龄:");scanf("%d",&p[i]->age);

printf("职务(没有则填无):");scanf("%s",p[i]->job);

printf("职称(总裁,总经理,部门经理,技术总监,组长,普通员工):");scanf("%s",p[i]->post);

printf("政治面貌(党员,团员,群众):");scanf("%s",p[i]->politic);

printf("最高学历(博士,硕士,大学,高中,初中,小学):");scanf("%s",p[i]->edu_level);

printf("任职时间:");scanf("%s",p[i]->period);

printf("来院时间:");scanf("%s",p[i]->start_time);

printf("人员类别:");scanf("%s",p[i]->type);

fwrite(p[i],sizeof(struct personnelArchiveInfo),1,fp); }

fclose(fp);

system("pause");}

void zj()//增加模块

{system("cls");

int i,x;

FILE *fp;

struct personnelArchiveInfo *p[N];

fp=fopen("d://stu.txt","a");

if((fp=fopen("d:/stu.txt","a"))==0)

{ printf("打开文件失败");

exit(1); }

printf("请输入要增加的人员个数:");

scanf("%d",&x);

for(i=0;i

{ p[i]=(struct personnelArchiveInfo *)malloc(sizeof(struct personnelArchiveInfo));

printf("编号:");scanf("%s",p[i]->No);

printf("姓名:");scanf("%s",p[i]->name);

printf("性别'1'男,'2'女:");scanf("%d",&p[i]->sex);

printf("年龄:");scanf("%d",&p[i]->age);

printf("职务:");scanf("%s",p[i]->job);

printf("职称:");scanf("%s",p[i]->post);

printf("政治面貌:");scanf("%s",p[i]->politic);

printf("最高学历:");scanf("%s",p[i]->edu_level);

printf("任职时间:");scanf("%s",p[i]->period);

printf("来院时间:");scanf("%s",p[i]->start_time);

printf("人员类别:");scanf("%s",p[i]->type);

fwrite(p[i],sizeof(struct personnelArchiveInfo),1,fp); }

fclose(fp); system("pause");}

void sc()//删除模块

{system("cls");

int i,j,x,s=0;

char a[10];

FILE *fp;

struct personnelArchiveInfo *p[N];

fp=fopen("d:/stu.txt","r");

if((fp=fopen("d:/stu.txt","r"))==0)

{ printf("打开文件失败");

exit(1); }

for(i=0;fread(&PAInfo,sizeof(PAInfo),1,fp);i++)

{p[i]=(struct personnelArchiveInfo *)malloc(sizeof(struct personnelArchiveInfo));

*p[i]=PAInfo; }

x=i; fclose(fp);

fp=fopen("d:/stu.txt","w");

if((fp=fopen("d:/stu.txt","w"))==0)

{ printf("打开文件失败");

exit(1); }

printf("输入要删除人员的编号:");

scanf("%s",a);

for(j=0;j

{ if(strcmp(p[j]->No,a)==0)

{ printf("编号:%s\n",p[j]->No);

printf("姓名:%s\n",p[j]->name);

printf("性别'1'男,'2'女:%d\n",p[j]->sex);

printf("年龄:%d\n",p[j]->age);

printf("职务:%s\n",p[j]->job);

printf("职称:%s\n",p[j]->post);

printf("政治面貌:%s\n",p[j]->politic);

printf("最高学历:%s\n",p[j]->edu_level);

printf("任职时间:%s\n",p[j]->period);

printf("来院时间:%s\n",p[j]->start_time);

printf("人员类别:%s\n\n",p[j]->type);

printf("是否要删除?'1'是,'0'否:");

scanf("%d",&s); if(s) continue;}

fwrite(p[j],sizeof(struct personnelArchiveInfo),1,fp); }

fclose(fp);

system("pause");}

void cx()//查询模块

{system("cls");

int i,j,x,y,s=0;

char b[10];

FILE *fp;

struct personnelArchiveInfo *p[N];

fp=fopen("d:/stu.txt","r");

if((fp=fopen("d:/stu.txt","r"))==0)

{ printf("打开文件失败");

exit(1); }

for(i=0;fread(&PAInfo,sizeof(PAInfo),1,fp);i++)

{p[i]=(struct personnelArchiveInfo *)malloc(sizeof(struct personnelArchiveInfo));

*p[i]=PAInfo; }

fclose(fp);

x=i;

printf("请选择查询方法'1'编号,'0'姓名:");

scanf("%d",&s);

fp=fopen("d:/stu.txt","w");

if((fp=fopen("d:/stu.txt","w"))==0)

{ printf("打开文件失败");

exit(1); }

if(s)

{printf("输入要查询人员的编号:");

scanf("%s",b);

for(j=0;j

{ if(strcmp(p[j]->No,b)==0)

{ printf("编号:%s\n",p[j]->No);

printf("姓名:%s\n",p[j]->name);

printf("性别'1'男,'2'女:%d\n",p[j]->sex);

printf("年龄:%d\n",p[j]->age);

printf("职务:%s\n",p[j]->job);

printf("职称:%s\n",p[j]->post);

printf("政治面貌:%s\n",p[j]->politic);

printf("最高学历:%s\n",p[j]->edu_level);

printf("任职时间:%s\n",p[j]->period);

printf("来院时间:%s\n",p[j]->start_time);

printf("人员类别:%s\n\n",p[j]->type);

printf("是否要修改'1'是,'0'否");

scanf("%d",&y);

if(y)//编号查询

{ system("cls");

printf("编号:");scanf("%s",p[j]->No);

printf("姓名:");scanf("%s",p[j]->name);

printf("性别'1'男,'2'女:");scanf("%d",&p[j]->sex);

printf("年龄:");scanf("%d",&p[j]->age);

printf("职务:");scanf("%s",p[j]->job);

printf("职称:");scanf("%s",p[j]->post);

printf("政治面貌:");scanf("%s",p[j]->politic);

printf("最高学历:");scanf("%s",p[j]->edu_level);

printf("任职时间:");scanf("%s",p[j]->period);

printf("来院时间:");scanf("%s",p[j]->start_time);

printf("人员类别:");scanf("%s",p[j]->type);

fwrite(p[j],sizeof(struct personnelArchiveInfo),1,fp); continue;}

fwrite(p[j],sizeof(struct personnelArchiveInfo),1,fp); continue;}

fwrite(p[j],sizeof(struct personnelArchiveInfo),1,fp); } } else//姓名查询

{printf("输入要查询人员的姓名:");

scanf("%s",b);

for(j=0;j

{ if(strcmp(p[j]->name,b)==0)

{ printf("编号:%s\n",p[j]->No);

printf("姓名:%s\n",p[j]->name);

printf("性别'1'男,'2'女:%d\n",p[j]->sex);

printf("年龄:%d\n",p[j]->age);

printf("职务:%s\n",p[j]->job);

printf("职称:%s\n",p[j]->post);

printf("政治面貌:%s\n",p[j]->politic);

printf("最高学历:%s\n",p[j]->edu_level);

printf("任职时间:%s\n",p[j]->period);

printf("来院时间:%s\n",p[j]->start_time);

printf("人员类别:%s\n\n",p[j]->type);

printf("是否要修改'1'是,'0'否");

scanf("%d",&y);

if(y)

{ system("cls");

printf("编号:");scanf("%s",p[j]->No);

printf("姓名:");scanf("%s",p[j]->name);

printf("性别'1'男,'2'女:");scanf("%d",&p[j]->sex);

printf("年龄:");scanf("%d",&p[j]->age);

printf("职务:");scanf("%s",p[j]->job);

printf("职称:");scanf("%s",p[j]->post);

printf("政治面貌:");scanf("%s",p[j]->politic);

printf("最高学历:");scanf("%s",p[j]->edu_level);

printf("任职时间:");scanf("%s",p[j]->period);

printf("来院时间:");scanf("%s",p[j]->start_time);

printf("人员类别:");scanf("%s",p[j]->type);

fwrite(p[j],sizeof(struct personnelArchiveInfo),1,fp);

continue;}

fwrite(p[j],sizeof(struct personnelArchiveInfo),1,fp);

continue;}

fwrite(p[j],sizeof(struct personnelArchiveInfo),1,fp); } }

fclose(fp); system("pause");}

void px()//排序模块

{system("cls");

int i,j,k,a;

FILE *fp;

struct personnelArchiveInfo *p[N];

fp=fopen("d:/stu.txt","r");

if((fp=fopen("d:/stu.txt","r"))==0)

{ printf("打开文件失败");

exit(1); }

for(i=0;fread(&PAInfo,sizeof(PAInfo),1,fp);i++)

{p[i]=(struct personnelArchiveInfo *)malloc(sizeof(struct personnelArchiveInfo));

*p[i]=PAInfo; }

fclose(fp);

printf("选择排序方法'1'年龄'0'来院时间:");

scanf("%d",&a);

if(a)

{ for(k=0;k

for(j=0;j

if((p[j]->age)>(p[j+1]->age))

{PAInfo=*p[j];*p[j]=*p[j+1];*p[j+1]=PAInfo;}

for(i=0;i

{ printf("编号:%s\n",p[i]->No);

printf("姓名:%s\n",p[i]->name);

printf("性别'1'男,'2'女:%d\n",p[i]->sex);

printf("年龄:%d\n",p[i]->age);

printf("职务:%s\n",p[i]->job);

printf("职称:%s\n",p[i]->post);

printf("政治面貌:%s\n",p[i]->politic);

printf("最高学历:%s\n",p[i]->edu_level);

printf("任职时间:%s\n",p[i]->period);

printf("来院时间:%s\n",p[i]->start_time);

printf("人员类别:%s\n\n",p[i]->type); }}

else

{ for(k=0;k

for(j=0;j

if(strcmp((p[j]->start_time),(p[j+1]->start_time))>0) {PAInfo=*p[j];*p[j]=*p[j+1];*p[j+1]=PAInfo;}

for(i=0;i

{ printf("编号:%s\n",p[i]->No);

printf("姓名:%s\n",p[i]->name);

printf("性别'1'男,'2'女:%d\n",p[i]->sex);

printf("年龄:%d\n",p[i]->age);

printf("职务:%s\n",p[i]->job);

printf("职称:%s\n",p[i]->post);

printf("政治面貌:%s\n",p[i]->politic);

printf("最高学历:%s\n",p[i]->edu_level);

printf("任职时间:%s\n",p[i]->period);

printf("来院时间:%s\n",p[i]->start_time);

printf("人员类别:%s\n\n",p[i]->type); }}

system("pause");}

void tj()

{system("cls");

int i,j,a,count=0;

FILE *fp;

struct personnelArchiveInfo *p[N];

fp=fopen("d:/stu.txt","r");

if((fp=fopen("d:/stu.txt","r"))==0)

{ printf("打开文件失败");

exit(1); }

for(i=0;fread(&PAInfo,sizeof(PAInfo),1,fp);i++)

{p[i]=(struct personnelArchiveInfo *)malloc(sizeof(struct personnelArchiveInfo));

*p[i]=PAInfo; }

fclose(fp);

printf("\t1.统计在职人数\n");printf("\t2.统计党员人数\n");printf("\t3.统计女工人数\n");

printf("\t4.统计高学历人数\n");printf("\t5.统计高职称人数\n");printf("\n\t\t请输入1~5选择:"); scanf("%d",&a);

switch(a)

{

case 1: for(j=0;j

{ if(!strcmp(p[j]->job,"无")==0)

{ count++;

printf("编号:%s\n",p[j]->No);

printf("姓名:%s\n",p[j]->name);

printf("性别'1'男,'2'女:%d\n",p[j]->sex);

printf("年龄:%d\n",p[j]->age);

printf("职务:%s\n",p[j]->job);

printf("职称:%s\n",p[j]->post);

printf("政治面貌:%s\n",p[j]->politic);

printf("最高学历:%s\n",p[j]->edu_level);

printf("任职时间:%s\n",p[j]->period);

printf("来院时间:%s\n",p[j]->start_time);

printf("人员类别:%s\n\n",p[j]->type); }}

printf("在职人数:%d\n",count);break;

case 2:

for(j=0;j

{ if(strcmp(p[j]->job,"党员")==0)

{ count++;

printf("编号:%s\n",p[j]->No);

printf("姓名:%s\n",p[j]->name);

printf("性别'1'男,'2'女:%d\n",p[j]->sex);

printf("年龄:%d\n",p[j]->age);

printf("职务:%s\n",p[j]->job);

printf("职称:%s\n",p[j]->post);

printf("政治面貌:%s\n",p[j]->politic);

printf("最高学历:%s\n",p[j]->edu_level);

printf("任职时间:%s\n",p[j]->period);

printf("来院时间:%s\n",p[j]->start_time);

printf("人员类别:%s\n\n",p[j]->type); }}

printf("党员人数:%d\n",count) ;break;

case 3:

for(j=0;j

{ if(p[j]->sex==2)

{ count++;

printf("编号:%s\n",p[j]->No);

printf("姓名:%s\n",p[j]->name);

printf("性别'1'男,'2'女:%d\n",p[j]->sex);

printf("年龄:%d\n",p[j]->age);

printf("职务:%s\n",p[j]->job);

printf("职称:%s\n",p[j]->post);

printf("政治面貌:%s\n",p[j]->politic);

printf("最高学历:%s\n",p[j]->edu_level);

printf("任职时间:%s\n",p[j]->period);

printf("来院时间:%s\n",p[j]->start_time);

printf("人员类别:%s\n\n",p[j]->type); }}

printf("女工人数:%d\n",count) ;break;

case 4: for(j=0;j

{ if(strcmp(p[j]->edu_level,"大学")==0||strcmp(p[j]->edu_level,"硕士")==0||strcmp(p[j]->edu_level,"博士")==0)

{ count++;

printf("编号:%s\n",p[j]->No);

printf("姓名:%s\n",p[j]->name);

printf("性别'1'男,'2'女:%d\n",p[j]->sex);

printf("年龄:%d\n",p[j]->age);

printf("职务:%s\n",p[j]->job);

printf("职称:%s\n",p[j]->post);

printf("政治面貌:%s\n",p[j]->politic);

printf("最高学历:%s\n",p[j]->edu_level);

printf("任职时间:%s\n",p[j]->period);

printf("来院时间:%s\n",p[j]->start_time);

printf("人员类别:%s\n\n",p[j]->type); }}

printf("高学历人数:%d\n",count) ;break;

case 5:

for(j=0;j

{ if(strcmp(p[j]->job,"总经理")==0||strcmp(p[j]->job,"总裁")==0)

{ count++;

printf("编号:%s\n",p[j]->No);

printf("姓名:%s\n",p[j]->name);

printf("性别'1'男,'2'女:%d\n",p[j]->sex);

printf("年龄:%d\n",p[j]->age);

printf("职务:%s\n",p[j]->job);

printf("职称:%s\n",p[j]->post);

printf("政治面貌:%s\n",p[j]->politic);

printf("最高学历:%s\n",p[j]->edu_level);

printf("任职时间:%s\n",p[j]->period);

printf("来院时间:%s\n",p[j]->start_time);

printf("人员类别:%s\n\n",p[j]->type);

} }

printf("高职称人数:%d\n",count) ;break;

default:printf("错误选择") ;break; }

system("pause");}

void rd()//读取模块

{system("cls");

int i;

FILE *fp;

struct personnelArchiveInfo *p[N];

fp=fopen("d:/stu.txt","r");

if((fp=fopen("d:/stu.txt","r"))==0)

{ printf("打开文件失败");

exit(1);}

for(i=0;fread(&PAInfo,sizeof(PAInfo),1,fp);i++)

{p[i]=(struct personnelArchiveInfo *)malloc(sizeof(struct personnelArchiveInfo));

*p[i]=PAInfo;

printf("编号:%s\n",p[i]->No);

printf("姓名:%s\n",p[i]->name);

printf("性别'1'男,'2'女:%d\n",p[i]->sex);

printf("年龄:%d\n",p[i]->age);

printf("职务:%s\n",p[i]->job);

printf("职称:%s\n",p[i]->post);

printf("政治面貌:%s\n",p[i]->politic);

printf("最高学历:%s\n",p[i]->edu_level);

printf("任职时间:%s\n",p[i]->period);

printf("来院时间:%s\n",p[i]->start_time);

printf("人员类别:%s\n\n",p[i]->type);

}printf("是否返回主菜单?");system("pause");

fclose(fp);}

void main()

{ int flag=1;

char i;

system("color 048");

sta();

do

{system("cls");

printf("\n\n");

printf("\t\t\t\t人事管理\n\n");

printf("\t\t\ta.写入信息\n");printf("\t\t\tb.增加信息\n");

printf("\t\t\tc.删除信息\n");printf("\t\t\td.查找和修改信息\n");

printf("\t\t\te.选择排序\n");printf("\t\t\tf.统计人数\n");

printf("\t\t\tg.退出\n");printf("\n\t\t请输入a~e选择:");

i=getchar();

switch(i)

{case 'a':input(); break;

case 'b':zj(); break;

case 'c':sc(); break;

case 'd':cx(); break;

case 'e':px();break;

case 'f':tj() ;break;

case 'g':flag=0;break;

default:printf("错误选择\n") ;system("pause");break;}} while(flag==1);

printf("\n\t\t\t谢谢使用!\n");}

人事管理系统——C语言

人事管理管理系统 [要求] 某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。 (1)添加删除功能:能根据学院人事的变动情况,添加删除记录; (2)查询功能:能根据编号和姓名进行查询; (3)编辑功能(高级):根据查询对相应的记录进行修改,并存储; (4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计要求同时显示被统计者的信息; (5)排序功能:按照年龄、来院时间进行排序; (6)保存功能:能对输入的数据进行相应的存储; 一、需求分析: 根据题目要求,职工信息是存放在文件中的,所以应该提供相应的文件的输入输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程序实现相应的操作,另外菜单式的选择方式选择程序的功能也是必须需的。另外程序中要求存储的模块,采用的方式均为将原文件中的所有数据读入内存,在内存中处理之后以覆盖的方式写入文件中重新储存,这样的方法容易理解、容易编写,但当文件中的数据量很大时,这种方法也存在一定的难度,在本程序中将N定为100,也即最多可储存的职工人数为100; 二、总体设计: 根据以上需求分析,将程序分成以下几个模块: 1、新建档案信息; 2、删除信息; 3、追加信息; 4、搜索查找信息(按姓名或者编号搜索); 5、浏览全部信息; 6、修改信息; 7、信息排序; 8、信息统计; 三、详细设计; 1、主函数: 〈1〉需求分析: 为使系统执行完每部分功能后能够方便的回到系统主界面,main()函数设计的很简单,只包含一个menu()函数,其余的全部功能都通过menu()函数调用来实现,并通过menu()函数的递归调用实现返回主界面的功能。 main()函数定义如下: main()

c语言程序设计第二章课后参考答案

第二章:C程序的基本结构 一、单项选择题 1、以下不是C语言的特点的是________。 A)语言的表达能力强B)语言定义严格 C)数据结构系统化 D)控制流程结构化 2、TC编译系统提供了对C程序的编辑、编译、连接和运行环境,以下可以不在该环境下进行的环节是________。 A)编辑和编译 B)编译和连接 C)连接和运行D)编辑和运行 3、以下不是二进制代码文件是________。 A)标准库文件 B)目标文件C)源程序文件 D)可执行文件 4、下面个选项组中,均属于C语言关键字的一组是________。 A)auto,enum,include B)switch,typedef,continue C)signed,union,scanf D)if,struct,type 5、下面四组字符串中,都可以用作C语言标识符的是________。 A)print B)I \am C)signed D)if _maf scanf 3mf ty_pr mx_2d mx_ a.f x1# aMb6 AMB A&B 5XY 6、以下不属于流程控制语句的是_________。 A)表达式语句 B)选择语句 C)循环语句 D)转移语句 7、下面描述中,不正确的是________。 A)C语言的函数体由一系列语句和注释组成。 B)注释内容不能单独写在一行上。 C)C程序的函数说明部分包括对函数名、函数类型、形式参数等的定义和说明。 D)scanf和printf是标准库函数而不是输入和输出语句。 8、下面描述中,正确的是________。 A)主函数的花括号必须有,而子函数中的花括号是可有可无的。 B)一个C程序行只能写一个语句。 C)主函数是程序启动时的唯一入口。 D)函数体包含了函数说明部分。 二、填空题 1、一个完整的C程序至少要有一个________函数。(主函数) 2、标准库函数不是C语言本身的组成部分,它是由__________提供的功能函数。(编译系统) 3、C语言是以________为基本单位、整个程序由________组成。(函数函数) 4、常用的标准库函数有数学函数、字符函数和字符串函数、动态分配函数、随机函数和________函数等几个大类。(输入输出) 5、标准库函数存放在________文件中。(函数库) 6、目标程序文件的扩展名是________。(.obj) 7、程序连接过程是将目标程序、________或其它目标程序连接装配成可执行文件。(库函数) 8、因为源程序是________类型文件,所以用具有文本编辑功能的任何编辑软件程序完成编辑。(文本)

数据库课设报告模板

第1章系统功能概述 1.1系统任务 理发店人员复杂,员工的工资也很难算清楚。利用计算机管理就容易得多。顾客来理发,由某个理发师接手。顾客的花销按各种服务名目收费,比如“剪发”,“吹风”,“做型”,“离子烫”,“波峰烫”,“麻辣烫”等。必须提供复杂的查询功能,包括: ●按员工统计本月接手的总金额。 ●按服务类别统计本月的收入金额。 ●按日期统计每天的收入总额,并形成条形统计图。 ●查询本月顾客人数和收入金额最高的5天和最低的5天。 1.2系统目标 1.能够快速地管理和查询所有理发师收入信息。 2.能够高效地进行理发管理。 3.能够进行结算管理,避免人为计算或操作失误。 4.能够正确的生成收入统计图 5.减轻登记、收银人员的工作任务。 第2章数据库设计 2.1 需求分析 本系统用于理发店的管理,用户指定为管理者自己,输入用户名,登录密码即可进入对本管理系统进行管理应用 (1)登录系统 在系统运行欢迎界面后即可进入登陆界面,在进入登陆界面后输入用户名和密码,正确即可进入主窗体界面进行操作,如果密码错误则提示错误。 (2)理发管理 数据包括:理发师编号,服务项目,收入金额,收入统计,服务日期等信息。

(3)统计管理 统计总收入情况,建立统计图 操作要求:可以按条件进行信息的查询,得到各自的收入金额。(4)排名系统 查询本月顾客人数和收入金额最高的5天和最低的5天 2.2 E-R模型 理发店管理系统E-R模型如图2-1所示。 图2-1理发店管理系统E-R模型 2.3 关系模型 理发店管理系统关系模型如图2-2所示。 图2-2理发店管理系统关系模型

2.4 表结构设计 1.管理员表用于记录管理员姓名和密码,如图2-3所示。 图2-3管理员表 2.理发师表用于记录理发师理发项目,如图2-4所示。 图2-4理发师表 3.收入表用与记录理发店当日各项收入,如图2-5所示。 图2-5收入表 4.收入统计用于统计本月收入金额最高的5天和最低的5天,如图2-6所示。

C语言课程设计销售管理系统

C语言课程设计 题目 指导教师 学生姓名 学号 专业 教学单位

目录 1设计内容与设计要求 (1) 1.1系统功能简介 (1) 1.2系统运行环境 (1) 2功能划分,模块详细说明 (1) 3程序流程图 (1) 4运行的运行及说明 (2) 4.1系统的运行 (2) 4.2运行说明 (4) 5总结 (5) 附件:源程序清单 (5)

1设计内容与设计要求 1.1系统功能简介 ?系统有简单的菜单界面,用户可以通过输入简单的选项来完成 相应的工作。 ?选定一种产品,按销售额的顺序对销售员进行排序,输出排序结果。 ?统计每种产品的总销售额,输出排序结果。 ?输出统计报表。 1.2系统运行环境 Vc++6.0下运行,硬件基本无要求,现在的计算机系统基本都可以运行该系统。 2功能划分,模块详细说明 系统的功能是通过子函数调用的方式来完成的,下面对程序中用到的函数及其功能做一下说明。 ●void menu():显示主菜单界面。 ●void data_count(data *x):以写方式打开文件,对商品信息清零,读 入职工编号、产品编号、销售量等信息,对相同职工的相同产品的销售量求和后写入文件。 ●void range_sxy(data *x):以读方式打开文件,读入信息,输入按何种 产品排序后对存储职工编号的数组进行排序,最后输出新序的职工编号信息。 ●void range_shangpin(data *x):从文件读入信息,对每项产品的销售 量求和,按每项产品的总销售量排序。 ●void data_out(data *x):打开文件,读入信息,求所有产品的销售量 的和,输出统计表。 ●void main():主函数,调用以上函数,完成相应功能。 3程序流程图 程序整体流程图如图3-1所示:

SQLserver数据库课程设计范例

1 概述 1.1课题简介 书店书目书种繁多,来源多样,购买者众多,图书信息、供应商信息、客户信息、销售信息庞大,不易管理。因此,很有必要创建一个小型书店管理系统,以便于书店对图书的管理。1.2设计目的 应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。 数据库应用课程实践:实践和巩固在课堂教学中学习有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。 数据库原理软件设计实践:实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。 1.3设计内容 运用基于E-R 模型的数据库设计方法和关系规范化理论做指导完成从系统的分析到设计直至系统的最终实现,开发小型书店管理系统,完成小型书店管理系统的全部功能。 首先做好需求分析,并完成数据流图和数据字典。 其次做概念分析,利用实体联系的方法将需求分析的用户需求抽象为信息结构,得到E-R 图。然后就是逻辑结构设计,将E-R 图转换为计算机系统所支持的逻辑模型 2 需求分析 2.1功能分析 首先,建立一些基本表(尽可能满足3N),对大部分基本信息组合、存储;其次通过建立视图实现对冗余数据的有必要保留(查询并计算基本表属性得到新的作为视图属性)并实现对以下基本信息的显示。 图书信息:图书名称、订购数量、订购时间、订购单价、金额、出版社名称、作者名称;供应商名称等; 供应商信息:供应商名称、地址、电话,联系人; 客户信息:客户编号、名称、年龄、性别、累计购书金额等; 销售信息:时间、销售名称、数量、销售单价、客户编号、客户名称、金额等。 在此基础上进行以下目标查询,由于有些查询常用且较复杂,为了简化其应用,所以将它们定义

C语言-人事管理系统

人事管理管理系统 [要求] 某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。 (1)添加删除功能:能根据学院人事的变动情况,添加删除记录; (2)查询功能:能根据编号和姓名进行查询; (3)编辑功能(高级):根据查询对相应的记录进行修改,并存储; (4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计要求同时显示被统计者的信息; (5)排序功能:按照年龄、来院时间进行排序; (6)保存功能:能对输入的数据进行相应的存储; 一、需求分析: 根据题目要求,职工信息是存放在文件中的,所以应该提供相应的文件的输入输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程序实现相应的操作,另外菜单式的选择方式选择程序的功能也是必须需的。另外程序中要求存储的模块,采用的方式均为将原文件中的所有数据读入内存,在内存中处理之后以覆盖的方式写入文件中重新储存,这样的方法容易理解、容易编写,但当文件中的数据量很大时,这种方法也存在一定的难度,在本程序中将N定为100,也即最多可储存的职工人数为100; 二、总体设计: 根据以上需求分析,将程序分成以下几个模块: 1、新建档案信息; 2、删除信息; 3、追加信息; 4、搜索查找信息(按姓名或者编号搜索); 5、浏览全部信息; 6、修改信息; 7、信息排序; 8信息统计; 三、详细设计; 1、主函数: 〈1〉需求分析: 为使系统执行完每部分功能后能够方便的回到系统主界面,main()函数设计的 很简单,只包含一个menu()函数,其余的全部功能都通过menu()函数调用来实现,并通过menu()函数的递归调用实现返回主界面的功能。

数据库课程设计报告

《数据库类课程设计》 系统开发报告 学号:__________ 111007133 _____________ 姓名:_____________ 邢小迪 __________________ 题目企业员工薪资管理___________ 指导教师:__________ 王红梅 _________________ 提交时间:2013年6月01日_______________

计算机科学与应用系

目录 一绪论 二员工薪资管理系统概述?1 现状分析?I 系统目标?2 系统特点?3 三员工薪资管理系统数据库设计?3 需求分析3 数据库物理结构分析4 数据库概念结构设计6 数据库逻辑结构设计?9 四员工薪资管理系统数据库功能模块的创建12五总结21 体会21 参考文献22

一绪论 随着计算机技术的飞速发展和经济体制改革的不断深入,传统企业管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成员工工资管理工作。提高公司企业管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识。基于SQL server 数据库技术建立一个通用工资管理系统,该系统为提供了查询、增加记录、删除等功能,功能比较的齐全,并对工资进行了统计如津贴管理、报表统计等。基本上能满足管理员和公司的要求。 此次数据库课程设计的主要设计如下:原理分析、程序设计过程、程序实现和程序调试以及数据库的设计。 需求分析、概要结构设计、逻辑结构设计、物理结构设计和数据库的实施和维护。 二员工薪资管理系统概述 1、现状分析 随着企业人员数量增加,企业的工资管理工作也变得越来越复杂。早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。早期工资管理多采取纸质材料和具有较强的时间限制。随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率,这些都在很大程度上给企业提出越来越严峻的挑战,

C语言程序设计销售管理系统

C语言程序设计销售管理 系统 The latest revision on November 22, 2020

销售信息管理系统设计文档 组号:第二组 成员:汪品高齐瑞智欧阳鑫赵飞锋章森 目录 一.题目与要求 二.功能实现设计(模块化设计)三.运行结果(附带抓图)四.源程序

报告正文 1、题目与要求: 2、某公司有四个销售员(编号:1-4),负责销售五种产品(编号:1-5)。每个销售员汇总当天出售的每种产品的销售情况。 2 每天销售情况包括(销售员的代号、产品的代号、这种产品当天的销售额) 1、编写一个销售信息管理系统,读取上个月的销售情况 1、计算上个月没人每种产品的销售额 2、按销售额对销售员进行排序,输出排序结果(销售员代号) 3、统计每种产品的总销售额,对这些产品从高到低的顺序输出结果 (须输出产品的代号和销售额) 4、输出统计报表 2、需求分析 本程序将用到文件系统,其中单行内容代表一张纸条。程序运行后首先将文件系统的原始数据读取并保存到程序的结构体数组当中,所以应提供文件输入的操作;由于纸条数据零散,所以要对原始数据进行分类操作并提供一个数组用于保存分类信息;在程序中要进行统计工作,所以要提供显示、排序等操作;另外应提供键盘式选择菜单实现功能选择。 3、功能实现设计 总体设计

根据上面的分析,可以将这个系统分为如下五大模块:查看每人每种产品的销售额、按销售额对销售员排序、对每种产品总销售额从高到低排序、输出统计报表和退出。其中主要模块是前四个模块。 流程图 详细设计: #include<> #include<> #include<> #include<> #define M 【功能函数声明】 vvoid detail(); void foreach(); void menu(); void product(); void readdata(); void seller(); void total(); void choice(); 【数据结构】 原始数据有销售员代号、产品代号和销售额,所以定义一个全局结构体数组scrip用于保存原始数据。然后定义全局变量n保存纸条数目,定义数组s用于保存分类后的信息。 struct ss { int sid; id,&ss[n].pid,&ss[n].sn); } id)

高校人事管理系统C++代码

#include #include #includepowered by https://www.360docs.net/doc/8116793971.html, #include using namespace std; class employee { protected: int number; char name[20]; char sex[6]; char workplace[20]; char place[20]; char nation[6]; char birth[20]; char party[10]; char id[20]; float score[5]; public: Employee *nest; Employee(){} ~Employee(){} char* getname(){ return name; } int getnumber(){ return number; } double getscore(int i){ return score[i];} float get(){ return(score[0]+ score[1]+ score[2]+ score[3]+ score[4]);} void input() { int e=1; cout<<“\t\t\t按提示输入 :”<>workplace ; do { cout<< “\t\t输入性别 :” ; cin>>sex ; if(strcmp(sex,“man”)==0 || strcmp(sex,“woman”)==0) { cout<<“\t\t输入籍贯:”; cin >>place; cout<<“\t\t输入民族:”; cin >>nation;

C语言详解(第五版)第二章程序设计项目答案

C语言详解(第五版)程序设计项目答案第二章 1.编写一个程序,以每英里0.35的费率计算一个售货员的里程偿还金。程序中要求与用户进行如下方式的交互。 #include #include int main(void) {float mile_1,mile_2,miles,consume,payment; printf("MILEAGE REIMBURSEMENT CALCULATOR\n"); printf("Enter begainning odometer reading>\n"); scanf("%f",&mile_1); printf("Enter endding odometer reading>\n"); scanf("%f",&mile_2); printf("Enter consume per mile>\n"); scanf("%f",&consume); miles=mile_2-mile_1; payment=miles*consume; printf("You traveled%f miles.At%f per mile,your reimbursement is%f",miles,consume,payment); system("pause"); return(0); } 2.编写一个程序,用于辅助设计水力发电大坝。提示用户输入大坝高度,以及水流量。如果水由重力所做的功有90%转化为电能,测算会有多少M瓦的功率。 #include #include int main(void) {double density,weight,gravitational_acceleration, efficiency,height,water_flow_rate,work,electricity_power; printf("Please type in the density of water>"); scanf("%lf",&density); printf("Please type in the gravitational_acceleration>"); scanf("%lf",&gravitational_acceleration); printf("Please type in the height of the water>"); scanf("%lf",&height); printf("Please type in the efficiency of the transformation\nfrom water to electricity>"); scanf("%lf",&efficiency); printf("Please type in the water_flow_rate>"); scanf("%lf",&water_flow_rate); weight=density*water_flow_rate; work=weight*height*gravitational_acceleration; electricity_power=work*efficiency/1000000; printf("The electric energy production is%fW",electricity_power); system("pause"); return0; }

奥鹏大工19秋《SQL数据库课程设计》模板及要求

答案+我名字 学习中心: 专业: 年级:年春/秋季 学号: 学生: 题目: 1.谈谈你对本课程学习过程中的心得体会与建议? 2.严格按照《SQL数据库课程设计要求》完成课程设计。 《SQL数据库课程设计》要求 《SQL数据库课程设计》是大连理工大学网络教育学院计算机应用技术专业开展的一项实践教学环节,是理论联系实践的纽带和桥梁,是培养学生综合运用所学知识解决实际问题的有效手段。该课程设计要求如下: 1.要求学生以SQL Server 2008或其他版本为后台数据库,以VB、VC或其他开发工具作为前台开发工具,围绕自己选定的某一个具体的系统完成一个小型数据库应用系统的开发,例如《图书管理系统的设计与实现》《书店管理系统的设计与实现》等。其课程设计具体内容包括项目概况、需求分析、详细设计等。 2.要求学生必须撰写题目及心得体会,按照《SQL数据库课程设计模板》提供的格式和内容进行课程设计,完成课程设计模板提供的全部课程设计内容,字数要求达到3000字以上。

3.学生在进行课程设计的过程中,可参考辅导教师在导学资料中上传的文献资料,有问题可通过课程论坛答疑。 4.学生提交本课程设计形式 学生需要以WORD附件形式(附件的大小限制在10M以内)将完成的课程设计以“离线作业”形式上传至课程平台中的“离线作业”模块,通过选择已完成的课程设计,点“上交”即可,如下图所示。 5.课程设计批阅 老师会在离线作业关闭后集中批阅课程设计,在离线作业截止时间前不进行任何形式的批阅。 注意:本课程设计应该独立完成,不准抄袭他人或者请人代做,如有雷同作业,成绩以零分计。 下文为《SQL数据库课程设计模板》

C语言课程设计《商品销售管理系统》

商品销售管理系统 目录 一、需求分析 (2) 二、概要设计 (2) 三、详细设计 (4) 四、调试分析 (14) 五、用户手册 (14) 六、测试数据 (15) 七、附录 (18)

—1— 一、需求分析 商品销售管理程序 商品信息:商品编号、商品名称、商品类别(普通电视机、DVD、带DVD 的电视机,带DVD的电视机的售价为普通电视机和DVD单价之和的80%)、商品进货价格、商品销售价格、商品数量、供应商名称等。 记录每一次销售商品的数量和价格,并提供对已售出商品的价格、数量进行统计、排序功能,但允许用户退商品。 (要求:1.源文件采用多文件的工程结构2.数据存储采用文件形式3.标准的C 输入输出4.功能完善,适当的注释,5.关于文件的内容需要自学) 二、概要设计 (一)按系统分析的功能要求将系统划分为以下几个主要功能模块: 1、文件管理 文件打开、关闭:对于刚输入或进行操作后的商品信息,在建立新的商品库存量后,可以把其保存在一个文件中,并对该文件可进行打开和关闭操作。 2、进出货管理 (1)商品进货: 输入数据后商品信息能自动更新进行添加 (2)商品销售: 输入数据后商品信息能自动更新进行减少 3、商品数据管理 (1)增加/删除商品: 添加或删除某条商品的信息 (2)修改商品信息: 对某条商品的信息进行修改 4、浏览商品信息管理 (1)查询商品信息:可分别按商品编号、名称、类别或需要进货商品查询 (2)排序商品信息: 可按商品编号、名称、类别分别排排序 (3)浏览商品信息:可浏览输入、查询或排序后的数据。 (二)本程序结构 (1)结构体设计 struct goods { long int num; char name[20]; char sort[20]; long int count; long int price; }goods[200]; (2)各功能函数设计:

完整word版,数据库课程设计总结,推荐文档

数据库课程设计总结 数据库课程设计个人总结 姓名:邢王秀学号:201624101215 班级:09计本班 一个月的时间非常快就过去了,这一个月我不敢说自 己有多大的进步,获得了多少知识,但起码是了解了项目开 发的部分过程。虽说上过数据库相关的课程,但是没有亲身 经历过相关的设计工作细节。这次课程设计给我提供了一个 很好的机会。 通过这次课程设计发现这其中需要的很多知识我们没 有接触过,上网查找资料的时候发现我们以前所学到的仅仅 是皮毛,还有很多需要我们掌握的东西我们根本不知道。同 时也发现有很多已经学过的东西我们没有理解到位,不能灵 活运用于实际,不能很好的用来解决问题,这就需要自己不 断的大量的实践,通过不断的自学,不断地发现问题,思考 问题,进而解决问题。在这个过程中我们将深刻理解所学知 识,同时也可以学到不少很实用的东西。 这次的数据库课程设计,我们组负责的企业信息文档 管理系统的设计。这课题是自拟的。我们组实行的分工合作。我主要是负责数据库功能模块设计这部分。 从各种文档的阅读到需求分析、概要设计、数据库总 体设计、代码编写与调试,我们都准备了好长时间。组内分

工合作的整个过程,我亲身体验了一回系统的设计开发过 程,分工合作的好处。很多东西书上写的很清楚,貌似看着 也很简单,思路非常清晰。但真正需要自己想办法去设计一 个系统的时候才发现其中的难度。经常做到后面突 然就发现自己一开始的设计有问题,然后又回去翻工, 在各种反复中不断完善自己的想法。 我想有这样的问题不止我一个,事后想想是一开始着 手做的时候下手过于轻快,或者说是根本不了解自己要做的 这个系统是给谁用的。因为没有事先做过仔细的用户调查, 不知道整个业务的流程,也不知道用户需要什么功能就忙着 开发,这是作为设计开发人员需要特别警惕避免的,不然会 给后来的工作带来很大的麻烦,甚至可能会需要全盘推倒重 来。所以以后的课程设计要特别注意这一块的设计。 经过组内讨论,我们确定的课题是企业信息文档管理 系统。说实话,我对这个系统不是很了解。通过上网查找资 料、相关文献的阅读,我对该系统有了大体的了解。 在需求分析过程中,我们通过上网查资料,去图书馆 查阅相关资料,结合我们的生活经验,根据可行性研究的结 果和用户的需要,分析现有情况及问题。在一个月的时间里,不断地对程序及各模块进行修改、编译、调试、运行,其间 遇到很多问题,经过组内讨论。最终把它解决了。通过这次 课程设计,我对数据库的设计更加熟练了。

C语言课设之人事管理系统之欧阳家百创编

C语言课程设计 欧阳家百(2021.03.07) ——人事管理系统题目要求: 人事管理管理系统 [要求] 某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。 (1)添加删除功能:能根据学院人事的变动情况,添加删除记录; (2)查询功能:能根据编号和姓名进行查询; (3)编辑功能(高级):根据查询对相应的记录进行修改,并存储; (4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计要求同时显示被统计者的信息;(5)排序功能:按照年龄、来院时间进行排序; (6)保存功能:能对输入的数据进行相应的存储; 一、需求分析: 根据题目要求,职工信息是存放在文件中的,所以应该提供相应的文件的输入输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程序实现相应的操作,另外菜单式的选择方式选择程序的功能也是必须需的。另外程序中要求存储的模块,采用的方式均为将原文件中的所有数据读入内存,在内存中处理之后以覆盖的方式写入文件存贮,这样的方法在一定程度上提高了对数据处理的灵活性,较容易理解,但存在处理中遇到以外情况而丢失数据的风险,另外当文件中的数据量很大时,这种方法也存在一定的难度,在本程序中将N定为100,基本上能满足要求; 二、总体设计: 根据以上需求分析,将程序分成以下几个模块: 1、新建数据文件(build new data); 2、添加记录(add data);

C语言程序设计学习指导(第2版) 1-6

第一章概述 一、选择 1.C 2.B 3.C 4.D 5.D 6.A 7.B 8.C 9.A 10.B 11.C 12.D 13.B 14.B 第二章数据类型 一、选择 1.D 2.A 3.C 4.D 5.A 6.B 7.A 8.B 9.A 10.D 11.B 12.C 13.C 14.D 15.C 16.B 17.D 18.A 19.C 20.B 21.B 22.D 23.A 24.B 25.B 26.B 27.C 第三章运算符和表达式 一、选择 1.A 2.D 3.D 4.D 5.D 6.A 7.C 8.C 9.B 10.B 11.C 12.C 13.A 14.A 15.A 16.A 17.B 18.C 19.C 20.D 21.A 22.A 23.C 24.C 25.A 26.B 27.D 28.A 29.B 30.C 31.D 32.D 33.D 34.B 35.A 36.A 37.B 38.C 39.D 40.B 41.B 42.C 43.B 第四章输入和输出 一、选择 1.C 2.D 3.C 4.C 5.C 6.B 7.B 8.C 9.D 10.D 11.D 12.D 13.B 14.A 15.B 16.B 二、编程 1.double fun(double m) { float n; n=(5.0/9.0)*(m-32); return n; } 2. char fun(char c) {c=c+32; return c;} 3.double fun(int m) { double y=0; y=sin(m)*10; return(y); } 4.float fun ( float h ) {return (long)( h * 100 + 0.5 )/ 100.0;}

大工19春《SQL数据库课程设计》模板及要求辅导答案

《数据库课程设计》 题目:电子书城系统的设计与实现 学习中心: XX 专业: XX 年级:年春/秋季 学号: XX 学生: XX

一、谈谈你对本课程学习过程中的心得体会与建议? 答:转眼间,学习了一个学期的计算机操作系统课程即将结束。 在这个学期中,通过老师的悉心教导,让我深切地体会到了计算机操作系统的一些原理和具体操作过程。在学习操作系统之前,我只是很肤浅地认为操作系统只是单纯地讲一些关于计算机方面的操作应用,并不了解其中的具体操作过程和实用性。通过这一学期的学习,我才知道操作系统(Operating System,简称OS)是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。 正是由于这门课和以前关系不大,很多知识也从未接触过,因此对于这门课的学习方法就是:理论课上认真听老师讲理论知识,上机课上仔细看老师的演示过程、在电脑上按照老师的演示步骤自己做,遇到自己无法做出来的过程(步骤)请教老师或者同学。 建议:学校除了安排学生要上的SQL教学的理论课之外,还应安排适当节数的实验课,最好是理论课和实验课在一周上,这样同学们更能高效快速的记住所学知识,实验课上教师可以给每位同学分配一个小的系统让他们去做,或者是找一个项目案例先让同学们自己研究,然后教师再和同学们一起分析探讨,这样就能更好的理解和掌握SQL语句。 增强同学们之间的交流,同班同学之间肯定对知识的掌握程度不一样,在课堂上适当的增加学生之间的交流,严格要求他们课下也要多交流,这样通过交流取长补短,学生之间的差距就会缩小。 二、 1 项目概况 本章需简单介绍具体使用的哪个版本SQL数据库,选用的前台开发工具以及自己所设计的具体什么系统。 2.1 SQL 数据库简介 SQL Server 是一个具备完全 Web 支持的数据库产品,提供了对可扩展标记 1

数据库课程设计题目16个经典实例学习资料.doc

数据库课程设计题目16个经典实例 1.机票预定信息系统 系统功能的基本要求: 航班基本信息的录入,包括航班的编号、飞机名称、机舱等级等。机票信息,包括票价、折扣、当前预售状态及经手业务员等。客户基本信息,包括姓名、联系方式、证件及号码、付款情况等。按照一定条件查询、统计符合条件的航班、机票等;对结果打印输出。 2.长途汽车信息管理系统 系统功能的基本要求: 线路信息,包括出发地、目的地、出发时间、所需时间等。汽车信息:包括汽车的种类及相应的票价、最大载客量等。票价信息:包括售票情况、查询、打印相应的信息。 3.人事信息管理系统 系统功能基本要求: 员工各种信息:包括员工的基本信息,如编号、姓名、性别、学历、所属部门、毕业院校、健康情况、职称、职务、奖惩等;员工各种信息的修改;对转出、辞退、退休员工信息的删除;按照一定条件,查询、统计符合条件的员工信息;教师教学信息的录入:教师编号、姓名、课程编号、课程名称、课程时数、学分、课程性质等。科研信息的录入:教师编号、研究方向、课题研究情况、专利、论文及著作发表情况等。按条件查询、统计,结果打印输出。 4.超市会员管理系统 系统功能的基本要求: 加入会员的基本信息,包括:成为会员的基本条件、优惠政策、优惠时间等。会员的基本信息,包括姓名、性别、年龄、工作单位、联系方式等。会员购物信息:购买物品编号、物品名称、所属种类,数量,价格等。会员返利信息,包括会员积分的情况,享受优惠的等级等。对货物流量及消费人群进行统计输出。 5.客房管理系统 系统功能的基本要求: 客房各种信息,包括客房的类别、当前的状态、负责人等;客房信息的查询和修改,包括按房间号查询住宿情况、按客户信息查询房间状态等。以及退房、订房、换房等信息的修改。对查询、统计结果打印输出。 6.药品存销信息管理系统 系统功能基本要求 药品信息,包括药品编号、药品名称、生产厂家、生产日期、保质期、用途、价格、数量、经手人等;员工信息,包括员工编号、姓名、性别、年龄、学历、职务等;客户信息,包括客户编号、姓名、联系方式、购买时间、购买药品编号、名称、数量等。入库和出库信息,包括当前库存信息、药品存放位置、入库数量和出库数量的统计。

数据库课程设计格式要求

电气与信息工程学院 《数据库开发技术》课程设计 (宋体小四号空九行) 设计题目: 年级专业: 组长: 小组成员: 指导教师: 完成日期:2011年6月10日

题目 摘要: 摘要篇幅以一页为限,字数为300以内。 摘要正文后,列出3-5个关键词。“关键词:”是关键词部分的引导,不可省略。 关键词请尽量用《汉语主题词表》等词表提供的规范词。最后不加标点符号。 关键词:写作规范;排版格式;课程设计 ,

1.1 论文格式基本要求 (1) 1.2 论文页眉页脚的编排 (1) 1.3 论文正文格式 (2) 1.4 章节标题格式 (2) 1.5 各章之间的分隔符设置 (2) 1.6 正文中的编号 (3) 2 图表及公式的格式说明 (4) 2.1 图的格式说明 (4) 2.1.1 图的格式示例 (4) 2.1.2 图的格式描述 (5) 2.2 表的格式说明 (5) 2.2.1 表的格式示例 (5) 2.2.2 表的格式描述 (6) 2.3 参考文献的格式说明 (6) 2.3.1 参考文献在正文中引用的书写格式 (6) 2.3.2 参考文献的书写格式 (6) 3 打印说明 (8) 3.1 封面 (8) 3.2 中英文摘要 (8) 3.3 目录 (8) 3.4 正文 (8) 4 第4章题目(黑体,小三,1.5倍行距,段后1行) (9) 4.1 第一节题目(黑体,四号,1.5倍行距,段前0.5行) (9) 4.1.1 第一节一级题目(黑体,小四,1.5倍行距,段前0.5行) (9) 结论 (10) 参考文献 (11) 致谢.................................................................................................. 错误!未定义书签。

c语言销售管理系统

课程设计说明书 学院、系: 专业: 学生姓名:学号: 销售管理系统 设计题目: 起迄日期: 指导教师: 日期: 2017年5月12日

1 设计目的 1.了解管理信息系统的开发流程,熟悉C语言的文件和结构数组的各种基本操作。 2.握高级程序设计语言的知识。 3.践中逐步掌握程序设计的思想和方法,培养问题求解和语言的应用能力。 4.程序中涉及结构体、数组、文件等方面的知识。通过本程序的训练,能对C语言 的文件操作有一个更深刻的了解。 5.提高与程序设计和软件开发有关的各种综合能力。 6.通过本课程设计,培养上机动手能力,巩固《C语言程序设计》课程学习的内容,掌握工程软件设计的基本方法,强化上机动手能力,闯过编程关; 7.为后续各门计算机课程的学习打下坚实基础; 8.学会用c语言程序设计来设计销售管理系统设计。 2 任务概述 某公司有四个销售员(编号:1-4),负责销售五种产品(编号:1-5)。每个销售员都将当天出售的每种产品各写一张便条交上来。每张便条包含内容:1)销售员的代号,2)产品的代号,3)这种产品的当天的销售额。每位销售员每天上缴1张便条。 试设计一个便条管理系统,使之能提供以下功能: 1、系统以菜单方式工作 2、便条信息录入功能(便条信息用文件保存)--输入 3、收集到了上个月的所有便条后,读取销售情况 1)计算每个人每种产品的销售额。 2)按销售额对销售员进行排序,输出排序结果(销售员代号) 3)统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果 4)输出统计报表 3 模块划分 主菜单及头文件设计 编辑系统菜单运行 输入信息 保存信息,参数为结构体数组和记录数 读入取函数,参数为结构体数组 清单输出 主要功能的实现 4 主要函数说明及其N-S图

数据库课程设计(完整版)

HUNAN CITY UNIVERSITY 数据库系统课程设计 设计题目:宿舍管理信息系统 姓名: 学号: 专业:信息与计算科学 指导教师: 20年 12月1日

目录 引言 3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要 5 1.4软件处理对象 6 1.5系统可行性分析 6 1.6系统设计目标及意义7 1.7系统业务流程及具体功能 7 1.8.1数据流程图8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20参考文献 20

引言 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备修改功能,能够快速的查询学校所需的住宿信息。 面对目前学校发展的实际状况,我们通过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。

C语言课程设计-人事管理系统

C语言课程设计 ——人事管理系统

题目要求: 人事管理管理系统 [要求] 某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。 (1)添加删除功能:能根据学院人事的变动情况,添加删除记录; (2)查询功能:能根据编号和姓名进行查询; (3)编辑功能(高级):根据查询对相应的记录进行修改,并存储; (4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计要求同时显示被统计者的信息; (5)排序功能:按照年龄、来院时间进行排序; (6)保存功能:能对输入的数据进行相应的存储; 一、需求分析: 根据题目要求,职工信息是存放在文件中的,所以应该提供相应的文件的输入输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程序实现相应的操作,另外菜单式的选择方式选择程序的功能也是必须需的。另外程序中要求存储的模块,采用的方式均为将原文件中的所有数据读入内存,在内存中处理之后以覆盖的方式写入文件存贮,这样的方法在一定程度上提高了对数据处理的灵活性,较容易理解,但存在处理中遇到以外情况而丢失数据的风险,另外当文件中的数据量很大时,这种方法也存在一定的难度,在本程序中将N定为100,基本上能满足要求; 二、总体设计: 根据以上需求分析,将程序分成以下几个模块: 1、新建数据文件(build new data); 2、添加记录(add data); 3、删除记录(delete data); 4、按工号搜索(search by number); 5、按姓名搜索(search by name); 6、浏览全部数据(browse all); 7、修改数据(modify the data); 8、排序功能(order the volume); 9、统计功能(data a volume); 系统功能模块图如下:

相关文档
最新文档