c语言身份证信息管理系统Word格式.doc

上传人:b****1 文档编号:13062702 上传时间:2022-10-04 格式:DOC 页数:14 大小:68.35MB
下载 相关 举报
c语言身份证信息管理系统Word格式.doc_第1页
第1页 / 共14页
c语言身份证信息管理系统Word格式.doc_第2页
第2页 / 共14页
c语言身份证信息管理系统Word格式.doc_第3页
第3页 / 共14页
c语言身份证信息管理系统Word格式.doc_第4页
第4页 / 共14页
c语言身份证信息管理系统Word格式.doc_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

c语言身份证信息管理系统Word格式.doc

《c语言身份证信息管理系统Word格式.doc》由会员分享,可在线阅读,更多相关《c语言身份证信息管理系统Word格式.doc(14页珍藏版)》请在冰豆网上搜索。

c语言身份证信息管理系统Word格式.doc

课程报告任务书

题目

身份证信息管理系统

主要

内容

用C语言开发一个简单的身份证管理系统要求实现以下功能:

1.管理员系统:

(1)添加个人信息;

(2)修改个人信息(按身份证号);

(3)排序(分别按区号升序、区号降序以及姓名升序);

(4)查询个人信息(按身份证号);

(5)删除个人信息(并不是实际意义上的删除);

(6)输出所有个人信息;

(7)退出子系统;

(8)结束。

2.个人用户系统:

(1)查询个人信息(按身份证号);

(2)退出子系统;

(3)结束。

说明:

个人信息包含身份证号(十八位数且不能重复)、姓名(可以重复)、性别、地址(具体到某一组),民族,出生年月日,办理日期以及截止日期(18岁以下有效期为5年,18岁以上10年),区号由身份证前7位组成。

当一个人死了时将删除他的记录并且自动添加到死亡名单death.dat并且办理日期与截止日期都改为死亡时间。

任务

要求

一、提交材料应包括:

(1)系统源代码

(2)课程报告

二、整个设计过程具体要求

(1)需求分析要求学生对案例系统进行分析,设计出需要完成的功能,完善各个模块的调用关系;

(2)设计过程要求学生进一步明确各模块调用关系,进一步完善模块函数细节(函数名、参数、返回值等)

(3)实现过程要求学生养成良好的编码习惯、完成各个模块并进行测试,最终完成系统整体测试;

(4)总结阶段按照要求完成系统设计和实现报告,并进行总结、答辩。

成绩

评定

报告撰写情况(30分)

系统完成情况(30分)

答辩情况(40分)

总分

20分

规范程度

5分

程序测试

基本功能20分

扩展功能10分

自述情况10分

答辩情况

30分

成绩评定教师:

1需求分析

身份证管理系统——管理居民信息,便于查询,修改。

添加-----把居民信息添加到链表中在存到文件IDcard中。

查看所有个人信息——把文件中的所有信息输出。

修改------用身份证号查找该信息,如果找到则进行修改功能,否则跳出该功能。

排序------新建一个链表辅助排序,把排序后的链表输出,并且存到文件IDcard中,下次打开系统时输出排序后的序列。

查找——用身份证号查找,如果找到则输出该信息,否则跳出该功能。

删除——用身份证号查找该信息,如果找到则存入death文件中,再删除该结点,最后把删除后的链表存入文件,否则跳出该功能。

2概要设计

可适当参考以下提示:

⑴数据结构

typedefstruct

{

intyear;

intmonth;

intday;

}data;

typedefstructIDcard

charID[19];

charname[10];

charsex;

charaddress[50];

charnation[9];

databirth;

dataorigin;

dataend;

structIDcard*next;

}SFZ,*Link;

⑵模块划分

⑶程序总体框

主函数:

定义:

添加:

删除:

查找:

加载:

界面:

修改:

输出:

存储:

排序:

3详细设计

主函数包含头文件:

define.h、display.h、output.h、save.h、Add.h、load.h、edit.h、find.h、del.h、sort.h;

添加函数voidadd(Linkhead),调用输入函数voidInputRecord(Linkhead)进行输入;

删除函数voiddel(Linkhead),调用查找ID函数LinkFindID(Linkhead,chars[])进行查找,删除;

主界面调用函数voidexplain(void)输出;

管理员系统界面调用函数voidnamagedisplay(void)输出;

个人系统界面调用函数voidpersonaldisplay(void)输出;

输入密码界面调用函数intpassword(void);

修改函数调用查找ID函数LinkFindID(Linkhead,chars[])进行查找,修改;

查找函数调用查找ID函数LinkFindID(Linkhead,chars[])进行查找,再调用单个输出函数voidPrintRecord(Linktemp)输出;

加载函数voidload(Linkhead);

输出所有信息函数voidoutput(Linkhead)调用单个输出函数voidPrintRecord(Linktemp)输出;

存储函数voidsave(Linkhead);

排序函数调用区号升序,区号降序,姓名升序函数进行排序voidZone_descriptionAsc(Linkhead)、voidZone_descriptionDes(Linkhead)、voidNameAsc(Linkhead)。

源代码:

4调试分析

开始时存储的文件中多了一排烫,调试发现读入时多循环了一次,读入了一串垃圾值,修改后正常。

之后一系列的小错误都是通过调试解决。

关于查找函数的改进:

开始查找信息返回值为结点数,之后改为返回地址。

关于界面的改进,一开始选择系统执行功能后返回到选择系统,之后可以继续执行功能,手动跳出子系统。

5测试结果

输出:

查询:

在删除中已经使用,再调用输出函数输出,即为查询;

因为需要的数据太多,图片较多,请自行解决。

6课程心得总结

本学期,当大作业刚布置下来的时候感觉很难,因为感觉学的东西太少,根本完不成这个任务,因此前几周都没开始写,一直等把c语言都上完了才开始。

刚开始时不会建工程,便用Cb开始写,后来经过进一步的研究才学会了用Vc写这个大作业。

在写大作业的过程中也并不是那么顺利,存在着太多的bug,然后就摸索着调试,直到写完大作业才明白,原来它的目的是让我们提高自己。

在整个过程中对我提升最大的就是链表的使用和调试了。

开始学单链表时很是疑惑,而现在已经能够熟练的使用链表,在大作业众多的错误中,让我从一个不怎么会调试的菜鸟,变成一个能比较熟练使用调试的大渣渣。

其实学c,想要掌握它的精髓,就必须自己亲自去实现某一个功能,然后逐步调试,就能很快地掌握它(实践是检验真理的唯一标准)。

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

当前位置:首页 > 小学教育 > 小升初

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

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