ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:102.60KB ,
资源ID:8666177      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8666177.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言程序设计职工管理系统.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言程序设计职工管理系统.docx

1、C语言程序设计职工管理系统C语言程序设计大作业职工信息管理系统2012/1/1组内合作组长: 组内成员: C语言程序大作业报告1. 设计目的(需求分析)此程序的主要功能就是在用户输入一个目标文件名,在运行目录下建立相应的文件夹来储存职工信息,然后由用户输入职工信息,之后支持职工信息的新建添加、查询、修改、删除、显示输出的功能。2. 总体设计(流程图)开始用户输入文件名建立文件夹用户输入职工信息用户输入功能选项120退出结束5输出用户输入添加职工信息输入要查找的职工名有?是否输出信息输出提示3. 详细设计主函数中运用的函数及其功能:creat(); 建立文件夹;由用户输入文件名,在运行目录下建立

2、文件夹;Build(); 新添加信息;output(); 显示所有记录;search(); 职工信息信息查找;由用户输入要查找的职工名,进行查询;Delete(); 删除职工信息;Change(); 修改职工信息;输入职工名,找到后并修改,再把修改后的信息保存起来!用户输入新学生的信息;4. 调试与测试:程序的编写过程中,出现的主要问题是各个分函数的相互联系不能很好的处理;部分函数缺少参数;exe文件显示结构混乱;刚开始有点忙乱于文件的使用,后来在复习书本、网上查询、组员一起讨论,在经过多次修改后得以有所解决。5. 源程序清单和执行结果:#include#includestruct info

3、char name8; char num8; char tel15; char addr50;char filename20;FILE *fp;void creat();void output();void search();void build();void change();void delete();main() int m; printf( ); printf( -n); printf( 职工信息管理系统 n); printf( -n); creat(); while(1) printf( -n); printf( 职工信息管理系统 n); printf( |=|n); printf(

4、 | 1.职工信息的新建 |n); printf( | 2.职工信息的查询 |n); printf( | 3.职工信息的修改 |n); printf( | 4.职工信息的删除 |n); printf( | 5.职工信息的输出 |n); printf( | 0.退出职工信息管理系统 |n); printf( |=|n); printf( 请选择操作0-5 nn); scanf(%d,&m); if(m=0&m=5) switch(m) case 1: build();/*新建立*/ break; case 2: search();/*查询*/ break; case 3: change();/*

5、修改*/ break; case 4: delete();/*删除*/ break; case 5: output();/*输出*/ break; case 0: exit(); printf(nn操作完毕,请再次选择!); else printf(nn选择错误,请再次选择!); /*开始定义函数*/void creat()/*信息簿的建立及保存函数*/ struct info one; printf(n请输入职工信息簿名:); scanf(%s,filename); if(fp=fopen(filename,w)=NULL) printf(n不能建立信息簿!); exit(); fprint

6、f(fp,%-10s%-10s%-20s%-50sn,姓名,工号,电话号码,住址); printf(n请输入姓名、工号、电话号码及住址(相邻两信息之间用空格分开并以0结束)n); scanf(%s,one.name); while(strcmp(one.name,0) scanf(%s%s%s,one.num,one.tel,one.addr); fprintf(fp,%-10s%-10s%-20s%-50sn,one.name,one.num,one.tel,one.addr); scanf(%s,one.name); fclose(fp);void output()/*输出*/ struc

7、t info one; if(fp=fopen(filename,r)=NULL) printf(n不能打开信息簿!); exit(); printf(nn%20sn,职工信息簿); while(!feof(fp) fscanf(fp,%s%s%s%sn,one.name,one.num,one.tel,one.addr); printf(%-10s%-10s%-20s%-50s,one.name,one.num,one.tel,one.addr); fclose(fp);void build()/*新建并保存*/ struct info one; if(fp=fopen(filename,a

8、)=NULL) printf(n不能打开职工信息簿!); exit(); printf(n请输入添加的姓名、工号、电话号码及住址n); scanf(%s%s%s%s,one.name,one.num,one.tel,one.addr); fprintf(fp,%-10s%-10s%-20s%-50sn,one.name,one.num,one.tel,one.addr); fclose(fp);void search()/*查找信息*/ int k=0; char namekey8; struct info one; printf(n请输入姓名:); scanf(%s,namekey); if

9、(fp=fopen(filename,rb)=NULL) printf(n不能打开职工信息簿!); exit(); while(!feof(fp) fscanf(fp,%s%s%s%sn,one.name,one.num,one.tel,one.addr); if(!strcmp(namekey,one.name) printf(nn已查到,记录为:); printf(n%-10s%-10s%-18s%-50s,one.name,one.num,one.tel,one.addr); k=1; if(!k) printf(nn对不起,信息簿中没有此人的记录。); fclose(fp);void

10、change()/*找到并修改*/ int k=0; long offset; char namekey8; struct info one; printf(n请输入姓名:); scanf(%s,namekey); if(fp=fopen(filename,r+)=NULL) printf(n不能打开职工信息簿!); exit(); while(!feof(fp) offset=ftell(fp); fscanf(fp,%s%s%s%sn,one.name,one.num,one.tel,one.addr); if(!strcmp(namekey,one.name) k=1; break; i

11、f(k) printf(n已查到,记录为:); printf(n%-10s%-10s%-18s%-50s,one.name,one.num,one.tel,one.addr); printf(n请输入新姓名、工号、电话号码及住址:); scanf(%s%s%s%s,one.name,one.num,one.tel,one.addr); fseek(fp,offset,SEEK_SET); printf(%ld,ftell(fp); fprintf(fp,%-10s%-10s%-20s%-50sn,one.name,one.num,one.tel,one.addr); else printf(n

12、对不起,信息簿中没有此人的记录。); fclose(fp);void delete()/*找到并删除*/ int m,k=0; long offset1; char namekey8; struct info one; printf(n请输入姓名:); scanf(%s,namekey); if(fp=fopen(filename,r+)=NULL) printf(n不能打开职工信息簿!); exit(); while(!feof(fp) offset1=ftell(fp); fscanf(fp,%s%s%s%sn,one.name,one.num,one.tel,one.addr); if(

13、!strcmp(namekey,one.name) k=1; break; if(k) printf(n已查到,记录为); printf(n%-10s%-10s%-18s%-50s,one.name,one.num,one.tel,one.addr); printf(n确实要删除,按1;不删除,按0:); scanf(%d,&m); if(m) fseek(fp,offset1,SEEK_SET); fprintf(fp,%-10s%-10s%-20s%-50sn,); else printf(n对不起,信息簿中没有此人的记录。);fclose(fp);此系统由 - 职工信息管理系统 -请输入

14、职工信息簿名:职工信息簿1请输入姓名、工号、电话号码及住址(相邻两信息之间用空格分开并以0结束)城 00001 18 安康睿 00002 18 大理0 - 职工信息管理系统 |=| | 1.职工信息的新建 | | 2.职工信息的查询 | | 3.职工信息的修改 | | 4.职工信息的删除 | | 5.职工信息的输出 | | 0.退出职工信息管理系统 | |=| 请选择操作0-51请输入添加的姓名、工号、电话号码及住址娇 00001 18 汉中操作完毕,请再次选择! - 职工信息管理系统 |=| | 1.职工信息的新建 | | 2.职工信息的查询 | | 3.职工信息的修改 | | 4.职工信息

15、的删除 | | 5.职工信息的输出 | | 0.退出职工信息管理系统 | |=| 请选择操作0-52请输入姓名: 娇已查到,记录为:娇 00001 189 21 汉中操作完毕,请再次选择! - 职工信息管理系统 |=| | 1.职工信息的新建 | | 2.职工信息的查询 | | 3.职工信息的修改 | | 4.职工信息的删除 | | 5.职工信息的输出 | | 0.退出职工信息管理系统 | |=| 请选择操作0-53请输入姓名: 成对不起,信息簿中没有此人的记录。操作完毕,请再次选择! - 职工信息管理系统 |=| | 1.职工信息的新建 | | 2.职工信息的查询 | | 3.职工信息的修改

16、 | | 4.职工信息的删除 | | 5.职工信息的输出 | | 0.退出职工信息管理系统 | |=| 请选择操作0-5城请输入姓名:已查到,记录为:城 00001 18 安康请输入新姓名、工号、电话号码及住址: 成 00001 18 安康92操作完毕,请再次选择! - 职工信息管理系统 |=| | 1.职工信息的新建 | | 2.职工信息的查询 | | 3.职工信息的修改 | | 4.职工信息的删除 | | 5.职工信息的输出 | | 0.退出职工信息管理系统 | |=| 请选择操作0-54请输入姓名: 成已查到,记录为成 00001 18 安康确实要删除,按1;不删除,按0:1操作完毕,请

17、再次选择! - 职工信息管理系统 |=| | 1.职工信息的新建 | | 2.职工信息的查询 | | 3.职工信息的修改 | | 4.职工信息的删除 | | 5.职工信息的输出 | | 0.退出职工信息管理系统 | |=| 请选择操作0-55 职工信息簿姓名 工号 电话号码 住址 睿 00002 18 大理 娇 00001 18 汉中操作完毕,请再次选择! - 职工信息管理系统 |=| | 1.职工信息的新建 | | 2.职工信息的查询 | | 3.职工信息的修改 | | 4.职工信息的删除 | | 5.职工信息的输出 | | 0.退出职工信息管理系统 | |=| 请选择操作0-50 Press any key to continue

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

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