#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. Windows平台cocos2d-x 3.0 android开发环境

    cocos2d-x升级到3.0后变化不小,除了API的变化(主要是函数和类名称变化,以及使用了C++11的不少特性.function/bind, lamda, std::thread-),创建和编译p ...

  2. 连接mysql时报:message from server: "Host '192.168.76.89' is not allowed to connect to this MySQL server

    处理方案: 1.先用localhost方式连接到MySQL数据库,然后使用MySQL自带的数据库mysql; use mysql: 2.执行:select host from user where u ...

  3. C语言-1.结构体,2.枚举,3.typedef,4.预处理指令的概念,5.条件编译

    1. 结构体数组 定义:由若干个相同类型的结构体变量组成的有序的集合. 定义格式: 1) 定义结构体的同时定义结构体数组 struct Car{ int lunzi; int speed; }cars ...

  4. Linux网络协议栈(四)——链路层(1)

    1.接收帧当网络适配器接收到数据帧时,就会触发一个中断,中断处理程序执行一些需要及时处理的任务,然后在下半部进行其它可以延迟的处理.中断处理程序主要进行以下一些操作:(1)    分配sk_buff数 ...

  5. 深入分析glibc内存释放时的死锁bug

    通常我们认为一旦内存写溢出,程序就很容易崩溃.所以服务器上通常会对一些重要进程做脚本保护,一旦崩溃立即重新拉起. 最近发现我们一个公共服务内存写溢出时程序没有崩溃,而是卡死了. 为了深入分析原因,我们 ...

  6. The Power of Android Action Bars(转载)

    转自:http://www.informit.com/articles/article.aspx?p=1743642

  7. HDU1254:推箱子(bfs+dfs)

    传送门 题意 给出一副图 0.空地1.墙2.箱子3.目的地4.人所在的位置 问最少几步能将箱子推到目的地 分析 这道题难度略大(菜鸡),首先用vis[bx][by][mx][my]记录当箱子(bx,b ...

  8. NOIp 2017 奶酪 【并查集】 By cellur925

    题目传送门 Orz去年考场上做这道题的我应该还在抱怨没学过空间几何,不一会太困了就开始打瞌睡,然后为了防止睡觉开始在devc++上写默写离骚(逃 思路:如果两个空洞相交,那么把他们并在一个集合里.最后 ...

  9. 使用pabot并行执行robotframework用例

    主要观点:使用pabot并行运行robotframework,可以解决:robotframework执行案例时间长的问题 解决执行案例时间长的方案: 目的: 缩短案例的运行时间 两种方法: 将大的项目 ...

  10. python 37条编程技巧-汇总(转载+整理)

    1.原地交换两个数字 x, y =10, 20 print x, y y, x = x, y print x, y 10 20 20 10 2.链状比较操作符 n = 10 print 1 < ...