自动发牌:一副扑克有52张牌,打桥牌的时候将牌分给四个人。请设计个程序完成自动发牌工作

 我来答
wangtk1982
推荐于2016-05-03 · TA获得超过3742个赞
知道大有可为答主
回答量:3206
采纳率:100%
帮助的人:1436万
展开全部
vc写的!
void CQiaopaiDlg::OnFa()
{
// TODO: Add your control notification handler code here
this->m_strj="";
this->m_strn="";
this->m_strx="";
this->m_strs="";
UpdateData(false);

srand( (unsigned)time( NULL ) );//以时间为随机种子

char b[3];
int i,y=0,m,j=0,n=0,x=0,s=0;
char se[4];
for(i=1;i<53;i++){
ji:
m=rand()%4;
y=i%4;
if(y==0)
strcpy(se,"红");
else if(y==1)
strcpy(se,"黑");
else if(y==2)
strcpy(se,"方");
else
strcpy(se,"梅");

if(m==0)
{
if(j>=13)
goto ji;
m=i%13+1;
j=j+1;
itoa(m,b,10);
m_strj=m_strj + " " + se+b;
}
else if(m==1)
{
if(n>=13)
goto ji;
n=n+1;
m=i%13+1;
itoa(m,b,10);
m_strn=m_strn + " " + se+b;
}
else if(m==2)
{
if(x>=13)
goto ji;
x=x+1;
m=i%13+1;
itoa(m,b,10);
m_strx=m_strx + " " + se+b;
}
else
{
if(s>=13)
goto ji;
s=s+1;
m=i%13+1;
itoa(m,b,10);
m_strs=m_strs + " " + se+b;
}

}
UpdateData(false);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shuta
2006-06-29
知道答主
回答量:20
采纳率:0%
帮助的人:0
展开全部
int str[52]={牌的顺序}
int c=1
for a=1 to 52
for b=1 to 4
case b=1
move str[c] to man1
case b=2
move str[c] to man2
case b=3
move str[c] to man3
case b=4
move str[c] to man4
endfor
c=c++
endfor
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式