标题:[求助]扑克排序问题
只看楼主
yz1987cn
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-3-5
 问题点数:0 回复次数:6 
[求助]扑克排序问题
13张同花色扑克(A~K),按一定顺序排好。将最上面一张翻开是A;再从余下的牌开始数,第一放到这叠牌的底部,第二张翻开是2;再从余下的牌开始数,第一放到底部,第二放到底部,翻开第三张是3;如此反复,直到最后翻开的牌顺序是A,2,3~J,Q,K,问开始的牌顺序是什么~~说清楚了吧,不知道怎么做
搜索更多相关主题的帖子: 扑克 
2006-03-28 23:07
仁者无敌
Rank: 1
等 级:新手上路
帖 子:199
专家分:0
注 册:2006-3-5
得分:0 
没看懂啊

I am a programmer !
2006-03-29 10:41
ggmm
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-3-23
得分:0 
说详细点吧

2006-03-29 13:38
yz1987cn
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-3-5
得分:0 

不好意思没说清楚.再说一次:手里有一叠牌A到K。从上往下开始,把第一张翻开到桌面上是A;接着开始数1,2,把1牌放到这叠牌的底部,数到2时翻开到桌面,点数时2;接着开始数1,2,3,1,2顺次方到底部,第3张翻开到桌面是3... ...如此到最后桌面上摆的牌按顺序是A,2,3,4,5,6,7,8,9,10,J,Q,K。求开始时候派在受理的顺序


潘安退避三舍,宋玉甘拜下风
2006-03-29 22:22
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
得分:0 
这应该是你想要的

[CODE]

#include "stdio.h"
#include "conio.h"
void Mov(int);
int a[13]={0};
void main()
{
int i;

a[12]=13;
a[11]=12;
for(i=1;i<=11;i++)
Mov(11-i); /*传递的是下标*/
for(i=0;i<13;i++)
printf("%5d",a[i]);
getch();
}

void Mov(int m)
{
int n,i;
int b[13]={0};

n=(m+1)%(12-m); /*m+1为上翻次数,12-m为当前牌数量*/
for(i=12;i>=m+1;i--) /*相当于把原来的几张牌向后移n位*/
if(i+n>12)
b[i+n-13]=a[i]; /*移出的保存在别的数组*/
else
a[i+n]=a[i]; /*做n位移动*/
for(i=0;b[i]!=0;i++)
a[m+1+i]=b[i]; /*把移出的放回*/
a[m]=m+1;
}

[/CODE]

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-03-30 00:29
仁者无敌
Rank: 1
等 级:新手上路
帖 子:199
专家分:0
注 册:2006-3-5
得分:0 

我试了一下,版主是对的


I am a programmer !
2006-03-30 06:25
yz1987cn
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-3-5
得分:0 
wo 也试了,对的,现在去看能理解不。。。

潘安退避三舍,宋玉甘拜下风
2006-03-30 15:40



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-53566-1-1.html




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

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