博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
结对项目:黄金点游戏
阅读量:7070 次
发布时间:2019-06-28

本文共 2422 字,大约阅读时间需要 8 分钟。

领航员:干友恒   驾驶员:曹纪涛

编译语言:c语言

编程环境是Visual C++ 6.0

 

我们限定输入的数字是0-100之间的有理数,提供一个菜单给用户选择,玩家的人数和游戏的次数都由用户来输入,再将玩家输入的数字算出黄金点,再和玩家输入的数字进行比较,最后输出玩家的得分,由得分可以看出谁是胜利者。

心得:通过本次实验对c语言的运用更加熟练,了解了结对项目中的合作配合,对现代软件工程团队有了初步的了解认识。

GITHUB:https://github.com/GYH1205392387/MY-REPOSITORY/blob/master/%E7%BB%93%E5%AF%B9%E9%A1%B9%E7%9B%AE%EF%BC%9A%E9%BB%84%E9%87%91%E7%82%B9%E6%B8%B8%E6%88%8F

//代码参考网上的,来源忘记了:)

1 #include "stdio.h" 2 #include "string.h" 3 #include "stdlib.h" 4  5 struct 6 { 7     float data; 8     float grade; 9 }Player[100]; 10 void game();11 void main()12 {13     int n;14     printf("--------------黄金点游戏------------\n");15     printf("\n规则:输入的数仅为0~100之间的有理数\n\n");16     printf("--------------1.开始游戏------------\n");17     printf("--------------2.退出游戏------------\n");18     printf("------------请输入您的选择:--------\n");19     scanf("%d", &n);20     system("cls");21     if (n == 1)22     {23         game();24 25     }26     else27         exit;28 }29 30 31 void game()32 {33     int  N, a, b, c, i, j, k;34     35     printf("请输入游戏人数:");36     scanf("%d", &N);37     printf("\n请输入游戏次数:");38     scanf("%d", &a);39     for (i= 0; i < N; i++)40     {41         Player[i].grade = 0;42     }43     for (j = 1; j <= a; j++)44     {45         int num = 0, max = 100, min = 0;46         float G=0,m=0;47         printf("\n第%d次游戏:\n",j);48         for (i = 0; i < N; i++)49         {50          loop: printf("玩家%d输入的数为:",i+1);51                scanf("%f", &Player[i].data);52                if(Player[i].data>=0&&Player[i].data<=100)53                {54                   num += Player[i].data;55                }56                else57                {58                   printf("输入的数据有误,请重新输入!\n");59                   goto loop;60                }61         }62         G = (float)num*0.618 / N;63         printf("\n黄金G点值为:%f\n\n",G);64         for (k = 0; k < N; k++)65         {66             m = abs((float)Player[k].data - G);67             if (m>=min)68             {69                 min = m;70                 b = k;71             }72             if (m <= max)73             {74                 max = m;75                 c = k;76             }77         }78         Player[b].grade += -2;79         Player[c].grade += 2;80         for (i = 0; i < N; i++)81         {82             printf("玩家%d的得分为:", i+1);83             printf("%f\n", Player[i].grade);84         }85     }86 }

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/MeiT/p/7744884.html

你可能感兴趣的文章
我的屌丝giser成长记-研一篇(下)
查看>>
raft 分布式协议 -- mongodb
查看>>
[TypeScript] Using Lodash in TypeScript with Typings and SystemJS
查看>>
ASP.Net MVC开发基础学习笔记(1):走向MVC模式
查看>>
ASP.NET MVC生命周期介绍(转)
查看>>
如何设置android studio让程序运行在真机中
查看>>
SolrNet高级用法(分页、Facet查询、任意分组)
查看>>
[android] 天气app布局练习
查看>>
MFC知识点(DDX_Control 与 DDX_Text ,ON_COMMAND和ON_MESSAGE)
查看>>
JavaScript操作JSON的方法总结,JSON字符串转换为JSON对象
查看>>
ocx控件打印之基础篇
查看>>
redis 异常解决办法
查看>>
2016跨境电商五大物流模式盘点
查看>>
AFNetworking 3.0 源码解读(四)之 AFURLResponseSerialization
查看>>
MongoDB常用操作命令大全
查看>>
Delphi 7使用自定义图标关联文件类型
查看>>
EF实体框架之CodeFirst八
查看>>
【转载】这里面几个小故事说的真好
查看>>
ASP.NET的session操作方法总结
查看>>
数据库合并数据sql
查看>>