电子投票系统C语言课程设计-广东工业大学

电子投票系统C语言课程设计-广东工业大学

ID:47384365

大小:651.43 KB

页数:27页

时间:2019-07-13

电子投票系统C语言课程设计-广东工业大学_第1页
电子投票系统C语言课程设计-广东工业大学_第2页
电子投票系统C语言课程设计-广东工业大学_第3页
电子投票系统C语言课程设计-广东工业大学_第4页
电子投票系统C语言课程设计-广东工业大学_第5页
资源描述:

《电子投票系统C语言课程设计-广东工业大学》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、课程设计报告一、需求分析:1、设计题目:电子投票系统2、设计内容及要求:(1)通过编程建立一个小型电子投票系统,其中包含电子投票、票数统计功能。尽量做到提供一个简单的人机界面,系统界面友好,使用方便。(2)软件的使用者分为两类,一类为管理员,可以对候选人信息进行初始化和修改,还可浏览候选人信息介绍,可对候选人的票数进行排序以及对系统的用户进行管理,创建使用者用户名和密码等。另一类为使用者—普通投票者,该类用户需要用管理员分配的用户名和密码正确登录系统,可以查询候选人介绍、投票等。(投票是只需做到输入自己想要投票的

2、候选人编号即可完成投票)3、系统功能分析:本系统程序功能:(1)投票者功能a.浏览所有候选人资料b.查询要了解的候选人的信息c.在了解候选人之后进行投票(2)管理员功能a.创建新的候选人资料b.创建新的用户资料c.查询要了解的候选人资料d.浏览所有的候选人资料e.对候选人票数进行统计并排序二、具体设计1、功能模块(1)开始运行与结束运行界面模块开始运行显示有“电子投票系统”字样的界面,结束运行时则输出显示“感谢参与、再见”字样的界面。(2)功能选择模块根据输入的用户名和密码,分别进入管理员界面和投票者界面(3)身

3、份验证模块验证管理员和投票者的用户名和密码是否正确,不正确可选择重新输入用户名和密码或者退出。(4)投票人管理模块 实现对投票人的管理功能,如创建投票人用户名和密码。主要用结构体类型的数组和文件的读写来完成数据的管理操作。(5)候选人管理模块同投票人管理模块类似,要实现对大量有一定结构的信息进行管理的操作,如创建候选人,查询、浏览候选人信息。因此定义候选人信息结构体,用于存储候选人信息记录,并且将大量记录存储在硬盘文件中以便保存。用文件的读写函数实现各项功能。(6)投票区模块投票区模块用于完成系统的主体功能,提示

4、投票人输入自己想要选举的候选人序号,系统立刻将该候选人对应的票数加一,并将目前的投票状况显示给投票人。因此该部分只需读取候选人信息文件,将对应的候选人票数加一后再写回文件并显示即可。(7)票数管理模块:该模块具有对候选人票数进行排行和浏览两大功能。2、程序流程图三、源程序代码#include#include#include#include#include#defineclosegrclosegraph#define

5、N30voidwelcome();/*欢迎*/voidthans();/*再见*/voidmain_a();/*管理员主控平台*/voidmain_v();/*用户(投票者)主控平台*/voidcreate();/*创建候选人*/voidCreatUser();/*创建用户*/voidsearch();/*查询候选人信息*/voidbrowse();/*浏览候选人信息*/voidvote();/*用户投票*/voidread_c_man();/*读取候选人信息*/voidc_save();/*存储候选人信息*/i

6、nttotal=0,c_total=0;inti=0;/*候选人信息数据结构描述候选人的编号、姓名、简介和得票数量信息,作为候选人信息记录存在文件中*/typedefstructcandidate{longnumber;charname[20];charintro[400];intvote;}candidate;/*系统用户数据结构描述系统用户编号、用户名、密码和权限信息,作为一整条记录存放在文件中*/typedefstructuser{charname[20];charps[8];intpower;}user;

7、candidatec_man[N];usertotal_user[N];voidread_c_man(){charDataFile[20]="候选人.txt";FILE*fp=NULL;c_total=0;fp=fopen(DataFile,"rb");if(fp==NULL){printf("Openfile%sfail!EndWithanykey",DataFile);perror("Openfilefail");getch();exit(1);}while(fread(&c_man[c_total]

8、,sizeof(candidate),1,fp)!=(int)NULL){c_total++;}fclose(fp);}voidc_save(){FILE*fp=NULL;charDataFile[20]="候选人.txt";/*存储投票人信息的文件名*/fp=fopen(DataFile,"wb");for(i=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。