c语言课程设计投票程序系统设计.docx
《c语言课程设计投票程序系统设计.docx》由会员分享,可在线阅读,更多相关《c语言课程设计投票程序系统设计.docx(18页珍藏版)》请在冰豆网上搜索。
c语言课程设计投票程序系统设计
中国地质大学
本科生课程论文封面
课程名称C语言课程设计教师姓名邵老师
本科生姓名常堃
本科生学号079本科生专业应用化学所在院系材化学院
类别:
C.本科生
日期:
2011年7月6日
课程设计评语
对课程论文的评语
平时成绩:
课程论文成绩:
总成绩:
评阅人签名:
注:
1、无评阅人签名成绩无效;
2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效;
3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。
课程设计评语错误!
未定义书签。
目录错误!
1.课程论文题目错误!
2.程序设计思路错误!
3.功能模块图错误!
4.数据结构设计错误!
5.算法设计错误!
6.程序代码错误!
7.程序运行结果错误!
8.编程中遇到的困难及解决方法错误!
9.总结心得及良好建议错误!
10.致谢错误!
1.课程论文题目
投票程序
[要求]
设有代号为‘a',‘b',‘c'的三个足球先生候选人,根据投票者在选票上对他们编号的填写顺序分别记分5,3,2。
请编程从键盘上输入投票人数及投票结果,统计他们的得分,并输出哪位当选足球先生。
注意:
若同一张票上写有两个相同的代号,则显示“此票无效”,若最终前两名得分相同应显示“重新投票”,否则显示三位候选人得分并输入“祝贺X当选冠军”。
例如:
投票人数:
5
请参加投票的人开始投票:
abc
cab
caa此票无效
cba
bca
三位候选人得分:
a:
12
b:
13
c:
15
祝贺c当选冠军
[提示]数据结构可用结构体数组,结构体成员包括代号、得分。
或者采用二维数组,行方向对应一张投票,列方向对应各候选人得分。
2.程序设计思路
根据题目要求,首先要输入投票者人数,再输入投票者的选票,而选票不是都有效,若同一张票上写有两个相同的代号,则此票无效,所以要将有效的选票选出来,然后对选票进行统计得分,最终来比较得分,若有得分相同,则重新来选,最后得分最多的获胜,最终成为足球先生。
但是此程序还不够完善,可以增加以下程序,增强其功能:
1.记录废票数目,以便废票太多,影响选举公正。
2.若出现a,b,c以外的投票,应当将该票记为无效。
3.若出现最终前两名得分相同,应该还可以运行程序,使其重新投票,重新计票,直至最后选出足球先生。
3.功能模块图
输入选票信息:
输入对足球先生候选人的选票输出结果:
输出最后足球先生的获得者统计选票:
对选票进行统计
4.数据结构设计
要输入投票人数,将其定义为re,选票信息可以用一个p[100][3]的数组来存放,re来控制投票信息数组的行数。
最开始定义一个全局变量m=3,来表示候选者人数。
这样来控制数列数,达到控制输入的目的。
每输入一行,就开始判断是否一张票上写有两个相同代号,或者是出现‘a',‘b',‘c'以外的投票结果,如果出现这种情况,就将票作废,并记录作废票数。
定义变量v记录作废票数。
判断完毕后,若出现废票,就将其中的票府赋值为‘0'。
返回投票人数re,留到后续函数使用。
5.算法设计
1、主函数:
主函数只提供输入、处理和输出部分函数调用:
【程序】
#include<>
/****输入函数****/
intstart(charp[][3]);
voidcount(inta,charp[][3],intpp[]);intresult(inta,intb,intc);intm;
voidmain()
{
/***统计函数***/
/***输出函数***/
/*****全局变量*****/
/*****
主函数*****/
}
inta;
m=3;
intpp[3]={0,0,0};do
/******p[100][3]
a=start(p);count(a,p,pp);/******计算得分
charp[100][3]={{0}};赋初值,清空******/
******/
while(result(pp[0],pp[1],pp[2]));
若m=2循环,直至选出足球先生*****/
2、
(1)【分析】要输入投票人数,将其定义为re,选票信息可以用一个控制投票信息数组的行数。
各功能模块设计
输入模块
p[100][3]的数组来存放,re来
每输入一行,就开始判断是否一张票上写有两个相同代号,或者是出现
‘a',‘b',‘c'以外的投票结果,如果出现这种情况,就将票作废,并记录作废票数。
intstart(charp[][3])
intre,i,j,v=0;
printf("请输入投票人数\n");
scanf("%d",&re);
****a
为投票人数******/
printf("请参加投票的人开始投票\n");
getchar();
/******输入时以回车结束******/for(i=0;i{intflag=0;for(j=0;j/******scanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2]) flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;j}/******若有以上情况,显示"此票无效",忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}(2)统计模块【分析】功能上要求分别统计a,b,c三个人的得分,因而用x,y,z来存放,每一票中分别统计得分,根据投票者在选票上对他们编号的填写顺序分别记分5,3,2,将如果出现废票,直接跳过不计,将最后结果分别放入x,y,z.。引用主函数中的数组pp[3],将统计的x,y,z分别赋值到pp[0],pp[1],pp[2]中,这样就可以带回主函数中。【程序】voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}(3)输出模块【分析】功能上要求比较三位候选人的最后得分,三人得分分别为x,y,z。定义max,将最高分赋值到max中。只有一位最高分时,输出三位候选人得分,显示“祝贺某人当选冠军”。如果有两位最高分,则显示“请重新投票”,接着,令m=2,改变全局变量,只剩下两位候选者,显示三位候选人得分,重新投票统计。如果两位候选人分数还相同,则再次循环,若不同,则显示两人得分,并显示“祝贺某人当选冠军”。【程序】intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)printf("三位候选人得分:\n");elseprintf("两位候选人得分:\n");if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);if(z>0)printf("c:%d\n",z);if(!l)printf("祝贺%c当选冠军\n",k);/******输出最后结果******/returnl;}如果l返回主程序,若l为真值,则代表最后两位候选人分数还相同,主程序的do,while循环,可以再次统计票数,再次比较得分,直到选出最后的足球先生。6.程序代码#include<>#include<>intstart(charp[][3]);voidcount(inta,charp[][3],intpp[]);intresult(inta,intb,intc);intm;voidmain(){inta;m=3;intpp[3]={0,0,0};do{charp[100][3]={{0}};/******p[100][3]赋初值,清空******/a=start(p);count(a,p,pp);/******计算得分******/}while(result(pp[0],pp[1],pp[2]));}intstart(charp[][3]){intre,i,j,v=0;printf("请输入投票人数\n");scanf("%d",&re);****a为投票人数******/printf("请参加投票的人开始投票\n");getchar();/******输入时以回车结束******/for(i=0;i{intflag=0;for(j=0;jscanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2])flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
intflag=0;
for(j=0;j/******scanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2]) flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;j}/******若有以上情况,显示"此票无效",忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}(2)统计模块【分析】功能上要求分别统计a,b,c三个人的得分,因而用x,y,z来存放,每一票中分别统计得分,根据投票者在选票上对他们编号的填写顺序分别记分5,3,2,将如果出现废票,直接跳过不计,将最后结果分别放入x,y,z.。引用主函数中的数组pp[3],将统计的x,y,z分别赋值到pp[0],pp[1],pp[2]中,这样就可以带回主函数中。【程序】voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}(3)输出模块【分析】功能上要求比较三位候选人的最后得分,三人得分分别为x,y,z。定义max,将最高分赋值到max中。只有一位最高分时,输出三位候选人得分,显示“祝贺某人当选冠军”。如果有两位最高分,则显示“请重新投票”,接着,令m=2,改变全局变量,只剩下两位候选者,显示三位候选人得分,重新投票统计。如果两位候选人分数还相同,则再次循环,若不同,则显示两人得分,并显示“祝贺某人当选冠军”。【程序】intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)printf("三位候选人得分:\n");elseprintf("两位候选人得分:\n");if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);if(z>0)printf("c:%d\n",z);if(!l)printf("祝贺%c当选冠军\n",k);/******输出最后结果******/returnl;}如果l返回主程序,若l为真值,则代表最后两位候选人分数还相同,主程序的do,while循环,可以再次统计票数,再次比较得分,直到选出最后的足球先生。6.程序代码#include<>#include<>intstart(charp[][3]);voidcount(inta,charp[][3],intpp[]);intresult(inta,intb,intc);intm;voidmain(){inta;m=3;intpp[3]={0,0,0};do{charp[100][3]={{0}};/******p[100][3]赋初值,清空******/a=start(p);count(a,p,pp);/******计算得分******/}while(result(pp[0],pp[1],pp[2]));}intstart(charp[][3]){intre,i,j,v=0;printf("请输入投票人数\n");scanf("%d",&re);****a为投票人数******/printf("请参加投票的人开始投票\n");getchar();/******输入时以回车结束******/for(i=0;i{intflag=0;for(j=0;jscanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2])flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
/******
scanf("%c",&p[i][j]);getchar();输入选举投票******/
if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2])
flag=1;
判断一张票上是否写有两个相同代号******/
for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;j}/******若有以上情况,显示"此票无效",忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}(2)统计模块【分析】功能上要求分别统计a,b,c三个人的得分,因而用x,y,z来存放,每一票中分别统计得分,根据投票者在选票上对他们编号的填写顺序分别记分5,3,2,将如果出现废票,直接跳过不计,将最后结果分别放入x,y,z.。引用主函数中的数组pp[3],将统计的x,y,z分别赋值到pp[0],pp[1],pp[2]中,这样就可以带回主函数中。【程序】voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}(3)输出模块【分析】功能上要求比较三位候选人的最后得分,三人得分分别为x,y,z。定义max,将最高分赋值到max中。只有一位最高分时,输出三位候选人得分,显示“祝贺某人当选冠军”。如果有两位最高分,则显示“请重新投票”,接着,令m=2,改变全局变量,只剩下两位候选者,显示三位候选人得分,重新投票统计。如果两位候选人分数还相同,则再次循环,若不同,则显示两人得分,并显示“祝贺某人当选冠军”。【程序】intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)printf("三位候选人得分:\n");elseprintf("两位候选人得分:\n");if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);if(z>0)printf("c:%d\n",z);if(!l)printf("祝贺%c当选冠军\n",k);/******输出最后结果******/returnl;}如果l返回主程序,若l为真值,则代表最后两位候选人分数还相同,主程序的do,while循环,可以再次统计票数,再次比较得分,直到选出最后的足球先生。6.程序代码#include<>#include<>intstart(charp[][3]);voidcount(inta,charp[][3],intpp[]);intresult(inta,intb,intc);intm;voidmain(){inta;m=3;intpp[3]={0,0,0};do{charp[100][3]={{0}};/******p[100][3]赋初值,清空******/a=start(p);count(a,p,pp);/******计算得分******/}while(result(pp[0],pp[1],pp[2]));}intstart(charp[][3]){intre,i,j,v=0;printf("请输入投票人数\n");scanf("%d",&re);****a为投票人数******/printf("请参加投票的人开始投票\n");getchar();/******输入时以回车结束******/for(i=0;i{intflag=0;for(j=0;jscanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2])flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
if(p[i][j]!
='a'&&p[i][j]!
='b'&&p[i][j]!
='c')flag=1;
/******判断是否有a,b,c以外的字母******/
if(flag)
printf("此票无效\n");
v++;
for(j=0;j}/******若有以上情况,显示"此票无效",忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}(2)统计模块【分析】功能上要求分别统计a,b,c三个人的得分,因而用x,y,z来存放,每一票中分别统计得分,根据投票者在选票上对他们编号的填写顺序分别记分5,3,2,将如果出现废票,直接跳过不计,将最后结果分别放入x,y,z.。引用主函数中的数组pp[3],将统计的x,y,z分别赋值到pp[0],pp[1],pp[2]中,这样就可以带回主函数中。【程序】voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}(3)输出模块【分析】功能上要求比较三位候选人的最后得分,三人得分分别为x,y,z。定义max,将最高分赋值到max中。只有一位最高分时,输出三位候选人得分,显示“祝贺某人当选冠军”。如果有两位最高分,则显示“请重新投票”,接着,令m=2,改变全局变量,只剩下两位候选者,显示三位候选人得分,重新投票统计。如果两位候选人分数还相同,则再次循环,若不同,则显示两人得分,并显示“祝贺某人当选冠军”。【程序】intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)printf("三位候选人得分:\n");elseprintf("两位候选人得分:\n");if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);if(z>0)printf("c:%d\n",z);if(!l)printf("祝贺%c当选冠军\n",k);/******输出最后结果******/returnl;}如果l返回主程序,若l为真值,则代表最后两位候选人分数还相同,主程序的do,while循环,可以再次统计票数,再次比较得分,直到选出最后的足球先生。6.程序代码#include<>#include<>intstart(charp[][3]);voidcount(inta,charp[][3],intpp[]);intresult(inta,intb,intc);intm;voidmain(){inta;m=3;intpp[3]={0,0,0};do{charp[100][3]={{0}};/******p[100][3]赋初值,清空******/a=start(p);count(a,p,pp);/******计算得分******/}while(result(pp[0],pp[1],pp[2]));}intstart(charp[][3]){intre,i,j,v=0;printf("请输入投票人数\n");scanf("%d",&re);****a为投票人数******/printf("请参加投票的人开始投票\n");getchar();/******输入时以回车结束******/for(i=0;i{intflag=0;for(j=0;jscanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2])flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
/******若有以上情况,显示"此票无效",忽略此票,并记录废票数
}printf("作废票数是%d票\n",v);returnre;
(2)统计模块
【分析】
功能上要求分别统计a,b,c三个人的得分,因而用x,y,z来存放,每一票中分别统计得分,根据投票者在选票上对他们编号的填写顺序分别记分5,3,2,将如果出现废票,直接跳
过不计,将最后结果分别放入x,y,z.。
引用主函数中的数组pp[3],将统计的x,y,z分别赋值到pp[0],pp[1],pp[2]中,这样就可以带回主函数中。
voidcount(inta,charp[][3],intpp[])
intb=a,i;
intx=0,y=0,z=0;
/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}(3)输出模块【分析】功能上要求比较三位候选人的最后得分,三人得分分别为x,y,z。定义max,将最高分赋值到max中。只有一位最高分时,输出三位候选人得分,显示“祝贺某人当选冠军”。如果有两位最高分,则显示“请重新投票”,接着,令m=2,改变全局变量,只剩下两位候选者,显示三位候选人得分,重新投票统计。如果两位候选人分数还相同,则再次循环,若不同,则显示两人得分,并显示“祝贺某人当选冠军”。【程序】intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)printf("三位候选人得分:\n");elseprintf("两位候选人得分:\n");if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);if(z>0)printf("c:%d\n",z);if(!l)printf("祝贺%c当选冠军\n",k);/******输出最后结果******/returnl;}如果l返回主程序,若l为真值,则代表最后两位候选人分数还相同,主程序的do,while循环,可以再次统计票数,再次比较得分,直到选出最后的足球先生。6.程序代码#include<>#include<>intstart(charp[][3]);voidcount(inta,charp[][3],intpp[]);intresult(inta,intb,intc);intm;voidmain(){inta;m=3;intpp[3]={0,0,0};do{charp[100][3]={{0}};/******p[100][3]赋初值,清空******/a=start(p);count(a,p,pp);/******计算得分******/}while(result(pp[0],pp[1],pp[2]));}intstart(charp[][3]){intre,i,j,v=0;printf("请输入投票人数\n");scanf("%d",&re);****a为投票人数******/printf("请参加投票的人开始投票\n");getchar();/******输入时以回车结束******/for(i=0;i{intflag=0;for(j=0;jscanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2])flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
if(p[i][0]=='a')
x+=5;
elseif(p[i][1]=='a')
x+=3;
elseif(p[i][2]=='a')
x+=2;
if(p[i][0]=='b')
y+=5;
elseif(p[i][1]=='b')
y+=3;
elseif(p[i][2]=='b')
y+=2;
if(p[i][0]=='c')
z+=5;
elseif(p[i][1]=='c')
z+=3;
elseif(p[i][2]=='c')
z+=2;
if(p[i][0]=='0')
continue;
pp[0]=x;
pp[1]=y;
pp[2]=z;
(3)输出模块
功能上要求比较三位候选人的最后得分,三人得分分别为x,y,z。
定义max,将最高分赋值到max中。
只有一位最高分时,输出三位候选人得分,显示“祝贺某人当选冠军”。
如果有两位最高分,则显示“请重新投票”,接着,令m=2,改变全局
变量,只剩下两位候选者,显示三位候选人得分,重新投票统计。
如果两位候选人分数还相同,则再次循环,若不同,则显示两人得分,并显示“祝贺某人当选冠军”。
intresult(inta,intb,intc)
intx,y,z,max=0,s=0,l=0;
chark;
x=a;y=b;z=c;
max=x;k='a';
if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)printf("三位候选人得分:\n");elseprintf("两位候选人得分:\n");if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);if(z>0)printf("c:%d\n",z);if(!l)printf("祝贺%c当选冠军\n",k);/******输出最后结果******/returnl;}如果l返回主程序,若l为真值,则代表最后两位候选人分数还相同,主程序的do,while循环,可以再次统计票数,再次比较得分,直到选出最后的足球先生。6.程序代码#include<>#include<>intstart(charp[][3]);voidcount(inta,charp[][3],intpp[]);intresult(inta,intb,intc);intm;voidmain(){inta;m=3;intpp[3]={0,0,0};do{charp[100][3]={{0}};/******p[100][3]赋初值,清空******/a=start(p);count(a,p,pp);/******计算得分******/}while(result(pp[0],pp[1],pp[2]));}intstart(charp[][3]){intre,i,j,v=0;printf("请输入投票人数\n");scanf("%d",&re);****a为投票人数******/printf("请参加投票的人开始投票\n");getchar();/******输入时以回车结束******/for(i=0;i{intflag=0;for(j=0;jscanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2])flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
max=y;
k='b';
if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)printf("三位候选人得分:\n");elseprintf("两位候选人得分:\n");if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);if(z>0)printf("c:%d\n",z);if(!l)printf("祝贺%c当选冠军\n",k);/******输出最后结果******/returnl;}如果l返回主程序,若l为真值,则代表最后两位候选人分数还相同,主程序的do,while循环,可以再次统计票数,再次比较得分,直到选出最后的足球先生。6.程序代码#include<>#include<>intstart(charp[][3]);voidcount(inta,charp[][3],intpp[]);intresult(inta,intb,intc);intm;voidmain(){inta;m=3;intpp[3]={0,0,0};do{charp[100][3]={{0}};/******p[100][3]赋初值,清空******/a=start(p);count(a,p,pp);/******计算得分******/}while(result(pp[0],pp[1],pp[2]));}intstart(charp[][3]){intre,i,j,v=0;printf("请输入投票人数\n");scanf("%d",&re);****a为投票人数******/printf("请参加投票的人开始投票\n");getchar();/******输入时以回车结束******/for(i=0;i{intflag=0;for(j=0;jscanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2])flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
max=z;
k='c';
}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){
printf("请重新投票\n");
/******若最高票数有两人相同,提示重新投票******/
l=1;
if(m==3)
printf("三位候选人得分:
\n");
else
printf("两位候选人得分:
if(l)
m=2;
if(x>0)
printf("a:
%d\n",x);
if(y>0)
printf("b:
%d\n",y);
if(z>0)
printf("c:
%d\n",z);
if(!
l)
printf("祝贺%c当选冠军\n",k);
/******输出最后结果
returnl;
如果l返回主程序,若l为真值,则代表最后两位候选人分数还相同,主程序的do,while循环,可以再次统计票数,再次比较得分,直到选出最后的足球先生。
6.程序代码
voidcount(inta,charp[][3],intpp[]);intresult(inta,intb,intc);
intm;
intpp[3]={0,0,0};
do
charp[100][3]={{0}};/******p[100][3]赋初值,清空******/a=start(p);
count(a,p,pp);
计算得分******/
intre,i,j,v=0;printf("请输入投票人数\n");scanf("%d",&re);
/******输入时以回车结束******/
for(i=0;i{intflag=0;for(j=0;jscanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2])flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
{intflag=0;for(j=0;jscanf("%c",&p[i][j]);getchar();输入选举投票******/if(p[i][0]==p[i][1]||p[i][1]==p[i][2]||p[i][0]==p[i][2])flag=1;/******判断一张票上是否写有两个相同代号******/for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
scanf("%c",&p[i][j]);
输入选举投票******/
for(j=0;j{if(p[i][j]!='a'&&p[i][j]!='b'&&p[i][j]!='c')flag=1;}/******判断是否有a,b,c以外的字母******/if(flag){printf("此票无效\n");v++;for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
{if(p[i][j]!
='c')
/******判断是否有a,b,c以外的字母******/if(flag)
for(j=0;jp[i][j]=0;}/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/}printf("作废票数是%d票\n",v);returnre;}voidcount(inta,charp[][3],intpp[]){intb=a,i;intx=0,y=0,z=0;/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
p[i][j]=0;
/******若有以上情况,显示“此票无效”,忽略此票,并记录废票数******/
printf("作废票数是%d票\n",v);
returnre;
/******'a','b','c'分别代表三个候选人xyz分别是他们的得分******/for(i=0;i{if(p[i][0]=='a')x+=5;elseif(p[i][1]=='a')x+=3;elseif(p[i][2]=='a')x+=2;if(p[i][0]=='b')y+=5;elseif(p[i][1]=='b')y+=3;elseif(p[i][2]=='b')y+=2;if(p[i][0]=='c')z+=5;elseif(p[i][1]=='c')z+=3;elseif(p[i][2]=='c')z+=2;if(p[i][0]=='0')continue;}pp[0]=x;pp[1]=y;pp[2]=z;}intresult(inta,intb,intc){intx,y,z,max=0,s=0,l=0;chark;x=a;y=b;z=c;max=x;k='a';if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
max=x;
k='a';
if(max{max=y;k='b';}if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
if(max{max=z;k='c';}if(max==x&&max==y||max==x&&max==z||max==y&&max==z){printf("请重新投票\n");/******若最高票数有两人相同,提示重新投票******/l=1;}if(m==3)\n");\n");printf("三位候选人得分:elseprintf("两位候选人得分:if(l)m=2;if(x>0)printf("a:%d\n",x);if(y>0)printf("b:%d\n",y);printf("c:%d\n",z);if(!l)printf("祝贺%c当 输出最后结果returnl;选冠军\n",k);******/}7.程序运行结果 1、主函数运行,输入选票信息3、统计选票,输出结果 8.编程中遇到的困难及解决方法在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。这是,error只有一个,但是错误的地方很多,且都在括号处。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程序看了一遍后才会发现是一个大括号的问题。通常少的是“{”或者“}”,错误位置会出现在缺少括号位置之后的其他大括号出现的地方。只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。在帮同学修改程序的过程中,也遇到过一个问题。在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。9.总结心得及良好建议此次实习为期一周,我学到了很多,也知道了很多的不足。通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!10.致谢在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。我觉得自己说学的东西不多,但是可以将它们运用出来。在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。同时,在这次实习中,邵老师对我的帮助对我最难忘。题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。总之,我真诚的感谢在这次实习中给过我帮助的人!
printf("祝贺%c当
输出最后结果
选冠军\n",k);
7.程序运行结果
1、主函数运行,输入选票信息
3、统计选票,输出结果
8.编程中遇到的困难及解决方法
在编程的过程中,很容易出现一个问题,就时少大括号“}”的问题。
这是,error只有一个,但是错误的地方很多,且都在括号处。
按照计算机所指出的错误位置寻找是不容易找出错误的。
直到整个程序看了一遍后才会发现是一个大括号的问题。
通常少的是“{”或者“}”,
错误位置会出现在缺少括号位置之后的其他大括号出现的地方。
只要这种情况发生后,往前找是否有大括号缺失就可以将问题很快解决了。
在帮同学修改程序的过程中,也遇到过一个问题。
在头文件后定义了子函数,可是之后忘了编写子函数,在纠错时,有的是不会发现错误的,但是连接过程中就会报告出错。
我觉得在以后的编程过程中,最好用什么函数写什么函数,后者在写完一个子函数后再在头文件底下声明。
9.总结心得及良好建议
此次实习为期一周,我学到了很多,也知道了很多的不足。
通过老师的精心指导带领下,我不仅获得了很多新知识,还好好复习了一下以前学的知识。
在这之前,我们已经对C语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。
C语言课堂上许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。
然而要使用C语言这个工具解决实际问题,又必须掌握它。
通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。
对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。
我所编的虽然只是一个小程序,但是每一步的编的过程,让我懂得很多。
重温一下C语言,因为过了计算机二级,因而编程比较容易懂,但是通过练习,发现理论与实际的差距。
编程从一开始全部编到一个main函数中到,最后逐个分块,到添加功能,一点一点的进步让我很欣喜,对编程的兴趣也更加浓厚。
此次实习,不仅学到了有关c语言的知识,还学到了一些有关c++方面的知识,动手能力也得到了历练,是很好的一次机会!
10.致谢
在C语言的实习过程中,让我巩固了C语言的基础知识,以前从来没有这样编过完整的程序,实习让我有这样的一个机会,自己独立编写程序。
我觉得自己说学的东西不多,但是可以将它们运用出来。
在实习过程中,首先我要感谢我的老师,一个是带我走进C语言大门的曹老师,因为她,我开始喜欢C语言,把所学知识掌握牢固。
同时,在这次实习中,邵老
师对我的帮助对我最难忘。
题目本身是很简单的,在老师的教学风格影响下,我在编写完最初程序后,有自己添加了很多功能。
总之,我真诚的感谢在这次实习中给过我帮助的人!
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1