设计一个随机发牌器,该发牌器每次发牌十三张,程序运行后显示所得牌组的信息,包括纸牌的大小(必须是小写数字)、花色。
运行截图
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include <stdlib.h>
#include <string>
#include <conio.h>
#include <time.h>
/**程序窗口*/
void winos();
int main()
{
winos();
int flag[52] = { 0 }; //扑克牌 大小王去掉
int n = 0;
//随机种子
srand((unsigned int)time(NULL));
//循环52张牌
for ( int i = 0; i < 52; i++)
{
//设置随机数
n = rand() % 52;
//防止重复
while (flag[n] == 1)
{
n = rand() % 52;
}
//重置
flag[n] = 1;
//设置花色红心 0到12
if (n >= 0 && n < 13)
{
printf("%-6s%-4d ", "红桃", n + 1);
}
/// 13到25是黑桃
else if (n >= 13 && n < 26)
{
printf("%-6s%-4d ","黑桃", n - 12);
}
//26到38是美化
else if (n >= 26 && n < 39)
{
printf("%-6s%-4d ","梅花", n - 25);
}
//剩下的就是方片
else
{
printf("%-6s%-4d ","方片", n - 38);
}
//为了打印好看
//每一次发牌13张, 52张发4次
if ((i + 1) % 13 == 0)
{
printf("\n\n");
}
}
system("pause");
return 0;
}
/**程序窗口*/
void winos()
{
system("title 小新老师要打牌");//设置CMD窗口 标题
system("color 4E");
system("mode con cols=45 lines=65");//设置窗口大小
printf("\t\t※当 前 时 间※\n\n");
printf("\t\t");
system("date /T");
printf("\t\t");
system("TIME /T");
}
``