#include<stdio.h>
#include<stdlib.h>
#include<Windows.h>
int result[100][1000000];
int count = 0;
int num1[100][1];
void  main() {
    int flag = 0, flag1;
    while (flag == 0)
    {
        printf("欢迎进入黄金点游戏\n");
        int i, a, j;
        int num[1000], sum = 0, l, m, G, num2[1000], num3[100], num4[100], t;
        printf("请输入本轮参加游戏的人数\n");
        scanf("%d", &a);//玩家人数
        for (i = 0; i < a; i++)//输入各个玩家的数据
        {
            printf("请第%d成员输入数据",i+1);
            scanf("%d", &num[i]);
            if (num[i]<0)
            {
                exit(0);
            }
            else
            {
                if (num[i]>100)
                {
                    exit(0);
                }
            }
        }
        for (i = 0; i < a; i++)
        {
            l = num[i];
            sum = sum + l;
        }
        G = (int)(sum / a*0.618);//G值
        for (i = 0; i < a; i++)
        {
            l = abs(num[i]-G);
            num2[i] = l;
            num3[i] = l;
        }
        for (i = 1; i < a; i++)//冒泡排序
        {
            for (j = 0; j < a - 1; j++)
            {
                if (num3[j] > num3[j + 1])
                {
                    t = num3[j];
                    num3[j] = num3[j + 1];
                    num3[j + 1] = t;
                }
            }
        }
        for (i = 0; i < a; i++)//num4=0
        {
            num4[i] = 0;
        }
        for (i = 0; i < a; i++)
        {
            l = num3[0], m = num3[a - 1];
            if (num2[i] == l)
            {
                num4[i] = a;
            }
            if (num2[i] == m)
            {
                num4[i] = -2;
            }
        }
 
        for (i = 0; i < a; i++)//输出各个玩家的信息
        {
            printf("第%d个成员的成绩为%d\n",i+1, num4[i]);
        }
        for (i = 0; i < a; i++)
        {
            result[count][i] = num4[i];
        }
        num1[count][0] = a;
        count++;
        printf("是否还想继续,是请按0,否请按任意键退出游戏");
        scanf("%d", &flag);
    }
    int n, i;
    printf("请问是否想查看之前的成绩,是请输入0,否按任意键退出\n");
    scanf("%d", &flag1);
    while (flag1 == 0)//查看各轮结果的比赛成绩
    {
        printf("请输入想查看的第几轮成绩");
        scanf("%d", &n);
        for (i = 0; i<num1[n - 1][0]; i++)
        {
            printf("第%d个成员的成绩为%d\n",i+1, result[n - 1][i]);
        }
        printf("是否还要继续观看,是请输入0,否按任意键退出\n");
        scanf("%d", &flag1);
    }
    system("pause");
}
 
来自http://www.cnblogs.com/b6772x33a/p/5372344.html   kinny

结对项目--黄金点游戏(邓乐&曾亮)的更多相关文章

  1. 结对编程—黄金点游戏WinForm单机版

    本小游戏场景来自邹欣老师的<移山之道>一书: "阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫"黄金点"的游戏: ...

  2. 黄金点游戏 结队i项目

    结对编程——黄金点游戏   本次的结对编程的项目是黄金点游戏,我的结对对象是冯雨倩,我们的编程能力都不太好,而且都对C语言更熟悉些,因此我们决定用C语言来实现. (1)分工:角色分配:冯雨倩是领航员, ...

  3. 结对项目——黄金分割点游戏(陈香宇&蔡春燕)

    结对项目名称:黄金分割点游戏(单机) 运行环境:vs 编译语言:c语言 项目分析: 实现的功能:用户可以选择继续游戏并且可以保存之前获得的分数,但是为了游戏的公平性,游戏的参数人数一开始用户确定以后就 ...

  4. 软件工程 in MSRA 黄金点游戏-第一次结对编程

    简单介绍 第一次结对编程,邹欣老师选择了一个博弈游戏作为题目.博弈论是一门非常有趣的学科.之前竞赛时接触的博弈论大部分都是存在均衡点/必胜策略的.像这次这种多人参与,没有完美策略,你方唱罢我登台的游戏 ...

  5. 黄金点游戏(js+css)

    一.项目描述:黄金点游戏 黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0-100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0 ...

  6. Python Web实战 - 基于Flask实现的黄金点游戏

    一.简介 团队成员: 领航者:张旭 驾驶员:张国庆 项目简介: 项目名称:基于B/S模式的黄金点游戏 采用技术: 后端:Python + Sqlite3 前端:HTML + CSS + JS + Bo ...

  7. [2017BUAA软工助教]结对项目小结

    2017BUAA结对项目小结 一.作业链接 http://www.cnblogs.com/jiel/p/7604111.html 二.评分细则 1.注意事项 按时间完成并提交--正常评分 晚交一周以内 ...

  8. [buaa-SE-2017]结对项目-数独程序扩展

    结对项目-数独程序扩展 step1~step3:github:SE-Sudoku-Pair-master step4:github:SE-Sudoku-Pair-dev-combine step5:g ...

  9. [2017BUAA软工]结对项目:数独扩展

    结对项目:数独扩展 1. Github项目地址 https://github.com/Slontia/Sudoku2 2. PSP估计表格 3. 关于Information Hiding, Inter ...

随机推荐

  1. 初识NodeJS服务端开发(Express+MySQL)

    http://www.alloyteam.com/2015/03/sexpressmysql/

  2. YTU 2958: 代码填充--雨昕学画画

    2958: 代码填充--雨昕学画画 时间限制: 1 Sec  内存限制: 128 MB 提交: 156  解决: 102 题目描述 雨昕开始学画水彩画,老师给雨昕一个形状(Shape)类,雨昕在Sha ...

  3. Ubuntu+anaconda环境里安装opencv

    在Ubuntu的Anaconda环境下安装OpenCV比较方便,直接在终端中输入以下命令: conda install --channel https://conda.anaconda.org/men ...

  4. bzoj1858 [Scoi2010]序列操作——线段树

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1858 线段树...调了一个上午...(后面带 // 的都是改出来的) lazy 标记的下放好 ...

  5. DOS命令汇总

    汇总如下: Dos基础命令梳理思路 小编初来乍道, 不清楚我的插图在我发布后会不会不清晰, 因为我在排版时看到插入的图片是清晰的, 以前见其他条友发布的文章中总有不晰的图片, 很是不爽. 所以如果有不 ...

  6. JavaScript 算法与数据结构(转载)

    JavaScript 算法与数据结构 https://github.com/trekhleb/javascript-algorithms/blob/master/README.zh-CN.md

  7. ES6躬行记(24)——代理和反射

    代理和反射是ES6新增的两个特性,两者之间是协调合作的关系,它们的具体功能将在接下来的章节中分别讲解. 一.代理 ES6引入代理(Proxy)地目的是拦截对象的内置操作,注入自定义的逻辑,改变对象的默 ...

  8. J201700525-hm

    スケルトン 骨組み(ほねぐみ) 骨架 リソース    资源

  9. bzoj 3709: [PA2014]Bohater【贪心】

    先打能回血的,按消耗从小到大打: 然后按回血量降序打剩下的(把消耗和回血反着看就是上一种怪,打法一样): 中间体力小于0就输出无解 #include<iostream> #include& ...

  10. Spring boot下,集成任务调度中心(XXL-JOB)

    一.使用背景 目前项目中,采用的是微服务框架,由于在微服务中,存在需要定时的任务.但如果定时任务维护在每个微服务下,当微服务部署多个实例的情况下,会出现定事任务多次执行的情况.并且在解决问题的基础上, ...