c语言投票程序设计,C语言课程设计-投票程序设计.doc

这是一个C语言课程设计项目,涉及编写一个投票程序,用于统计'a', 'b', 'c'三个足球先生候选人的得分。程序读取投票数据,根据选票上的候选人顺序给予不同分值,处理无效票,并根据得分确定获胜者。如果前两名得分相同,程序会提示重新投票。" 112032556,10294618,问卷信效度分析:反向题与专业认同影响,"['问卷设计', '统计分析', '心理学', '教育评估', '测量工具']
摘要由CSDN通过智能技术生成

投票程序

题目与要求:

题目要求

设有代号为’a’,’b’,’c’的三个个足球先生候选人,根据投票者在选票上对他们编号的填写顺序分别记分5,3,2。请编程从键盘上输入投票人数及投票结果,统计他们的得分,并输出哪位当选足球先生。请注意;若同一张票上写有两个相同代号,则显示“此票无效”,若最终前两名得分相同应显示“重新投票”,否则显示三个候选者得分并输出“祝贺X当选冠军!”。

例如:投票人数:5

输入投票内容:

a b c

c a b

c b a

c a a 该票无效!

c b a

三位候选人得分:

a: 12

b: 13

c: 15

祝贺c当选冠军!

1.1问题提出与要求:

需求分析

本程序中要求候选人有编号和得票数,且每张选票上要同时写上三个候选人的编号,最终输出谁是获胜者。因此可以用结构体来存储候选人的信息。唱票中要求相对应的编号分别记分为5、3、2,因此在记分程序中可以用一个条件表达式来进行统计得分。统计结果中若前两名有相同的得票数则要求重新投票。为此要求把三个侯选人的总得分进行比较,则可以用一个判断语句来判断,简单明了。

数据结构可用结构体数组,结构体成员包括代号、得分。或者采用二维数组,行方向对应一张投票,列方向对应各候选人得分。

2.功能实现设计:

2.1总体设计——程序流程图

流程图:

开始输入投票人数及投票内容

开始

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
针对投票系统源代码 仅供参考 一、课程设计目的和任务 为完成对十佳运动员的选拔,故设计此程序通过众人对20位候选人的投票表决,选出其中票数最高的前十位,定为十佳运动员。这就要求本程序要能够录入20位候选人的名单,包括起编号和姓名,然后程序可以接受用户的投票,并且自动作出票数统计并输出最后的票数由高到低的排序结果。 二、分析与设计 1.程序的基本功能: (1)查看十佳运动员的候选名单。 (2) 接受用户的投票。 (3) 自动统计用户投票并输出排序结果。 (4) 添加一个管理员,可以录入候选者名单。 (5) 退出程序。 2.系统总框图: 3.定义的函数及说明: 本程序由11个函数构成 back_sel()---用来返回用户菜单 display1()------用来显示用户菜单 f_read()-------用来读出候选人名单 admirin_save()-----管理员输入数据并将数据存盘 admirin()------管理员录入数据界面 admir()——管理员界面登录 paixv()-----查看十佳候选人排名,票数由高到低 write()------调用此函数来写入票数 voting()------投票界面,进行对候选者的投票 select()-------首页界面选择 Main()---主函数。 4.算法设计: 本程序主要运用线性表的顺序存储结构,从而很容易的对数组进行操作。同时对于票数的统计排序方面采用比较经典的“冒泡法”来完成,从而优化了整个程序体,降低时间复杂度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值