- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
计算机科学与技术学院《面向对象程序设计》课程设计报告
PAGE
PAGE2 / NUMPAGES6
201
2017-2018学年 第一学期
《数据结构》
课程设计报告
题目:
投票选举
专业:
数字媒体技术
班级:
数字151
目录
1问题描述3
2问题分析3
3 程序设计4
4程序代码5
5参考文献6
6程序测试6
1 问题描述
某校学生会主席由全校学生投票选举产生,共有m 名候选人报名参选(0< m< 10
全校有n名学生(0< n< :2000,每人都可以投票,但每人只能投一票,每票只能选候选人。请设计- 一个程序,能够统计出哪个候选人得票最多,得了多少票。
2 问题分析
需要设计一个结构体数组,数组中包含”个无不想面然的为0。按下来用键盘输
的姓名(字符型)和得票数(整型)。初始,每个候选人的得票效但这创基中的“姓名”成员比较,如果相人来模拟学生投票: 输人被选人的姓名,然后与数组元家
学生投票,所以上述过程重复同,就给这个元素中的“得票数”成员的值加1;共有n”及相应的“得次。最后比较m个元素的“得票数”成员,输出该值最大的元素“姓名票数”。
3 程序设计
选用结构体作为候选人的存储结构。
/*候选人的存储结构*/
struct person
/* 候选人的姓名*/
{char name[20];
/* 候选人的得票数*/
int count;
输人设计: 第一行给出候选人数目m(m< 10)和作为选民的学生数目n(0<
2000),接着输人m 个候选人的姓名。
输出设计: 输出得票数最多的候选人姓名及其相应的得票数。
基本操作:
Init(): 初始化界面设计。
Input ): 输人数据。
TouPiao(): 完成n 名学生的投票。
MaxCount(): 求得票数最多的候选人,输出其相应信息。
main(): 主函数。
4 程序代码
#include<string.h>
#include<stdio.h>
#define M 10
#define N 20000
int m=0,n=0;
struct person
{
char name[20];
int count;
}leader[M];
void Init()
{
printf("*******************投票选举******************");
printf("请输入候选人数m(m<=10)和学生数n(n<=20000):\n\n");
}
void Input()
{ int m ,n;
int i ;
char leader_name[20];
scanf("%d,%d,&m,&n");
printf("\n请输入%d个候选人姓名:",m);
for(i=0;i<m;i++)
{
printf("请输入第%d个候选人姓名:",i+1);
scanf("%s",leader[i].name);
}
}
void TouPiao()
{
int i,j;
char leader_name[20];
for(i=0;i<m;i++)
leader[i].count=0;
printf("\n请输入%d个被选人姓名:",n);
for(i=0;i<n;i++)
{
printf("\n请输入第%d个被选人姓名:",i+1);
scanf("%s",leader_name);
for(j=0;j<m;j++)
{
if(strcmp(leader_name,leader[j].name)==0)
leader[j].count++;
}
}
}
void MaxCount()
{
int i,k;
k=0;
for(i=1;i<m;i++)
if(leader[i].count>leader[k].count)
k=i;
printf("\n得票最多的人是:%5s,票数是%d\n",leader[k].name,leader[k].count);
}
int main()
{
Init();
Input();
TouPiao();
MaxCount();
return 0;
}
5、参考文献
[1]刘晓华著.数据结构与算法.北京:清华大学出版社,2015
6 程序测试与运行结果
文档评论(0)