#include<stdio.h> #include<stdlib.h> #include<time.h> int main() { ?? ?char card; ?? ?int i,m[100],a,b,n=0,count=0; ?? ?int name=1; ?? ?srand((unsigned)time(NULL));//修改种子 ?? ?for (i = 0; i <52; i++) ?? ?{?? ? ?? ??? ?a= rand()%52;//0-51的数字? ?? ??? ?m[i]=a; ?? ??? ?for(b=0;b<i;b++) ?? ??? ?{ ?if(m[b]==a) n=1;//n=1为判断条件? ?? ??? ?} ?? ??? ?if(n==1) ?? ??? ?{ i--;//重新取随机数? ?? ??? ?n=0;//将n的值变回去? ?? ??? ?} ?? ?} ?? ?printf("player %d: ",name);?? ? ?? ?for(i=0;i<52;i++) ?? ?{ ?? ??? ?if(m[i]<=12) ?? ??? ?{ ?card="A234567890JQK"[m[i]]; ?? ??? ?printf("|%c",3);?? ? ?if(card=='0') printf("1"); ?? ??? ?//由于输出的只能是一个字符,故在0前加1表示10? ?? ??? ?printf("%c| ",card);count++; ?? ??? ?} ?? ??? ?if(m[i]>12&&m[i]<=25) ?? ??? ?{ ?card="A234567890JQK"[m[i]-13]; ?? ? ? ?printf("|%c",4);?? ? ?if(card=='0') printf("1"); ?? ??? ?printf("%c| ",card);count++;//为换行做判断? ?? ??? ?} ?? ??? ?if(m[i]>25&&m[i]<=38) ?? ??? ?{ ?card="A234567890JQK"[m[i]-26]; ?? ??? ?printf("|%c",5); ? if(card=='0') printf("1"); ?? ??? ?printf("%c| ",card);count++; ?? ??? ?} ?? ??? ?if(m[i]>38&&m[i]<=51) ?? ??? ?{ ?card="A234567890JQK"[m[i]-39]; ?? ??? ?printf("|%c",6); ? if(card=='0') printf("1"); ?? ??? ?printf("%c| ",card);count++; ?? ??? ?} ?? ??? ?if(count%13==0&&count!=52) ?? ??? ?{ ?printf("\n"); name++; printf("player %d: ",name); ?? ??? ?} ?? ?} ?? ?return 0; } ?
|