Win+Q搜索并打开Microsoft Solitaire Collection,根据需要选择相应游戏即可。
点击左侧菜单可以设置游戏选项,包括音乐大小调节、记住纸牌难度开关,等;
进入菜单拖动到下方,或者点击右上角可以选择全屏视图。
支持单机模式,也可以联网并点击登录XBOXLIVE社区,跨电脑、主机和移动设备与好友联系并一起玩;或者登录Microsoft账号以保存游戏进度。
; 吹牛游戏规则--------------------------------------------------------------------------------玩法:由发牌的人拿出1到8(二副牌1至16)张牌,扣下,并宣布是几张某点牌,如"两张7"。 下家可以选择以下几种应法。一:不相信:(除了自己以外,其他任何人都可以不相信)则翻开那几张底牌,如果是骗张,则将此轮所有的牌都归被翻的人所有;如果不是骗张,则归不相信的人所有。然后由赢的人继续出牌和喊牌。二:相信并跟牌:跟牌的人只能跟一张到四张牌,然后叫牌:一种是加叫,即在原来的基础上加牌,比如上家所"两张7",可以所"加跟1张7",也可以喊其他的个人帐户盖过去,比如"2张8",但必须满足两个条件,要么牌张比先出的人多,要么同张数情况下点力要大。 三:放弃,表示相信上一个喊牌人的牌,自己放弃跟牌或加牌的机会,轮到下一家处理。如果连续多家放弃又轮到自己出牌,则刚才的牌成为一圈,将不再翻开而作为淘汰牌。如果下家三次以上不相信上家,而且三次上家都为真,那么第三次不相信就自动被认为放弃。 牌的大小:A,2,3,10,J,Q,K(A为自由牌,即A可以作为其他任何点数的牌看待)胜负:第一个出完手中的所有牌为胜利者,其他人全部为输家。输家扣除手中的牌数乘以每张牌代表的分数,赢家赢得所有输家的分数。异常处理:若是某个玩家在四十秒内没有任何响应,游戏程序将替他叫放弃。 游戏进行中不正常离局者,除了会断线次数加1次外,还会被扣104乘以每张牌代表的分。这是电脑上标准的我偶尔两个人在外面喝酒时用这个来玩一副牌,一人一半,相信喝小杯,不相信起来输家喝大杯,胜得出牌,一次一张。另外一个规定,对方没有的牌不能出。 可直接拿开到信任区,一方手中的牌只有6张为胜,罚输家两个大杯。玩过几次,觉得还不错,因为两个人喝酒找不出玩什么好了。不过想多玩几次记得杯子不要太大,因为只有两个人,几下就喝麻了就没意思了。。
我曾经用c语言写了一个,不过还不够完善,你可以看下。
牌的规则是:由大及小:7 王 5 2 3 A K Q J 10 9 8 6 4 黑桃>梅花>红桃>方块,
/扑克游戏之七王五二三/
/作者:翁家祥/
/日期:2005/04/02/
#include<stdioh>
#include<stringh>
#include<timeh>
#include<stdlibh>
struct CARD
{
char suit;
char face[10];
int flag;/用来标志牌的大小及是否已出/
};
typedef struct CARD puke;
puke card[54],a[5],b[5];
int point=0,tag=3;/前者标记牌已抽了几张;后者标记出一局后谁大/
int s1=0,s2=0;/判断输赢/
void riffle(void)
{
char Suit[4]={"\4\3\5\6"};
char Face[]={"4","6","8","9","10","Jack","Queen","King","A","3","2","5","7"};
int i,j;
puke temp;
strcpy(card[53]face,"BigJoke");
card[53]suit=' ';
strcpy(card[52]face,"SmallJoke");
card[52]suit=' ';
card[52]flag=49;
card[53]flag=50;
for(i=0;i<52;i++)
{
card[i]suit=Suit[i%4];
strcpy(card[i]face,Face[i/4]);
if(i<48)
card[i]flag=i+1;
else
card[i]flag=i+3;
}
srand(time(NULL));
for(i=0;i<54;i++)
{
j=rand()%54;
temp=card[i];
card[i]=card[j];
card[j]=temp;
}
}
void display(void)
{
int i,j,counter=1;
if(point==0)
{
for(i=0;i<10;i++)
{
if((i%2)==0)
a[i/2]=card[point++];
else
b[(i-1)/2]=card[point++];
}
}
if(point>0)
{
if(tag==0) /表示playeer大,故先抽牌/
{
for(j=0;j<5&&point<54;j++)
if(a[j]flag==0)
a[j]=card[point++];
for(i=0;i<5&&point<54;i++)
if(b[i]flag==0)
b[i]=card[point++];
}
else if(tag==1) /表示computer大,故先抽牌/
{
for(i=0;i<5&&point<54;i++)
if(b[i]flag==0)
b[i]=card[point++];
for(j=0;j<5&&point<54;j++)
if(a[j]flag==0)
a[j]=card[point++];
}
}
for(i=0;i<5;i++)
{
if(a[i]flag==0)
continue;
else
{
printf("%c%10s%30d\n",a[i]suit,a[i]face,i+1);
}
}
if(point<11)
printf("The five cards above are yours\n");
}
int finger_guess(void)
{
char ch;
char artificial;
int random;
int p=0;
while (p==0)
{
srand(time(NULL));
printf("Please input one case you want to put:\n(A/a:stone;B/b:cloth;C/c:forfex)\n");
artificial=getch();
if(artificial!='A'&&artificial!='B'&&artificial!='C'&&artificial!='a'&&artificial!='b'&&artificial!='c')
continue;
if(artificial=='A'||artificial=='a')
printf("You put out stone\n");
if(artificial=='B'||artificial=='b')
printf("You put out cloth\n");
if(artificial=='C'||artificial=='c')
printf("You put out forfex\n");
random=rand()%3+1;
switch(random)
{
case 1:
printf("I put out stone\n");
if(artificial=='A'||artificial=='a')
{
printf("Ah,We are the same\n");
continue;
}
if(artificial=='B'||artificial=='b')
{
p=1;
return 1;
}
if(artificial=='C'||artificial=='c')
{
p=1;
return 0;
}
case 2:
printf("I put out cloth\n");
if(artificial=='B'||artificial=='b')
{
printf("Ah,We are the same\n");
continue;
}
if(artificial=='C'||artificial=='c')
{
p=1;
return 1;
}
if(artificial=='A'||artificial=='a')
{
p=1;
return 0;
}
case 3:
printf("I put out forfex\n");
if(artificial=='C'||artificial=='c')
{
printf("Ah,We are the same\n");
continue;
}
if(artificial=='B'||artificial=='b')
{
p=1;
return 0;
}
if(artificial=='A'||artificial=='a')
{
p=1;
return 1;
}
}
}
}
void EXIT(void)
{
if(s1==5)
printf("Ha!I have won!");
if(s2==5)
printf("Oh!You are perfect!");
getch();
exit(0);
}
void put_cards(void)
{
int wanna_put,i,j,tag2,guess;
int q,p;/标记牌小于牌temp的个数,若p或q等于5,则表示没有/
int r,s;/分别用来标记玩家和电脑牌还剩多少张/
puke temp2,temp;
if(point<11)
{
guess=finger_guess(); /调用猜拳函数决定谁先出牌/
if(guess==1) /如果玩家赢拳,则标记tag=0,表示玩家先出/
tag2=0;
else /如果电脑赢拳,则标记tag=1,表示电脑先出/
tag2=1;
}
if(tag==3&&tag2==0)
{
while(1)
{
scanf("%d",&wanna_put);
if(a[wanna_put-1]flag==0)
{
printf("Wrong!\nInput again");
continue;
}
else
{
printf(" player: %c%10s\n",a[wanna_put-1]suit,a[wanna_put-1]face);
temp=a[wanna_put-1];
a[wanna_put-1]flag=0;
tag2=2;/表示该computer出牌了/
break;
}
}
}
if(tag==3&&tag2==1)
{
for(j=0;j<5;j++)
if(b[j]flag!=0)
{
temp=b[j];
break;
}
for(i=1;i<5;i++)
if(b[i]flag>0&&tempflag>b[i]flag)
temp=b[i];
for(j=0;j<5;j++)
if(tempflag==b[j]flag)
b[j]flag=0;
printf("computer: %c%10s\n",tempsuit,tempface);
tag2=3;/表示该玩家出牌/
}
while(tag!=0&&tag!=1)/即当tag等于3的时候为入口。tag为0时玩家大,为1时电脑大/
{
if(tag2==2) /如果是该电脑出牌/
{
p=0;
s=0;
for (i=0;i<5;i++)
{
if((b[i]flag>0)&&(b[i]flag<tempflag))
{
p++;
continue;
}
else if(b[i]flag>tempflag)
{
temp2=temp;
temp=b[i];
break;
}
}
for(j=0;j<5;j++)
{
if(b[j]flag!=0)
s++;
}
if(p<s)
{
for(j=i;j<5;j++)
if(b[j]flag>0&&b[j]flag<tempflag&&b[j]flag>temp2flag)
temp=b[j];
printf("computer: %c%10s\n",tempsuit,tempface);
tag2=3; /表示该玩家出牌/
for(j=0;j<5;j++)
if(tempflag==b[j]flag)
b[j]flag=0;
if(point==54)
{
s1=0;
for(i=0;i<5;i++)
if(b[i]flag==0)
s1++; /用来标记电脑是否已经赢牌/
if(s1==5)
EXIT();/如果赢牌,则程序结束,跳到末尾/
}
}
if(p==s) /表示没有,退出循环/
{
tag=0;
tag2=0;
tempflag=0;
printf("The card is so highI can't put down\n");
}
}
if(tag2==3)
{
q=0;
r=0;
for (i=0;i<5;i++)
{
if((a[i]flag>0)&&(a[i]flag<tempflag))
q++;
}
for(j=0;j<5;j++)
{
if(a[j]flag!=0)
r++;
}
if(q==r)
{
printf("SorryThe card is so highYou have to give up!\nLet's take new cards\n");
tempflag=0;
tag=1;/表示电脑这局大/
tag2=1;/表示下次开牌由电脑先出/
}
while (q<r)
{
scanf("%d",&wanna_put);
if(wanna_put>6||(wanna_put<6&&a[wanna_put-1]flag<=tempflag)||a[wanna_put-1]flag==0) /错误:电脑如果没有,而我又出牌导致temp是前一次的牌。/
{
printf("Wrong!Input again!");
continue;
}
else if(wanna_put==6)
{
tag=1;
tag2=1;
printf("You give up!\n");
break;
}
else
{
temp=a[wanna_put-1];
a[wanna_put-1]flag=0;
printf(" player: %c%10s\n",tempsuit,tempface);
if(point==54)
{
s2=0;
for(i=0;i<5;i++)
if(a[i]flag==0)
s2++;
if(s2==5) /表示玩家已经赢牌/
EXIT();
}
tag2=2;
break;
}
}
}
}
}
main()
{
riffle();
while (1)
{
display();
tag=3;
put_cards();
}
}
以上就是关于win10系统自带的纸牌游戏在哪里全部的内容,包括:win10系统自带的纸牌游戏在哪里、扑克游戏“吹牛”的规则是怎样的、牌类程序编写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)