电子投票平台管理系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

综合性实验报告

题目:电子投票平台管理系统

课程名称:C语言程序设计

院系名称:计算机科学与技术学院

专业班级: 09计算机(非师范)

学生姓名:***

学号: ***********

任课教师:**

一、实验目的:

C语言课程设计是计算机学院重要的教学环节,它为学生提供了一个既动手又动脑,将课本上的理论知识和实际有机的结合起来,独立分析和解决实际问题的机会。

1. 进一步巩固和复习C程序设计的基础知识。

2. 培养学生结构化程序,模块化程序设计的方法和能力。

3. 提高学生调试程序的技巧和软件设计的能力。

4. 提高学生分析问题、解决问题以及综合利用C语言进行程序设计的能力。

5. 了解软件的编制过程。

二、实验要求:

1.主要操作包括:数据输入、输出、插入、删除、查找、修改、排序等。

2. 用C语言编程实现上述实验内容的结构定义和相关功能,要求程序能够正确执行,最后提交源程序代码及实验报告。

三、系统分析

电子投票平台有两大功能是:管理员操作和游客操作。它包括功能选择;身份验证;投票人管理模块;候选人管理模块;投票区和得票结果管理六大模块。保证了不同人有自己的操作,同时又不能执行别人的操作,具有安全性,并且又有一定的实用性。

本程序包含六个功能模块:功能选择;身份验证;投票人管理模块;候选人管理模块和投票区。

①功能选择:功能选择模块为系统提供类似于菜单的功能,让用户输入功能选择项,并进入相应的功能执行程序。系统按权限分为管理员的功能选择和投票人的功能选择。分别在admin()和gust()函数中。

②身份验证:该模块判断要使用该系统的是投票人还是管理员,首先获取登录者的用户名和密码,当用户名和密码相符时,判断用户的权限并进入相应功能选择函数。当用户忘记密码时,给用户机会进行重新输入。源程序包含在denglu()中。

③候选人管理模块:候选人管理模块完成候选人的初始化、候选人信息的浏览、候选人信息修改、3个主要功能。源程序包含在chushihua();liulan();xiugai()。

④投票区管理:投票区完成该系统的主体功能。当投票人顺得登录系统后,输入要投票的候选人的姓名,即可完成投票。候选人的得票信息会随时刷新。每个投票人投票后就会失去投票的权利,避免重复投票。投票后立刻显示各个候选人的得票数。

四、程序操作说明书

①. 用户类型操作

②.输入1进行管理员操作。输入帐号和密码。进行下一步操作。

③.输入1进行候选人初始化,并输入各个候选人的资料。

④初始化完成后,返回管理员操作界面,输入2可以浏览候选人。

⑤浏览后,可以输入3修改候选人资料。然后选择相应的的资料进行修改

⑥.输入5可以返回主界面。重复操作。

⑦选择2进入投票者界面并输入帐号和密码。

⑧.输入1可以浏览候选人的资料。

⑨输入2可以进行投票,如果投票后就不能进行投票了。投票成功后会输出个候选人的得票数。

五、系统实现

表3-1 程序总框架(函数清单)表

序号文字解释函数

1 管理员界面Admin()

2 候选人初始化chushihua()

3 用户登录denglu();

4 主界面delujiemian()

5 管理员的操作guanliyuancaozuo();

6 投票者界面gust();

详细源程序#include

#include

#include

#include

#define SIZE 3

#define NUM 11

int zxcv;

void chushihua();

void liulan();

void xiugai();

struct user

{

long number;

char name[15];

char ps[8];

int power;

int n;

}us[NUM];

struct candidate

{

long number;

char name[80];

char intro[80];

int votenum;

}cd[SIZE];

void yonghucaozuo();

void denglujiemian()

{

printf("***************************\n");

printf("管理员请选择1,游客请选择2.\n");

printf("***************************\n");

}

void admin()

{

//int j;

printf("********************************\n");

printf("*********1 初始化候选人*********\n");

printf("*********2 浏览候选人 *********\n");

printf("*********3 修改候选人 *********\n");

printf("*********4 退出 *******\n");

printf("*********5 返回上一层 *********\n");

printf("********************************\n");

}

void gust()

{

printf("********************************\n");

printf("**********1 浏览候选人 *********\n");

printf("**********2 投票 *********\n");

printf("**********3 退出 *********\n");

printf("**********4 返回上一层 *********\n");

printf("********************************\n");

}

void chushihua() //初始化候选人

{

FILE *fp;

int i;

printf("请输入候选人的数据:\n");

for(i=0;i

{

printf("请输入第%d个候选人的数据:\n",i+1);

printf("\n编号:");

相关文档
最新文档