阅读下列说明、C++代码和运行结果,填补代码中的空缺,将解答填入答题纸的对应栏内。
[说明]
很多依托扑克牌进行的游戏都要先洗牌。下面的C++程序运行时先生成一副扑克牌,洗牌后再按顺序打印每张牌的点数和花色。
[C++代码] #include<iostream> #include<stdlib.h> #include<ctime> #include<algorithm> #include<string> USing namespace std; const string Rank[13]={"A","2","3","4","5","6","7","8","9","10","J", "Q","K"}; //扑克牌点数 const strinq Suits[4]={"SPADES","HEARTS","DIAMONDS","CLUBS"); //扑克牌花色 Class Card{ private: int rank; int suit; public: Card(){} ~Card(){} Card(int rank,int suit) {______ rank=rank;______ suit=suit;} int getRank(){ return rank; } int getSuit(){ return suit; } void printCard(){ cout<< '('<<Rank[rank]<<", "<<Suits[suit]<<")": } }; Class DeckofCards{ private: Card deck[52]; public: DeckOfCards(){ //初始化牌桌并进行洗牌 for(int i=0; i<52;i++) { //用Card对象填充牌桌 ______ =card(i%13,i%4); } Srand((unsigned)time(0)); //设置随机数种孔 std::random shuffle(&deck[0],&deck[51]); //洗牌 } ~DeckOfCards() { } void printCards() { for(int i=0; i<52; i++){ ______ printCard(); if((i+1)% 4==0)cout<<endl; else cout<<"\t"; } } }; int main (){ DeckOfCards *d= ______; //生成一个牌桌 ______; //打印一副扑克牌中每张牌的点数和花色 delete d: return 0; }