问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用C语言编写一个52张扑克牌随即洗牌的程序 并写上注释

发布网友 发布时间:2022-05-24 12:07

我来回答

3个回答

热心网友 时间:2023-10-12 18:56

定义一个int p[52],里面的元素就是1~52,然后,直接 for循环i:1~52,每次随机一个数 m=rand()%52 ,swap(p[i],p[m]),就ok了

热心网友 时间:2023-10-12 18:57

/*21点游戏*/
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
int main(void )
{
int a,b,c,d,s,x,t,i,n,k;
s=200,k=1000;
x=t=i=1,a=b=c=d=n=0;
srand((int)time(0));
printf(" 21点游戏
★游戏规则: \n 游戏开始后系统将随机产生1到10之间的数并累加.
1.在点数不大于21时,点数大者赢,点数相等算平局;
2.若一方点数大于21,一方点数小于21,小于21的一方赢;
3.若两方均大于21,则算平局;
4.获胜者获得相应赌注金币,金币到零则结束游戏 .\n (注:继续加点选1,不继续加点选任意非1数)\n\n##########################\n\n") ;
do {
while(x==1)
{

if(t==1)
{
c=rand()%8+3;
a=rand()%10+1;
}
if(t==2)
{
a=rand()%5+1;
c=rand()%4+1;
}
if(t==3)
{
c=rand()%3+1;
a=rand()%3+1;
}
if(t==4)
{
a=rand()%2+1;
c=rand()%3+1;
}
if(t==5)
a=rand()%8+1;
if(t==6)
a=rand()%3+1;

b+=a,d+=c;

if(d>16)
t=2;
if(d==19&&b==19)
t=3;
if(d==20&&b==20)
t=3;
if(b==20&&d==19)
t=4;
if(d==19&&(d-b)>3)
t=5;
if(d==20&&d>b)
t=6;
if(d==21)
t=6;

if(i==1)
{
do
{
printf(" 您现在还有%d个金币,系统有%d个,请输入赌注: ",s,k);
scanf("%d",&n);
}
while(s<n);
i++;
}

if(b>21&&d<22)
{
printf(" 你%d点,系统%d点,你输了!\n\n\n\n",b,d);
s-=n;
k+=n;
t=i=1,b=d=0;
break;
}
if(d>21&&b<22)
{
printf(" 你%d点,系统%d点,你赢了!\n\n\n\n",b,d);
s+=n;
k-=n;
t=i=1,b=d=0;
break;
}
if(d>21&&b>21)
{
printf(" 你%d点,系统%d点,平局!
\n\n\n",b,d);
t=i=1,b=d=0;
break;
}

printf(" 您加%d点,系统加%d点!\n 您现在共 %d点,系统现在共 %d点!\n 是否继续加点 ",a,c,b,d);
scanf(" %d",&x);
a=c=0;
if(x!=1)
{
if(d<b&&d<18)
{
c=rand()%4+2;
d=d+c;
printf("您不加点,系统加%d点",c);
}
if(d<b&&d==20)
{
c=rand()%2+1;
d=d+c;
printf("您不加点,系统加%d点",c);
}
if(d<b&&d==19)
{
c=rand()%4+1;
d=d+c;
printf("您不加点,系统加%d点",c);
}
if(d<b&&d==18)
{
c=rand()%5+1;
d=d+c;
printf("您不加点,系统加%d点",c);
}
if(d>b)
printf("您不加点,系统不加点");

if(d<22&&d>b)
{
printf(" 你%d点,系统%d点,你输了!\n\n\n\n",b,d);
s-=n;
k+=n;
t=x=i=1,b=d=0;
break;
}
if(b>d&&b<22||b<22&&d>21)
{
printf(" 你%d点,系统%d点,你赢了!\n\n\n\n",b,d);
s+=n;
k-=n;
t=x=i=1,b=d=0;
break;
}
if(b==d)
{
printf(" 你%d点,系统%d点,平局!
\n\n\n\n",b,d);
t=x=i=1,b=d=0;
break;
}
}
}
}
while(s>0&&k>0);
printf("您有%d个金币,系统有%d个金币!\n\n" ,s,k);
if(s>k)
printf("太棒了,你把系统打败了!!!\n");else if(k>s)
printf(" 您的金币不足,挑战系统失败!\n");
return 0;
}

我只有这个程序,你借鉴一下!

热心网友 时间:2023-10-12 18:57

没有其他的要求了吗?
这样说的有点模糊 怕做出来不满足你的要求
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如果只有铬黑T试剂,能否测定钙离子,如何测定? 金银花茶的做法窍门 怎样制作金银花茶 怎么快速取消订单 有关"听"开头的成语 王卡看腾讯视频不显示免流 大王卡腾讯视频不显示免流 谁给推荐几部国产的好看的、卟幼稚的、新鲜的动画片 好看的、不幼稚的国产动画片有哪些? 太早的不要,要连续动画片 上传速度慢是什么原因? 木姜菜和薄荷怎么区别 c语言编程用扑克牌洗牌和发牌 C语言 编写洗牌的问题 什么是花瓶菜 我下载了64位版本的CAD,为什么安装不上天正建筑呢?哪位哥哥告诉下怎么办,。或者给我发个适合用的天正。 编写一个C语言程序,模拟洗牌和发牌的过程 C语言编程题-洗牌 为啥我装了cad04了还是装不了天正建筑8.0,提示安装cad2000到2010 急急急!!! 洗牌问题这样写怎么不对?C语言 C语言完全洗牌程式 天正建筑CAD安装问题 兄弟擅自做主将母亲送精神病院,我该怎么办? 我姑姑的女儿离婚以后,得了很重的精神病,有时候一个人说的不停,男方给了十万。我姑整天都是很痛苦 精神病院会打人吗 姜咸菜的做法,姜咸菜怎么做好吃,姜咸菜的家常 精神病(狂燥症)的治疗方法?? 精神病人没有合作医疗怎样寻求经济帮助 周期性精神病的中医治疗 精神病患者,最近老头晕、心里难受、脸色苍白。去医院检查没什么问题,说是神经绷得太紧了或是吃药太多... 记纯理论性的东西有什么方法?我记忆力奇差 谁会c语言编程发牌洗牌程序 为什么我在网上下的天正建筑CAD安装之后不能用?总是提示没有可用版本,我系统是32位的 如何求C语言扑克牌洗牌发牌,发的牌要从大到小排序,每个部分都要用 64位的win7旗舰版系统,安装了2007的CAD后,怎么安装不上天正建筑 win7 64位系统安装的是CAD2008可安装不上天正建筑 c语言 洗牌程序 蒸汽洗车到底对车漆有损伤吗 C语言 洗牌 蒸汽清洗机最高温度可达到120℃是根据什么原理制成的(中考模拟题) C语言洗牌程序bug求助 C语言洗牌发牌程序 编写C语言程序,模拟将一副扑克牌54张随机分给4个人 (如何表达不同花色和大小,如何高效洗牌) C语言实现0~999洗牌,要求每次洗牌结果不一样,下面这段程序中基本可以实现,但是会有重复和丢失,请教高 c语言 洗牌问题 求挑错 如何使用流风清音制作一个简单的招聘信息网站,就一个html再链接一个css外部样式表这种,简单的 - 信息提示 怎么在QQ群里添加在线文档文件夹 有人借钱不还,找不到人,该怎么办? 别人借钱不还,找不到人怎么办 朋友借钱不还,现在找不到人怎么办