#include <iostream>
#include <fstream>
#include <string>
#include <cstdlib>
#include <ctime>
using namespace std;
class Card
{
public:
string suit;//花色
string face;//面值
};//扑克类
class CardManager
{
private:
Card deck[4][13];
public:
CardManager();
void shuffle();//洗牌
void deal();//发牌
};
CardManager::CardManager()
{
string suit[] = {"红桃","方块","梅花","黑桃"};
string face[] = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
for (int i = 0; i < 4; ++i)
{
for (int j = 0; j < 13; ++j)
{
deck[i][j].suit = suit[i];
deck[i][j].face = face[j];
}
}//初始化
}
void CardManager::shuffle()
{
srand(time(NULL));
for (int i = 0; i < 4; ++i)
{
for (int j = 0; j < 13; ++j)
{
int m = rand()%4;
int k = rand()%13;
Card temp = deck[i][j];
deck[i][j] = deck[m][k];
deck[m][k] = temp;
}
}//随机交换
}
void CardManager::deal()
{
string person[] = {"高进","阿星","仇笑痴","徐锦江"};
ofstream out("puke.txt");//打开文件
for(int i=0;i < 4;i++)
{
out << person[i] << "的牌:" << endl;
for (int j = 0; j < 13; ++j)
{
out << j+1 <<":" << deck[i][j].suit << deck[i][j].face << "\t\t";
if((j + 1)%4 == 0)
{
out << endl;
}
}
out << endl << endl;
}
out.close();
}
int main(int argc, char const *argv[])
{
CardManager cm;
cm.shuffle();
cm.deal();
return 0;
}
c++标准输入输出流(三)
猜你喜欢
转载自blog.csdn.net/danieldingshengli/article/details/80357619
今日推荐
周排行