C语言写一个随机发牌的游戏程序 本文关键词:发牌,随机,语言,程序,游戏
C语言写一个随机发牌的游戏程序 本文简介:2.7.1.3练习3写一个随机发牌的游戏程序要求:输入发牌数n,然后随机发出n张不同的牌,用数字0-53表示一副扑克牌//card_game.c#include#include#include#defineNULL0intbegin(){intn;printf(“Inputcardsyouwant(
C语言写一个随机发牌的游戏程序 本文内容:
2.7.1.3
练习3
写一个随机发牌的游戏程序
要求:输入发牌数n,然后随机发出n张不同的牌,用数字0-53表示一副扑克牌
//card_game.c
#include
#include
#include
#define
NULL
0
int
begin()
{
int
n;
printf(“Input
cards
you
want(num>0):“);
scanf(“%d“,return
n;
}
void
Exit(void)
{
char
ch;
printf(“Press
to
end.“);
scanf(“%c“,if(ch==
Q
||ch==
q
)
exit(0);
}
int
deal(void)
{
int
card;
card=rand()%54;
return
card;
}
void
play()
{
int
n=begin();
int
a[54],i;
srand(time(NULL));
a[0]=deal();
for(i=1;ifor(;;)
{
int
num=deal();
int
flag=1;
for(int
j=0;j
if(a[j]==num)
{
flag=0;
break;
}
if(flag)
{
a[i]=num;
break;
}
}
for(i=0;iprintf(“%d\t“,a[i]);
printf(“\n“);
scanf(“%*c“);
}
void
welcome()
{
printf(“+-----------------------------+\n“);
printf(“Welcome
to
Play
Card_Game.\n“);
printf(“+-----------------------------+\n“);
}
int
main()
{
while(1)
{
welcome();
play();
Exit();
}
return
0;
}
注意:1)发牌时候一共有54张不同的牌,使用随机函数是注意判断不能使得发过的牌重新被发,所以在play()函数中需要判断新发的牌是否为之前发过的牌。