程序要求是数字和字母一起,我只会数字的,求助一下!!!!
小明刚上小学,学会了第一个扑克牌“魔术”,到处给人表演。魔术的内容是这样的:
他手里握着一叠扑克牌:A,2,....J,Q,K 一共13张。他先自己精心设计它们的顺序,然后正面朝下拿着,开始表演。
只见他先从最下面拿一张放到最上面,再从最下面拿一张翻开放桌子上,是A;然后再从最下面拿一张放到最上面,再从最下面拿一张翻开放桌子上,是2;......如此循环直到手中只有一张牌,翻开放桌子上,刚好是K。
这时,桌上牌的顺序是:A,2,3,4,5,6,7,8,9,10,J,Q,K
请你计算一下,小明最开始的时候手里牌的顺序是怎样的。
把结果写出来,逗号分割,小明“魔术”开始时,最下面的那张牌输出为第一个数据。
#include <stdio.h>
main()
{
int a[13]={1,2,3,4,5,6,7,8,9,10,11,12,13};
int b[14]={0};
int i,t,j,t1,k=12;
int s=1;
for(i=1;i<=26;i++)
{
if(i%2!=0)
{
t=a[0];
for(j=1;j<=k;j++)
{
a[j-1]=a[j];
}
a[k]=t;
}
else
{
t1=a[0];
for(j=1;j<=k;j++)
{
a[j-1]=a[j];
}
b[t1]=s;
s=s+1;
k=k-1;
if(k==1)
{
t1=a[1];
b[t1]=s;
}
}
}
for(i=1;i<=13;i++)
{
printf("%d\n",b[i]);
}
}