c语言课程设计-保龄球积分

c语言课程设计-保龄球积分

ID:23325814

大小:116.00 KB

页数:6页

时间:2018-11-06

c语言课程设计-保龄球积分_第1页
c语言课程设计-保龄球积分_第2页
c语言课程设计-保龄球积分_第3页
c语言课程设计-保龄球积分_第4页
c语言课程设计-保龄球积分_第5页
资源描述:

《c语言课程设计-保龄球积分》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、题目:保龄球计分【问题描述】打保龄球是用一个滚球去撞击10个站立的瓶,将瓶击倒。一局分10轮,每轮可滚球1 次或多次,以击到的瓶数为依据计分,一局得分为10轮得分之和,而每轮的得分不仅与本轮的滚球情况有关,还可能与后一轮或两轮的滚球情况有关,即:某轮某次滚球击倒的瓶数不仅要计入本轮得分,还可能会计入前一轮或两轮得分。计分规则如下:①若某一轮的第一次滚球就击倒全部10个瓶,则本轮不再滚球(若是第10轮还需加2次滚球),该轮得分为本次击倒瓶数10与以后2次滚球所击倒瓶数之和。②若某一轮的第一次滚球未击倒全

2、部10个球,则对剩下未击倒的瓶再滚球一次,如果这2次滚球击倒全部10个瓶,则本轮不再滚球(若是第10轮还需加1次滚球),该轮得分为这2次击倒瓶数10与以后1次滚球所击倒瓶数之和。③若某一轮2次滚球未击倒全部10个瓶,则本轮不在滚球,该轮得分为这2次滚球所击倒瓶数之和。【实现提示】①模拟10个人各打一局保龄球比赛过程,统计每局各轮得分和累计总分。②逐人逐轮逐次输入一次滚球击倒的瓶数。③对10人的得分由低到高排序并显示。④最后,把排序的存入文件中。代码:/*Note:YourchoiceisCIDE*/#

3、include"stdio.h"#include"string.h"#include"stdlib.h"voidmain(){FILE*fp;intsum1(int*k);intsum2(int*k);inta[10][10][2];intsum[10][10];intsum_person[10]={0,0,0,0,0,0,0,0,0,0};inti,j,n,p;intb[10]={1,2,3,4,5,6,7,8,9,10},c;int*p1,*p2;charg[20],f[20],h[1];char

4、str1[]={"Astherankandthescoreofeachplayershownbelow:"};charstr2[]={"RANK"};charstr3[]={"NO."};charstr4[]={"SCORE"};charstr5[]={""};for(n=0;n<=9;n++)/*一局内,输入每轮每次击打保龄球个数,保存到a[n][i][j]*/{for(i=0;i<=9;i++){for(j=0;j<=1;j++){printf("请输入%d号选手第%d轮第%d次保龄球击打个数

5、:",n+1,i+1,j+1);scanf("%d",&a[n][i][j]);if(a[n][i][0]==10){a[n][i][1]=0;break;}}}}for(n=0;n<=9;n++)/*统计每人每局每轮得分,并相应赋值到sum_person[n],sum[n][i]*/{for(i=0;i<=9;i++){p1=&a[n][i][0];p=*p1+*(p1+1);switch(i){case0:case1:case2:case3:case4:case5:case6:case7:if(*

6、p1==10)sum[n][i]=sum1(p1);elseif(p==10)sum[n][i]=sum2(p1);elsesum[n][i]=p;break;case8:if(*p1==10

7、

8、p==10)sum[n][i]=sum2(p1);elsesum[n][i]=p;break;case9:sum[n][i]=p;break;}}p2=&sum[n][0];for(j=0;j<=9;j++)sum_person[n]=sum_person[n]+(*(p2+j));}for(i=0;i<=9

9、;i++)/*十个选手得分排名*/{for(n=i;n<=9;n++){if(sum_person[n]>sum_person[i]){c=sum_person[n];sum_person[n]=sum_person[i];sum_person[i]=c;c=b[n];b[n]=b[i];b[i]=c;}}}/*成绩输出到D:\work\bowling-grade.txt文件*/if((fp=fopen("D:\work\bowling-grade.txt","w"))==NULL){prin

10、tf("cantopenfile!");exit(0);}fputs(str1,fp);fputs("",fp);printf("比赛得分与排名如下:");printf("排名:选手:得分:");fputs(str2,fp);fputs(str5,fp);fputs(str3,fp);fputs(str5,fp);fputs(str4,fp);fputs("",fp);for(n=0;n<=9;n++){printf("第%d名:No

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。