c语言程序设计Word格式.docx

上传人:b****8 文档编号:22828532 上传时间:2023-02-05 格式:DOCX 页数:15 大小:17.68KB
下载 相关 举报
c语言程序设计Word格式.docx_第1页
第1页 / 共15页
c语言程序设计Word格式.docx_第2页
第2页 / 共15页
c语言程序设计Word格式.docx_第3页
第3页 / 共15页
c语言程序设计Word格式.docx_第4页
第4页 / 共15页
c语言程序设计Word格式.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

c语言程序设计Word格式.docx

《c语言程序设计Word格式.docx》由会员分享,可在线阅读,更多相关《c语言程序设计Word格式.docx(15页珍藏版)》请在冰豆网上搜索。

c语言程序设计Word格式.docx

(3)请老师检查,向老师演练此程序,并能回答老师提出的相关问题。

三、需求分析:

(1)根据职工信息管理的需要,建立一个“职工信息管理系统”,系统具有输入、查询、修改、删除、等基本功能;

以方便对职工信息的各项管理操作。

每一条记录包括一个职工的工号、姓名、性别,年龄,职位。

系统的各个功能模块都用函数的形式来实现;

可以将职工信息保存在文件中,并从文件中读取出来。

有一个清晰美观界面来调用各个功能。

(2)创建该职工信息管理系统目的就是能够对学生基本信息进行创建、追加、查询、修改、删除、等功能,这样可以简化许多人工做起来很复杂的问题。

譬如:

“排序”,有了此程序只需将信息输入,计算机就可自动执行,省时、省力。

另外,它还可以重复使用,方便、快捷。

四、概要设计

(1)主函数结构图:

#include<

stdlib.h>

string.h>

#defineMAX200

structemployee

{

charno[10];

//职工号

charname[15];

//姓名

charsex[10];

//性别

intage;

//年龄

intgongzi;

//工资

inttele;

//电话号码

charxueli[20];

//学历

charaddr[50];

//住址

};

structdata

intcount;

//当前职工数组中职工的个数

structemployeeem[MAX];

//职工数组

}dd;

voidmenu()

system("

cls"

);

printf("

\n"

\t\t\t****************\n"

\t\t\t**\n"

\t\t\t*职工信息管理系统*\n"

\t\t\t*0909-1*\n"

\t\t\t*[0]退出*\n"

\t\t\t*[1]查看职工信息*\n"

\t\t\t*[2]输入职工信息*\n"

\t\t\t*[3]删除职工信息*\n"

\t\t\t*[4]修改职工信息*\n"

\t\t\t*[5]按职工号查询职工信息*\n"

\t\t\t*[6]按学历查询职工信息*\n"

}

//等待用户按回车后回到主菜单

voidto_menu()

charc1,c2;

\n\n\n按回车键返回主菜单..."

scanf("

%c%c"

&

c1,&

c2);

menu();

//查看所有信息

voidview_data()

inti;

职工号\t姓名\t性别\t年龄\t工资\t电话\t学历\t住址"

\n-------------------------------------------------------------------\n"

for(i=0;

i<

dd.count;

i++)

printf("

%s\t%s\t%s\t%d\t%d\t%d\t%s\t%s\n"

dd.em[i].no,dd.em[i].name,dd.em[i].sex,dd.em[i].age,dd.em[i].gongzi,dd.em[i].tele,dd.em[i].xueli,dd.em[i].addr);

//将数据从结构体数组保存到文件中

voidsave_data()

FILE*fp;

inti,k;

k=dd.count;

fp=fopen("

c:

/dada.txt"

"

w"

fwrite(&

k,sizeof(int),1,fp);

k;

fwrite(&

dd.em[i],sizeof(structemployee),1,fp);

fclose(fp);

//输入记录

voidadd_data()

structemployeeemp;

intb;

intk;

inti,j;

while

(1)

{

j=0;

\n请输入职工信息:

"

\n职工号\t姓名\t性别\t年龄\t工资\t电话\t学历\t住址"

\n---------------------------------------------------------------\n"

scanf("

%s%s%s%d%d%d%s%s"

emp.no,&

emp.name,&

emp.sex,&

emp.age,&

emp.gongzi,&

emp.tele,&

emp.xueli,&

emp.addr);

for(i=0;

{

if(strcmp(dd.em[i].no,emp.no)==0)

printf("

\n输入职工号重复,请重新输入!

j=1;

break;

}

if(j==1)

continue;

if(j==0)

{

strcpy(dd.em[k].no,emp.no);

strcpy(dd.em[k].name,emp.name);

strcpy(dd.em[k].sex,emp.sex);

dd.em[k].age=emp.age;

dd.em[k].gongzi=emp.gongzi;

dd.em[k].tele=emp.tele;

strcpy(dd.em[k].xueli,emp.xueli);

strcpy(dd.em[k].addr,emp.addr);

dd.count++;

}

\n\n继续添加职工信息[1-yes0-no]:

%d"

b);

if(b==0)break;

save_data();

//将数据从文件读到结构体数组中

voidread_data()

k=0;

if(access("

0)==-1)//如果文件不存在

fp=fopen("

fclose(fp);

r"

fread(&

dd.count=k;

fread(&

emp,sizeof(structemployee),1,fp);

strcpy(dd.em[i].no,emp.no);

strcpy(dd.em[i].name,emp.name);

strcpy(dd.em[i].sex,emp.sex);

dd.em[i].age=emp.age;

dd.em[i].gongzi=emp.gongzi;

dd.em[i].tele=emp.tele;

strcpy(dd.em[i].xueli,emp.xueli);

strcpy(dd.em[i].addr,emp.addr);

voiddelete_data()

\n请输入要删除职工号:

%s"

no);

k=-1;

if(strcmp(dd.em[i].no,no)==0)

k=i;

break;

if(k==-1)

\n\n没有找到该职工(职工号-%s)!

no);

else

for(i=k;

dd.count-1;

strcpy(dd.em[i].no,dd.em[i+1].no);

strcpy(dd.em[i].name,dd.em[i+1].name);

strcpy(dd.em[i].sex,dd.em[i+1].sex);

dd.em[i].age=dd.em[i+1].age;

dd.em[i].gongzi=dd.em[i+1].gongzi;

dd.em[i].tele=dd.em[i+1].tele;

strcpy(dd.em[i].xueli,dd.em[i+1].xueli);

strcpy(dd.em[i].addr,dd.em[i+1].addr);

}

dd.count--;

save_data();

\n\n删除(职工号-%s)成功!

//修改职工记录

voidedit_data()

inti,k,age=0,gongzi=0,tele=0;

charno[10],name[15],sex[10],addr[50],xueli[20];

\n请输入要修改职工的职工号:

\n请输入职工数据:

\n姓名\t性别\t年龄\t工资\t电话\t学历\t住址"

\n--------------------------------------------------------------------\n"

%s%s%d%d%d%s%s"

name,&

sex,&

age,&

gongzi,&

tele,&

xueli,&

addr);

strcpy(dd.em[k].no,no);

strcpy(dd.em[k].name,name);

strcpy(dd.em[k].sex,sex);

dd.em[k].age=age;

dd.em[k].gongzi=gongzi;

dd.em[k].tele=tele;

strcpy(dd.em[k].xueli,xueli);

strcpy(dd.em[k].addr,addr);

\n\n修改职工记录(职工号-%s)成功!

//查询(职工号)

voidquery_data_no()

\n请输入要查询的职工号:

if(k==0)

{

printf("

\n-----------------------------------------------------------------\n"

}

//查询(学历)

voidquery_data_xueli()

\n请输入要查询的职工学历:

xueli);

if(strcmp(dd.em[i].xueli,xueli)==0)

\n\n没有找到该职工(学历-%s)!

xueli);

//主函数

voidmain()

intfun;

read_data();

请输入功能号[0-6]:

fun);

switch(fun)

case0:

break;

case1:

view_data();

case2:

add_data();

case3:

delete_data();

case4:

edit_data();

case5:

query_data_no();

case6:

query_data_xueli();

if(fun==0)break;

to_menu();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1