是要用已有的卡片一个一个和所有的卡片写,但是用的循环不会写,麻烦解答想看代码
2条回答 默认 最新
- CSDN专家-天际的海浪 2022-05-26 22:06关注
用一个4*13数组记录已有的牌,双循环输出数组中没有的牌即可
你题目的解答代码如下:#include <iostream> using namespace std; int main() { int a[4][14]; int i,j,n,x,d; char ch; for (i = 0; i < 4; i++) { for (j = 1; j <= 13; j++) { a[i][j] = 0; } } cin >> n; for (i = 0; i < n; i++) { cin >> ch >> d; getchar(); switch (ch) { case 'S': x=0; break; case 'H': x=1; break; case 'C': x=2; break; case 'D': x=3; break; } a[x][d] = 1; } for (i = 0; i < 4; i++) { for (j = 1; j <= 13; j++) { if (a[i][j] == 0) { switch (i) { case 0: ch='S'; break; case 1: ch='H'; break; case 2: ch='C'; break; case 3: ch='D'; break; } cout << ch << " " << j << endl; } } } return 0; }
如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录