| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 944 人关注过本帖
标题:求大神修改。。。。。。。一个小游戏这个对吗
只看楼主 加入收藏
晓吉吉
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-1-23
收藏
 问题点数:0 回复次数:4 
求大神修改。。。。。。。一个小游戏这个对吗
题目:11.    模拟扑克牌发牌
问题描述:
扑克牌发牌游戏:模拟扑克牌发牌过程,只考虑4种花色的52只牌,不考虑大鬼和小鬼,给4个人发牌,每人发13只牌。
提示:
(1)黑桃( )、红桃( )、梅花( )、方片( )的扑克牌图样对应的ASCII码值分别为6、3、5、4,即将这4个整数以%c的格式打印即可得到所对应的字符图样。例如:printf("扑克牌自动发牌 %c(黑) %c(红) %c(梅) %c(方):", 6, 3, 5, 4);
(2)扑克牌发牌的过程是一个产生随机整数的过程,产生随机数的库函数是rand( ),对应的头文件是 <stdlib.h>。例如要产生52以内的整数,则可以使用如下语句:
x = rand( ) % 52;  /* x 赋值为随机产生的[0~51]之间的整数值 */
   #include<stdio.h>
#include<stdlib.h>
#include<time.h>
main()
{
    int i=0,j,temp=0,order[51]={0},k=0;
    order[51]=100;
    srand(time(NULL));
    while(order[51]==100)
    {
        k=rand()%52;
        for(j=0;j<i;j++)
        {
            if(order[j]==k)
            {
                temp=1;break;
            }
            else
            {
                temp=0;
            }
        }
        if(temp==0)
        {
            order[i]=k;
            i++;
        }
    }
    //for(i=0;i<=51;i++)
    //{
    //printf("%d ",order[i]);
    //}
    printf("第一人\n");
    printf("%c",6);
    for(i=0;i<13;i++)
    {
        if(order[i]/13==0)
            printf("%d ",order[i]+1);
    }
    printf("\n");
    printf("%c",3);
    for(i=0;i<13;i++)
    {
        if(order[i]/13==1)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("%c",5);
    for(i=0;i<13;i++)
    {
        if(order[i]/13==2)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("%c",4);
    for(i=0;i<13;i++)
    {
        if(order[i]/13==3)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("第二人\n");
    printf("%c",6);
    for(i=13;i<26;i++)
    {
        if(order[i]/13==0)
            printf("%d ",order[i]+1);
    }
    printf("\n");
    printf("%c",3);
    for(i=13;i<26;i++)
    {
        if(order[i]/13==1)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("%c",5);
    for(i=13;i<26;i++)
    {
        if(order[i]/13==2)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("%c",4);
    for(i=13;i<26;i++)
    {
        if(order[i]/13==3)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("第三人\n");
    printf("%c",6);
    for(i=26;i<39;i++)
    {
        if(order[i]/13==0)
            printf("%d ",order[i]+1);
    }
    printf("\n");
    printf("%c",3);
    for(i=26;i<39;i++)
    {
        if(order[i]/13==1)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("%c",5);
    for(i=26;i<39;i++)
    {
        if(order[i]/13==2)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("%c",4);
    for(i=26;i<39;i++)
    {
        if(order[i]/13==3)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("第四人\n");
    printf("%c",6);
    for(i=39;i<52;i++)
    {
        if(order[i]/13==0)
            printf("%d ",order[i]+1);
    }
    printf("\n");
    printf("%c",3);
    for(i=39;i<52;i++)
    {
        if(order[i]/13==1)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("%c",5);
    for(i=39;i<52;i++)
    {
        if(order[i]/13==2)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");
    printf("%c",4);
    for(i=39;i<52;i++)
    {
        if(order[i]/13==3)
            printf("%d ",order[i]%13+1);
    }
    printf("\n");                       
    system("pause");
    return 0;
      }
搜索更多相关主题的帖子: 小游戏 扑克牌 
2013-06-20 15:12
suchengjie
Rank: 1
等 级:新手上路
帖 子:118
专家分:1
注 册:2013-3-2
收藏
得分:0 
看不太明白
2013-06-23 11:41
Mhugh
Rank: 2
来 自:广西
等 级:论坛游民
帖 子:7
专家分:33
注 册:2013-8-11
收藏
得分:0 
关于随机数,假如你要产生某个范围内不相等的数,那么越往后面,得到随机数的概率越小,有可能出现在有限的时间内,根本就得不到最后的随机数的情况

我不在乎对你焦头烂额,我只在乎我能够把你一次次的写对。
2013-08-18 10:21
人_神
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:44
专家分:103
注 册:2013-8-1
收藏
得分:0 
你应该先考虑一下,如何不让扑克牌重复出现。如果重复了就不是一副牌了
2013-08-20 21:44
eytao
Rank: 2
等 级:论坛游民
帖 子:3
专家分:20
注 册:2009-5-31
收藏
得分:0 
看了一点点。你都没把代码放机器上跑跑试试看来着。
看到一堆的bug。
2013-09-08 21:38
快速回复:求大神修改。。。。。。。一个小游戏这个对吗
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027177 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved