数据结构练习题--计票系统 C++
【题目】:通过C/C++实现唱票统计系统,输入所有的选举情况,后台自动计票
输入:lisa lisa benz benz audi etc
输出:lisa :2 票;benz 2 票;audi 1 票;etc 1 票;
【分析】
使用线性表将投票的数据存储,然后通过算法将对表中的元素统计出现的次数;
【答案】代码中含有解析,不懂的欢迎提问哦
#include <iostream>
#include<malloc.h>
#include <conio.h>
using namespace std;typedef struct sqlist {string Candidate[100];//存放线性表地址int length=0; //存放线性表长度
}SqList;//定义线性表
void Input(SqList* L) {cout << "请输入代表数:";int Num = 0;cin >> Num;L->length = Num;cout << "请开始唱票:\n";for (int i = 0; i < L->length; i++) {//使用for循环将选举的人名字输入进去cin >> L->Candidate[i];}
}
void Voting_result(SqList* L) {int n = 0;cout << "投票结果如下:\n";string temp;int count1=0;string name[20];//用来存储选举后存储名字int count[20];//用来存贮选举后的票数 其中的name数组和count数组通过赋值的方式达到了一一对应关系temp = L->Candidate[0];//将一开始的选举人的名字赋值给tempfor (int i = 0; i < L->length; i++) {int count1 = 0;//先前计票为0if (temp != L->Candidate[i])temp = L->Candidate[i];//首次判断时,temp == L->Candidate[i],这里判断的时选举人的名字for (int j = 0; j < L->length; j++) {if (L->Candidate[j] == temp)count1++;//在选票中选中temp的,则count+1if (j + 1 == L->length) {//判断是否为最后一张选票,是则将得到的选举人和票数存储起来,便于输出name[i] = temp;count[i] = count1;}}}for (int k = 0; name[k] != ""; k++) {if (name[k] == name[k + 1])continue;cout << "候选人" << name[k] << "得票统计:" << count[k] << endl;}cout << "测试结束!!!";
}
int main() {SqList L;Input(&L);Voting_result(&L);return 0;
}
数据结构练习题--计票系统 C++相关推荐
- 十二张图带你了解 Redis 的数据结构和对象系统
来自公众号:程序员历小冰 Redis是一个开源的 key-value 存储系统,它使用六种底层数据结构构建了包含字符串对象.列表对象.哈希对象.集合对象和有序集合对象的对象系统.今天我们就通过12张图 ...
- 十二张图详解Redis的数据结构和对象系统
回顾:大数据平台技术栈 (ps:可点击查看),今天就来说说其中的Redis! 本文来自:张狗蛋的技术之路 Redis是一个开源的 key-value 存储系统,它使用六种底层数据结构构建了包含字符串对 ...
- access ole 对象 最大长度_Redis 数据结构和对象系统,有这 12 张图就够了!
作者 | 程序员历小冰 责编 | 林瑟 Redis 是一个开源的 key-value 存储系统,它使用六种底层数据结构构建了包含字符串对象.列表对象.哈希对象.集合对象和有序集合对象的对象系统. 今天 ...
- 数据结构练习题――Hero In Maze 简单版
数据结构练习题――Hero In Maze 简单版 时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte 总提交:306 ...
- 数据结构实验公交车系统
数据结构实验公交车系统(完整代码私信) 1.查询公交车信息 2.查询站点信息 3.查询两个站点之间的路线(最多一次换乘) 4.添加.删除.修改公交车,站点,路线 创建4个文本文档(即txt) rout ...
- TOJ 1225 数据结构练习题——Huffman Coding
数据结构练习题--Huffman Coding 时间限制(普通/Java):1000MS/10000MS 运行内存限制:65536KByte 描述 以前,没有电话的时候,进行快速远距离通信的主 ...
- 数据结构练习题---先序遍历二叉树
数据结构练习题---先序遍历二叉树 时间限制(普通/Java):3000MS/10000MS 运行内存限制:65536KByte 总提交:107 测试通过:64 ...
- [Python]常用数据结构 练习题
常用数据结构 练习题 输人5个整数放到列表list1 中,输出下标及值,然后将列表listl 中大于平均值的元素组成一个新列表list2,输出平均值和列表list2.请利用列表推导式解决该问题. li ...
- 数据结构技能考试系统
通过一个月的努力,终于把数据结构技能考试系统用C++的语言实现(其中有C语言的穿插),系统的最大优点是可以检测学生答题时是否插入了U盘,打开了word及记事本等辅助工具.此系统分为两部分,一部分是学生 ...
最新文章
- 业余时间用哪里,哪里就有发展的可能
- 一年后斩获腾讯T3,面试必问!
- python自动化任务_用Python实现真实世界任务的自动化
- 简单的XML和JSON数据的处理
- Java设计模式(学习整理)---单例模式
- exists子查询 mysql
- 第九章php与数据交互,利用ajax实现与php数据交互,并局部刷新页面
- VC++ (四)动态内存
- 微服务升级_SpringCloud Alibaba工作笔记0013---SpringCloud Alibaba简介
- 昨天食物中毒,至今浑身酸痛
- PLC仿真搭建问题与解答
- ACM/ICPC 2018亚洲区预选赛北京赛站网络赛 B Tomb Raider 【二进制枚举】
- Python:蒙特卡罗方法模拟解决三门问题
- 文献记录(part104)--Distance-Based Outlier Detection: Consolidation and Renewed Bearing
- 智商高的人都不爱说话,程序员也是如此吗?
- 三星官宣所有5G设备信息图 看完有何感想
- 实验四:激光传感器实验,摩尔斯密码
- ngrok穿透内网(内网有代理的情况)
- 解决:windows10网络图标被重名名为Network
- 物联网开发笔记(27)- 使用Micropython开发ESP32开发板之控制240x240的oled屏幕(ST7789芯片)
热门文章
- Linux零拷贝技术
- 【回答问题】ChatGPT上线了!如何使用控制算法或动力学模型控制PreScan搭建的仿真环境及相关车辆的运动状态?
- python年份天干地支代码_好用的Python第三方日历库:sxtwl(可算天干地支)
- Ehcache使用教程
- Linux命令之netstat
- ‘mysql‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
- java设计一个bank类实现银行_java定义一个类实现银行账户的概念。
- CvMat、Mat、IplImage之间的转换详解及实例
- Unity3D 导入模型
- 高级面试题 非常 有用