首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在c++中为卡片设置ASCII码边框并使10不移动它们

如何在c++中为卡片设置ASCII码边框并使10不移动它们
EN

Stack Overflow用户
提问于 2014-05-09 06:46:57
回答 1查看 380关注 0票数 0

我的问题是:如何在我的扑克牌代码中为卡片设置ASCII边框?在10号到来之前,一切都是完美的。所有其他卡片"12345678910JQKA“包含1个符号,但10包含2个,因此它移动我的ASCII边框。

代码如下:

代码语言:javascript
复制
printf ("\n\nYour cards are:\n");
    printf ("   ___   ___   ___   ___   ___\n");
    printf ("  |%s  | |%s  | |%s  | |%s  | |%s  | \n", pack[0].value, pack[1].value, pack[2].value, pack[3].value, pack[4].value);
    printf ("  | %s | | %s | | %s | | %s | | %s | ", pack[0].suit, pack[1].suit, pack[2].suit, pack[3].suit, pack[4].suit );
    printf ("\n  |  %s| |  %s| |  %s| |  %s| |  %s| ", pack[0].value, pack[1].value, pack[2].value, pack[3].value, pack[4].value);
printf ("\n   ---   ---   ---   ---   --- ");

}

Ok找到了答案。上面的数字是%-2s,所以他们仍然留在左边,下面的数字是%2s。

代码语言:javascript
复制
printf ("\n\nYour cards are:\n");
    printf ("   ___   ___   ___   ___   ___\n");
    printf ("  |%-2s | |%-2s | |%-2s | |%-2s | |%-2s | \n", pack[0].value, pack[1].value, pack[2].value, pack[3].value, pack[4].value);
    printf ("  | %s | | %s | | %s | | %s | | %s | ", pack[0].suit, pack[1].suit, pack[2].suit, pack[3].suit, pack[4].suit );
    printf ("\n  | %2s| | %2s| | %2s| | %2s| | %2s| ", pack[0].value, pack[1].value, pack[2].value, pack[3].value, pack[4].value);
printf ("\n   ---   ---   ---   ---   --- ");
EN

回答 1

Stack Overflow用户

发布于 2014-05-09 06:51:04

所以,让你所有的卡片都有两个空格来表示它们的符号。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23557153

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档