我正在为扑克游戏做游戏,目前有52张牌
int cards[52] = {1, 1, 1, 1, etc etc etc...}
但是,我希望每次出现一个1或一个11或12或13时,字母都像A,J,Q和K一样出现,而不是这些数字。
我目前有部分代码(仍未完成),但继续使用1,2,3,4,5,6 ...,13数组进行所有操作,因此我宁愿自开始以来不必重启。
PS:我目前对编程还很陌生,所以像初学者一样进行解释会很有帮助!
PS:问题是我不确定如何执行此操作
对于我的一个子功能
for (l = 0; l < 52; l++) //For loop del swap para barajear la baraja
{
x = rand() % 52;
y = rand() % 52;
int temp = cards[x];
cards[x] = cards[y];
cards[y] = temp;
char *temp1 = symbols[x];
symbols[x] = symbols[y];
symbols[y] = temp1;
}
我如何制作它,以便在打印时cards[1]
和cards[1]
被交换后的值是1
,如何制作它'A'
而不是打印1
创建一个数组letters
来存储卡名。然后,您可以使用来访问数组letters[card]
。
简而言之,您可以将单个char
值写为一个字符串:
char letters[] = "XA234567890BDK";
请注意,第一个字母的索引将自动为零。如果您希望卡片“ two”成为索引2
,则必须用虚拟字符填充第一位。
考虑到第二个问题(改组),可以symbols
完全省略该数组。只需从letters
实际需要的时候查找相关符号即可。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句