主页 > 啤酒问答

用C语言编程把52个牌(除大小王)随机发给四个人,分开花色和大小顺序?

啤酒之家 2023-01-20 01:39 编辑:admin 66阅读

一、用C语言编程把52个牌(除大小王)随机发给四个人,分开花色和大小顺序?

改了哈,这个更好点

#include#include #include int comp(const void *j,const void *i); void p(int t,int b[],char n[]); int main(void) { static char n[]={'2','3','4','5','6','7','8','9','T','J','Q','K','A'}; int a[53],b1[13],b2[13],b3[13],b4[13]; int b11=0,b22=0,b33=0,b44=0,t=1,m,flag,i; srand(time(NULL)); while(t<=52) /*控制发52张牌*/ { m=rand()%52; /*产生0到51之间的随机数*/ for(flag=1,i=1;i<=t&&flag;i++)/*查找新产生的随机数是否已经存在*/ if(m==a[i]) flag=0; /*flag=1:产生的是新的随机数flag=0:新产生的随机数已经存在*/ if(flag) { a[t++]=m; /*如果产生了新的随机数,则存入数组*/ if(t%4==0) b1[b11++]=a[t-1]; /*根据t的模值,判断当前*/ else if(t%4==1) b2[b22++]=a[t-1]; /*的牌应存入哪个数组中*/ else if(t%4==2) b3[b33++]=a[t-1]; else if(t%4==3) b4[b44++]=a[t-1]; } } qsort(b1,13,sizeof(int),comp); /*将每个人的牌进行排序*/ qsort(b2,13,sizeof(int),comp); qsort(b3,13,sizeof(int),comp); qsort(b4,13,sizeof(int),comp); p(1,b1,n); p(2,b2,n); p(3,b3,n); p(4,b4,n); /*分别打印每个人的牌*/ return 0; } void p(int t,int b[],char n[]) { int i; printf(发给第%d个人的牌\n\006 ,t); /*打印黑桃标记*/ for(i=0;i<13;i++) /*将数组中的值转换为相应的花色*/ if(b[i]/13==0) printf(%c ,n[b[i]%13]); /*该花色对应的牌*/ printf(\n\003 ); /*打印红桃标记*/ for(i=0;i<13;i++) if((b[i]/13)==1) printf(%c ,n[b[i]%13]); printf(\n\004 ); /*打印方块标记*/ for(i=0;i<13;i++) if(b[i]/13==2) printf(%c ,n[b[i]%13]); printf(\n\005 ); /*打印梅花标记*/ for(i=0;i<13;i++) if(b[i]/13==3||b[i]/13==4) printf(%c ,n[b[i]%13]); printf(\n); } int comp(const void *j,const void *i) /*qsort调用的排序函数*/ { return(*(int*)i-*(int*)j); }

二、小学题判断题(专业人士必进)

1、正确

这是求平均数。如果反过来要求平均多少公顷能收1千克小麦?那就应该用总公顷数除以小麦的总千克数了。

你再细细品味一下。

2、求平均年龄应该用年龄之和除以总人数,这才是平均每人多少岁,也就是平均年龄。

三、6年纪数学题目(解方程设X)算式和答案

1.解:设需要x千克小麦,则(1-15%﹚x=4250,解得x=5000.

2.解:设x年后小明的年龄是他妈妈的1/2,则13+x=(47+x)×1/2,解得x=34.

3.解:设小明的父亲存了x元,则2.25%x×(1-20%)+x=1527,解得x=1500.

4.解:设每件成本价是x元,则x×(1+15%)×0.9-x=7,解得x=200。

下一篇:珠江金麦穗啤酒好喝么?
上一篇:又到啤酒季!13款国产精酿啤酒推荐,好喝高品质,比白酒更醉人