C 语 言 课 程 设 计 报 告 电子投票系统 学 院 计算机学院 专 业 年 级 姓 名 学 号 教 师 年 月 日 广东工业大学计算机学院制 一
设计题目 电子投票系统 二.课程设计目的 了解软件工程中的一些系统分析,模块分析,代码设计的概念,利用WIN-TC 实现学生成绩管理系统的录入、查询、删除、统计等基本操作,使用单链表结构实现学生成绩管理,了解数据库管理的基本功能,掌握 C 语言中的结构体、指针、函数(系统函数、自定义函数)、文件操作等知识
通过对系统的分析和设计,进一步巩固 C 语言的学习,以提高对开发环境的进一步认识和综合编程能力
三. 系统功能 本系统程序功能: (1)投票者功能 a
浏览所有候选人资料 b
查询要了解的候选人的信息 c
在了解候选人之后进行投票 (2)管理员功能 a
创建新的候选人资料 b
创建新的用户资料 c
查询要了解的候选人资料 d
浏览所有的候选人资料 e
对候选人票数进行统计并排序 四.系统功能模块结构图 本程序利用单链表存储结构完成对学生成绩的动态管理,其基本功能模块如下图所示: 电子投票系统 验证账号密码 管理员 投票人 图1 程序功能模块结构图 五.程序设计及各模块函数功能简述 1.数据结构 链表是线形表的一种,线形表分为顺序存储结构和链式存储结构
线形表的顺序存储结构的特点是逻辑关系上相邻的两个元素物理位置上也相邻,因此可以随机存取表中任一元素
链式存储结构的特点是用一组任意的存储单元存储线形表的数据元素
链表的最大的优点是对表的添加、删除、查找、排序等操作比较方便,因此采用链表来存储候选人,投票人相关信息
且对结点的定义如下: ttypedef struct candidate//候选人数据结构体 { long number;//候选人编号 char name[20];//候选人姓名 char intro[400]