⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 02051121.c

📁 用C语言实现的洗牌程序
💻 C
字号:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>

void shuffle(int[][13]);
void deal(int[][13],char*[],char*[]);
void print(int[][13]);
main()
{
      char *suit[4]={"Hearts","Diamonds","Clubs","Spades"};
      char *face[13]={"Ace","Deuce","Three","Four",
                      "Five","Six","Seven","Eight",
                      "Nine","Ten","Jack","Queen","King"};
      int deck[4][13]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,
                       18,19,20,21,22,23,24,25,26,27,28,29,30,31,
                       32,33,34,35,36,37,38,39,40,41,42,43,44,45,
                       46,47,48,49,50,51,52};
      int a;
      printf("洗牌前的deck数组:\n");
      print(deck); 
      srand(time(NULL));
      shuffle(deck);
      deal(deck,face,suit);
      printf("对洗牌结果是否满意?满意:1不满意:2.\n");
      scanf("%d",&a);
      while(a==2){
        shuffle(deck);
        deal(deck,face,suit);
        printf("对洗牌结果是否满意?满意:1不满意:2.\n");
        scanf("%d",&a);
      }
      printf("洗牌后的deck数组:\n");
      print(deck); 
      system("PAUSE");
      return 0;
      }
void shuffle(int wDeck[][13])
{
     int i,j,row,column,num;
     for(j=0;j<=3;j++)
       for(i=0;i<=12;i++){
       row=rand()%4;
       column=rand()%13;
       num=wDeck[j][i];
       wDeck[j][i]=wDeck[row][column];
       wDeck[row][column]=num;
       }
     
}
void deal(int wDeck[][13],char*wface[],char*wSuit[])
{
   int card,row,column;
   for(card=1;card<=52;card++)
     for(row=0;row<=3;row++)
       for(column=0;column<=12;column++)
         if(wDeck[row][column]==card)
         printf("%5s of %-8s%c",wface[column],wSuit[row],
                card%3==0?'\n':'\t');
}
void print(int wDeck[4][13])
{
     int i=0,j=0;
     for(j=0;j<=3;j++){
      { for(i=0;i<=11;i++)
         printf("%4d",wDeck[j][i]);
         }   
         printf("\n");
     }
       }  
     

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -