(C++)(要求能实现多组输入)(且对所写代码进行详细的解释和标注注释)完成一个对候选人得票的统计程序。候选人人数不定,但没有重名的。 使用结构体存储每一个候选人的名字、得票数、第一张和最后一张得票的序号(从 1 数)。记录每一张选票的得票人名,输出得票最多和得票最少的候 选人信息。 输入描述: 第一行有一个整数 n,表示以下有 n 张选票信息将会输入。n 不大于 100。 以后的 n 行中,每一行包含一个人名,为选票的得票人。保证每一个人名都是 唯一的。 输出描述: 有三行,分别为得票最多和得票最少的信息。格式为首先输出人名,其后输出 一个冒号,输出候选人的得票数、第一张和最后一张得票的序号,空格隔开。 (若票数相同,名字短的优先,若名字长度也相同,逐字符比较 ASCII 码,小 的优先。) 输入样例: 10 Li Li Fun Zhang Zhang Fun Li Hu Zhang Li 输出样例: Li:4 1 10 Hu:1 8 8
时间: 2024-01-24 07:20:43 浏览: 62
该程序实现投票及统计选票并输出
5星 · 资源好评率100%
思路:使用结构体存储每个候选人的信息,包括名字、得票数、第一张和最后一张得票的序号。然后遍历输入的选票信息,对相应的候选人得票数进行统计和记录第一张和最后一张得票的序号。最后再找出得票最多和得票最少的候选人即可。因为要实现多组输入,所以需要在 while 循环中读入数据,同时还要在每次读入数据前清空之前的候选人信息。
代码实现如下:
阅读全文