C语言课程设计之自动发牌文档格式.docx

上传人:b****5 文档编号:18687885 上传时间:2022-12-31 格式:DOCX 页数:14 大小:17.27KB
下载 相关 举报
C语言课程设计之自动发牌文档格式.docx_第1页
第1页 / 共14页
C语言课程设计之自动发牌文档格式.docx_第2页
第2页 / 共14页
C语言课程设计之自动发牌文档格式.docx_第3页
第3页 / 共14页
C语言课程设计之自动发牌文档格式.docx_第4页
第4页 / 共14页
C语言课程设计之自动发牌文档格式.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

C语言课程设计之自动发牌文档格式.docx

《C语言课程设计之自动发牌文档格式.docx》由会员分享,可在线阅读,更多相关《C语言课程设计之自动发牌文档格式.docx(14页珍藏版)》请在冰豆网上搜索。

C语言课程设计之自动发牌文档格式.docx

intf,x;

charans;

do{

f=meun(x);

if(f==1)

{

chansheng_52_integer(M);

fenpei_52(M);

paixu_52(P1,P2,P3,P4);

zh_h1(P1,P2,P3,P4);

}

if(f==2)

{

chansheng_104_integer(N);

fenpei_104(N);

paixu_104(P1a,P2a,P3a,P4a);

zh_h2(P1a,P2a,P3a,P4a);

printf("

请输入Y或y选择继续发牌:

"

);

scanf("

%c"

&

ans);

}while(ans=='

y'

||ans=='

Y'

return0;

intchansheng_52_integer(intM[])

{

inti,j;

srand((unsigned)time(NULL));

/*产生一个从此时开始的随机数*/

for(i=0;

i<

52;

i++)

M[i]=rand()%52+1;

/*随机取数在1—52之间,并用循环输出*/

for(j=0;

j<

i;

j++)

if(M[i]==M[j])/*如果产生相同的数值,则退出*/

{

i=i-1;

break;

}

return0;

}

intfenpei_52(intM[])

intp,q;

for(p=0;

p<

13;

p++)

{for(q=0;

q<

q=q+4)

P1[p]=M[q];

p++;

{for(q=1;

P2[p]=M[q];

p++;

{for(q=2;

P3[p]=M[q];

for(p=0;

{for(q=3;

P4[p]=M[q];

intpaixu_52(intP1[],intP2[],intP3[],intP4[])

inti,j,t;

for(i=0;

12;

for(j=i+1;

if(P1[j]>

P1[i])

t=P1[j];

P1[j]=P1[i];

P1[i]=t;

}

if(P2[j]>

P2[i])

t=P2[j];

P2[j]=P2[i];

P2[i]=t;

if(P3[j]>

P3[i])

{

t=P3[j];

P3[j]=P3[i];

P3[i]=t;

if(P4[j]>

P4[i])

t=P4[j];

P4[j]=P4[i];

P4[i]=t;

intS1(intP1[])

{FILE*fp;

inta[9]={2,3,4,5,6,7,8,9,10};

charb[4]={'

J'

'

Q'

K'

A'

};

inti;

if((fp=fopen("

c.txt"

"

a+"

))==NULL)

{printf("

cannotopenfile!

\n"

exit

(1);

4个人玩1副牌按P1-P4从上到下\n"

fprintf(fp,"

S"

if(P1[i]<

10&

&

P1[i]>

0)

{

printf("

%2d"

a[(P1[i]%13)-1]);

fprintf(fp,"

if(P1[i]<

14&

9)

%2c"

b[(P1[i]+3)%13]);

}printf("

fprintf(fp,"

H"

23&

13)

a[P1[i]%13-1]);

27&

22)

D"

36&

26)

40&

35)

C"

49&

39)

53&

48)

fclose(fp);

intzh_h1(intP1[],intP2[],intP3[],intP4[])

S1(P1);

S1(P2);

S1(P3);

S1(P4);

intchansheng_104_integer(intN[])

srand((unsigned)time(NULL));

/*产生一个从此刻开始的随机数*/

104;

N[i]=rand()%104+1;

/*随机取数在1—104,并用循环输出*/

if(N[i]==N[j])/*如果产生相同的数值,则退出*/

break;

intfenpei_104(intN[])

26;

P1a[p]=N[q];

P2a[p]=N[q];

for(q=2;

P3a[p]=N[q];

p++;

}

P4a[p]=N[q];

intpaixu_104(intP1a[],intP2a[],intP3a[],intP4a[])

if(P1a[i]>

52)

P1a[i]=P1a[i]-52;

if(P2a[i]>

P2a[i]=P2a[i]-52;

if(P3a[i]>

P3a[i]=P3a[i]-52;

if(P4a[i]>

P4a[i]=P4a[i]-52;

25;

if(P1a[j]>

P1a[i])

t=P1a[j];

P1a[j]=P1a[i];

P1a[i]=t;

if(P2a[j]>

P2a[i])

t=P2a[j];

P2a[j]=P2a[i];

P2a[i]=t;

if(P3a[j]>

P3a[i])

t=P3a[j];

P3a[j]=P3a[i];

P3a[i]=t;

if(P4a[j]>

P4a[i])

t=P4a[j];

P4a[j]=P4a[i];

P4a[i]=t;

intS2(intP1a[])

a.txt"

4个人玩2副牌按P1a-P4a从上到下\n"

if((P1a[i]<

P1a[i]>

0)||(P1a[i]>

52&

P1a[i]<

62))

a[(P1a[i]%13)-1]);

if((P1a[i]<

9)||(P1a[i]>

61&

66))

b[(P1a[i]+3)%13]);

13)||(P1a[i]>

65&

75))

a[P1a[i]%13-1]);

22)||(P1a[i]>

74&

79))

26)||(P1a[i]>

78&

88))

35)||(P1a[i]>

87&

92))

39)||(P1a[i]>

91&

101))

48)||(P1a[i]>

100&

105))

}printf("

intzh_h2(intP1a[],intP2a[],intP3a[],intP4a[])

S2(P1a);

S2(P2a);

S2(P3a);

S2(P4a);

intmeun(intx)

{intf;

选择f==1副牌或者f==2副牌\n"

);

输入数字f:

\n"

如果输入Y或y则继续发牌:

scanf("

%d"

f);

returnf;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1