ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:94.21KB ,
资源ID:15798008      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-15798008.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(完整版C语言课程设计实验报告.docx)为本站会员(b****7)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

完整版C语言课程设计实验报告.docx

1、完整版C语言课程设计实验报告第1章 问题描述1.1 题目足球比赛积分排行榜程序1.2基本要求(1)10个足球队进行9轮循环赛,胜一场积3分,平一场积1分,输一场积0分。(2)如果两个队积分相同,进行净胜球的比较,如果净胜球再相同进行总进球的比较。(3)编写一程序输入每轮比赛的比分,并可以存储。(4)最后统计出每轮比赛的积分榜。第2章 需求分析1.1软件的基本功能(1) 输入10个足球队的9轮比赛进球数。(2) 计算10个球队的积分,净胜球,总进球。(3) 对9轮比赛进行排序。1.2输入/输出形式由键盘输入,屏幕输出,并且以TXT形式保存。1.3测试数据要求输入九轮比赛10个足球队的进球数,由系

2、统统计积分、净胜球、总进球数,并输出。第3章 概要设计1.1主程序头文件:#include说明:main函数的头文件,控制整个程序。#include说明:清屏的头文件。#include 说明:包括了大量的函数原型,调用现成的库函数。#include说明:基于char*的字符串处理函数。全局变量:void input(); 输入数据函数void sort(); 排序数据函数void display(); 显示数据函数void save(); 保存数据函数第4章 详细设计1.1数据类型int整型 char字符型1.2伪码算法(1)原始数据录入模块void input()/*原始数据录入模块*/ i

3、nt i=0,j=0,k; char ch; printf(t1.录入球队信息t);for (i=0; i9; i+) /i 代表9轮 printf(nnt输入第%d轮比赛的信息n,i+1); for (n=0;n5;j+) /n 代表每轮的5场比赛,每场有2各队 某场的第一只队 输入队名到matchij.Name; 输入进球数到matchij.d_goal; 某场的第二只队 输入队名到matchij+5.Name; 输入进球数到matchij+5.d_goal; 算每个队的失球数 matchin.s_goal = matchin+1.d_goal;第一只队的失球数等于第二只队的失球数; 第二

4、只队的失球数等于第一只队的进球数; 算每个队的得分 如果第一只队的进球数等于第二只队的进球数, 两个队的得分各1分; 如果第一只队的进球数大于第二只队的进球数, 第一个队3分, 第二个队0分; 如果第一只队的进球数小于第二只队的进球数, 第一个队0分, 第二个队3分; 算第一只队的截至到本轮总得分, 截至到本轮净胜球, 截至到本轮总进球 if (i = 0) 第一轮的截至到本轮总得分=本场得分;第一轮的截至到本轮净胜球=本场净胜球;第一轮的截至到本轮总进球=本场进球数; else for(j=0;j10;j+) for (k=0; k10; k+) if (matchij的队名和matchi-

5、1k的队名一样) matchij的截至到本轮总得分=matchi-1k的截至到本轮总得分+matchij的本场得分; matchij的截至到本轮净胜球,截至到本轮总进球同理计算; printf(tt按任意键返回主菜单.); fflush(stdin); fflush(stdin);ch=getch();system(cls); (2)排序数据函数void sort()/*排序数据函数*/ struct MatchInfo match; int i,j,n; for(i=0;i9;i+) for(j=0;j9;j+) for(n=j+1;n10;n+) if(Matchij总积分小于Matchi

6、n的总积分) Matchij结构体与Matchin结构体调换 void sort1()/*排序数据函数*/ struct MatchInfo match; int i=0,j,n; for(i=0;i9;i+) for(j=0;j9;j+) for(n=j+1;n10;n+) if(Matchij总积分等于Matchin的总积分) if(Matchij总净胜球小于Matchin.总净胜球) Matchij结构体与Matchin结构体调换 void sort2()/*排序数据函数*/ struct MatchInfo match; int i=0,j,n; for(i=0;i9;i+) for(

7、j=0;j9;j+) for(n=j+1;n10;n+) if(Matchij总积分等于Matchin的总积分) if(Matchij总净胜球小于Matchin.总净胜球) if(Matchij总进球小于Matchin总进球) Matchij结构体与Matchin结构体调换 1.3 程序流程图第5章 操作1.1 进入足球比赛积分排行榜界面图2void main()/*主函数*/ int as; char ch; do printf(nnnntt*&*&*&*&*&*&*&*&*&*); start: printf(nnnnttt 欢迎进入足球比赛积分排行榜n); printf(nnnntt*按

8、任意键继续*); ch=getch(); while(!ch); system(cls); /*一下为功能选择模块*/说明:进入欢迎页面。1.2进入目录图3do printf(ntttt1.录入球队信息ntttt2.显示积分排行榜ntttt3.保存积分ntttt4.退出n); printf(tttt选择功能选项(输入所选功能前的数字):); fflush(stdin); /*可用可不用,用于清除缓存防止下次用scanf输入是出现错误*/ scanf(%d,&as); switch(as) case 1:system(cls); input(); break; case 2:system(cls

9、); display(); break; case 3:system(cls); save(); break; case 4:system(exit); exit(0); default:system(cls); goto start; while(1);/*while(1),1表示真,所以while(1)表示永远循环下去, */ /*至此功能选择结束*/ 说明:上面的函数用来选择后续操作。1.3输入球队比赛信息void input()/*原始数据录入模块*/ int i=0,j=0,k; char ch; printf(t1.录入球队信息t); for (i=0; i9; i+) print

10、f(nnt输入第%d轮比赛的信息n,i+1); for (j=0;jMatchij+5.d_goal) Matchij.score=3;Matchij+5.score=0; if(Matchij.d_goalMatchij+5.d_goal) Matchij.score=0;Matchij+5.score=3; printf(%s的本场净胜球是%d,积分是%dn,Matchij.name,Matchij.j_goal,Matchij+5.score); printf(%s的本场净胜球是%d,积分是%dn,Matchij+5.name,Matchij+5.j_goal,Matchij+5.sco

11、re); for(i=0;i9;i+) if(i=0) for (j=0;j10;j+) Matchij.total_score=Matchij.score; Matchij.total_j_goal=Matchij.j_goal; Matchij.total_z_goal=Matchij.d_goal; else for(j=0;j10;j+) for(k=0;k10;k+) if (0=strcmp(Matchij.name,Matchi-1k.name) Matchij.total_score=Matchi-1k.total_score+Matchij.score; Matchij.to

12、tal_j_goal=Matchi-1k.total_j_goal+Matchij.j_goal; Matchij.total_z_goal=Matchi-1k.total_z_goal+Matchij.d_goal; printf(tt按任意键返回主菜单.); fflush(stdin); fflush(stdin); ch=getch(); system(cls); 说明:上面的函数用来读入键盘输入的数据,并且判断每个队伍的单轮积分情况、净胜球情况、总进球情况。1.4 显示九轮比赛排行榜void sort()/*排序数据函数*/ struct MatchInfo match; int i,

13、j,n; for(i=0;i9;i+) for(j=0;j9;j+) for(n=j+1;n10;n+) if(Matchij.total_scoreMatchin.total_score) match=Matchin; Matchin=Matchij; Matchij=match; void sort1()/*排序数据函数*/ struct MatchInfo match; int i=0,j,n; for(i=0;i9;i+) for(j=0;j9;j+) for(n=j+1;n10;n+) if(Matchij.total_score=Matchin.total_score) if(Ma

14、tchij.total_j_goalMatchin.total_j_goal) match=Matchin; Matchin=Matchij; Matchij=match; void sort2()/*排序数据函数*/ struct MatchInfo match; int i=0,j,n; for(i=0;i9;i+) for(j=0;j9;j+) for(n=j+1;n10;n+) if(Matchij.total_score=Matchin.total_score) if(Matchij.total_j_goal=Matchin.total_j_goal) if(Matchij.tota

15、l_z_goalMatchin.total_z_goal) match=Matchin; Matchin=Matchij; Matchij=match; void display()/*显示数据函数*/ int i=0,j=0; char as; sort(); sort1(); sort2(); do printf(tt球队信息列表n); for(i=0;i9;i+) printf(ttt第%d轮比赛信息n,i+1); printf(t代号tt积分t净胜球t总进球n); for(j=0;j10;j+) printf(t%stt%dt%dt%dn,Matchij.name,Matchij.to

16、tal_score,Matchij.total_j_goal,Matchij.total_z_goal); printf(tt按任意键返回主菜单.); fflush(stdin); as=getch(); while(!as); system(cls);说明:上面的函数用来判断每个队伍的积分情况、净胜球情况、总进球情况,并且由屏幕输出。1.5 保存数据void save()/*保存数据函数*/ FILE *fp; int i,j; fflush(stdin); if(fp=fopen(d:足球积分排行榜.txt,wt)!=NULL) for(i=0;i9;i+) fprintf(fp,ttt第

17、%d轮比赛信息n,i+1); fprintf(fp,t代号tt积分t净胜球t总进球n); for(j=0;j10;j+) fprintf(fp,t%stt%dt%dt%dn,Matchij.name,Matchij.total_score,Matchij.total_j_goal,Matchij.total_z_goal); fclose(fp); printf(n); printf(ttt操作成功!n); system(pause); system(cls);说明: 将每轮比赛的积分输出,并且保存在新建的足球积分排行榜.txt 文件中。1.6 由D 盘查看数据第6章 参考文献【1】:王新 孙雷 c语言课程设计.清华大学出版社【2】:谭浩强 c程序设计(第三版)清华大学出版社

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2