帮我用c++写一个洗牌发牌并与人家比大小的代码
时间: 2023-03-26 13:03:26 浏览: 87
好的,以下是洗牌发牌并与人家比大小的 C 代码:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define CARD_NUM 52
int main() {
int cards[CARD_NUM]; // 存储所有牌的数组
int i, j, temp;
srand(time(NULL)); // 初始化随机数种子
// 初始化牌组
for (i = ; i < CARD_NUM; i++) {
cards[i] = i + 1;
}
// 洗牌
for (i = ; i < CARD_NUM; i++) {
j = rand() % CARD_NUM;
temp = cards[i];
cards[i] = cards[j];
cards[j] = temp;
}
// 发牌
int player1[5], player2[5];
for (i = ; i < 5; i++) {
player1[i] = cards[i * 2];
player2[i] = cards[i * 2 + 1];
}
// 比大小
int sum1 = , sum2 = ;
for (i = ; i < 5; i++) {
if (player1[i] % 13 == ) {
sum1 += 13;
} else {
sum1 += player1[i] % 13;
}
if (player2[i] % 13 == ) {
sum2 += 13;
} else {
sum2 += player2[i] % 13;
}
}
// 输出结果
printf("Player1: ");
for (i = ; i < 5; i++) {
printf("%d ", player1[i]);
}
printf("Sum: %d\n", sum1);
printf("Player2: ");
for (i = ; i < 5; i++) {
printf("%d ", player2[i]);
}
printf("Sum: %d\n", sum2);
if (sum1 > sum2) {
printf("Player1 wins!\n");
} else if (sum1 < sum2) {
printf("Player2 wins!\n");
} else {
printf("Tie!\n");
}
return ;
}