1.C语言实现纸牌游戏(将不含有大小王的牌源纸牌进行随机发派给两个人并对纸牌进行比较)
2.如何用c语言编写纸牌发牌程序
3.如何用C语言编写出牌类游戏砸红A
4.C语言设计憋七纸牌游戏
5.纸牌游戏:十点半c语言编程
C语言实现纸牌游戏(将不含有大小王的纸牌进行随机发派给两个人并对纸牌进行比较)
居然都没分数奖励的啊。。牌源
用一个数组 A[] 红桃 黑桃 梅花 方片 倍数分别为0,牌源1,2,3 则黑桃 1 为 1* +0 =A[] 方片2数值为 3* + 1 = A[] 这样从A[0] -A[]表示这张牌。
然后A[] = 0,牌源git源码目录结构1,2 初始化全为 0 表示还没发,每次 用随机数除以当前总数 取余 来随机拍一张牌,牌源例如随机0-的牌源黑客出击源码数字 比如 表示A[]发出去,发给甲 A[]=1 乙为2,牌源以后每次随机一个0-的牌源数字 用加法,当当前牌的牌源属性为0时加1否则不加,加到随机数为止,牌源这样可以相当于一直在没有发出去的牌源牌做随机,加的牌源和超过取余
做次发牌操作后结束,每次从值为1 和2的牌源龙珠JS源码中随机一个序列号用序列号除以取余比大小。
思路全说了,牌源代码天天上班写就懒得给你写了
如何用c语言编写纸牌发牌程序
发牌原程序见我的牌源空间(/crazycola/blog/item/bd4b3fabb.html),可选是oran协议源码否包含大小王,可选发牌列数。
以下为改过的版本,不包含大小王(即总数张),越局源码只能发4堆。
另外附加了用户菜单,原程序中不含菜单部分。
代码如下:
---------------------------------------
#include <stdlib.h>
#include <time.h>
#include <stdio.h>
int menu()
{
int choice;
printf("1 发牌/0 退出:");
scanf("%d",&choice);
return choice;
}
void main( void )
{
int i1, j, total;
int *iArr;
int tag = 0;
char* pok_C[] = { "黑桃", "红桃", "梅花", "方块" };
char* pok_N[] = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "", "J", "Q", "K" };
if(!menu()) exit(0);
total = ;
srand( (unsigned)time( NULL ) );
iArr = (int*)malloc(total*sizeof(int));
for( i1=0; i1<total; i1++ )
{
iArr[i1]=rand()%total;
if( i1==0 ) continue;
do {
tag = 0;
for( j=0; j<i1; j++ )
if( iArr[j] == iArr[i1] )
{
iArr[i1]=rand()%total;
tag = 1;
}
} while( tag==1 );
}
for( i1=0; i1<total; i1++ )
{
printf("%s%s\t",pok_C[iArr[i1]%4],pok_N[iArr[i1]%]);
if(i1%4==3) printf("\n");
}
free(iArr);
}
如何用C语言编写出牌类游戏砸红A
楼主要的是这个?
#include <stdio.h>
main()
{
int arr[],i,k,j ;
k=2 ;
for(i=1;i<=;i++)
arr[i]=i ;
for(i=2;i<=;i++)
{
for(j=k;j<=;j++)
{
if(j%k==0)
{
if(arr[j]==0)
arr[j]=j ;
else arr[j]=0 ;
}
}
k+=1 ;
}
printf("最后正面向上的纸牌编号为:\n");
for(i=1;i<=;i++)
{
if(arr[i]==0)continue ;
printf("%4d",arr[i]);
}
getch();
}
还有发牌程序:
C语言设计憋七纸牌游戏
/* 纸牌模拟程序 */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
struct card
{ char suit[2];
char face[3];
};
typedef struct card CARD;
void initcard(CARD deck[],char s[][2],char f[][3]);
void shuffle(CARD deck[]);
void print(CARD deck[]);
int main()
{ CARD deck[];
char s[4][2]={ "\","\","\","\"};
char f[][3]={ "A","2","3","4","5","6","7","8","9","","J","Q","K"};
initcard(deck,s,f);
srand(time(NULL));
shuffle(deck);
print(deck);
system("pause");
return 0;
}
void initcard(CARD deck[],char s[][2],char f[][3])
{ int i;
for(i=0;i<;i++)
{ strcpy(deck[i].suit,s[i/]);
strcpy(deck[i].face,f[i%]);
}
}
void shuffle(CARD deck[])
{ int i,j;
CARD temp;
for(i=0;i<;i++)
{ j=rand()%;
if(j!=i)
{ temp=deck[i];
deck[i]=deck[j];
deck[j]=temp;
}
}
}
void print(CARD deck[])
{ int i;
for(i=0;i<;i++)
{ printf("%2s--%2s",deck[i].suit,deck[i].face);
printf("%c",(i+1)%4? '\t' : '\n');
}
}
纸牌游戏:十点半c语言编程
参考下面代码
#include<stdio.h>
struct card{
int num;//
bool ex;//真为正面,假为反面
};
void show(struct card a[],int n){ // 显示正面朝上的纸牌
int i = 0,j = 0;
printf("第%d次:",n);
for(i = 0;i < ;i ++){
if(a[i].ex){
j++;
printf("%d ",a[i].num);
if(j == ){
printf("\n ");
}
}
}
printf("\n\n");
}
void main()
{
int i,j;
struct card a[];
for(i = 0;i < ;i ++){
a[i].num = i+1;
a[i].ex = true;
}//初始化纸牌
for(i = 2;i < ;i ++){
for(j = 0;j < ;j ++){
if((j+1)%i == 0)
a[j].ex = !a[j].ex;
}
show(a,i-1);
}