gpt4 book ai didi

c - c中表格内的不同颜色

转载 作者:行者123 更新时间:2023-11-30 16:46:31 24 4
gpt4 key购买 nike

我正在做一个学校项目,我们需要编写一个棋盘游戏(Medina)。进展顺利,但我遇到了一些麻烦。

有 4 个不同颜色的宫殿棋子(在游戏板上显示为“P”)需要以数组形式出现。在控制台应用程序中显示颜色不是问题,除非在数组中

数组需要是全白色的,但程序需要区分哪个“P”需要是哪种颜色。

这是我供玩家选择的开关盒(仅限宫殿碎片):

switch(c)
{
case 1:
printf("What color? 1 - red, 2 - grey, 3 - black, 4 - brown\n");
scanf ("%d", &d);
switch(d)
{
case 1:
printf("Where would you like to place your palace? X Y\n");
scanf ("%d %d",&y, &x);
tab[x-1][y-1]='P';
player[t].po--;
break;
case 2:
printf("Where would you like to place your palace? X Y\n");
scanf ("%d %d",&y, &x);
tab[x-1][y-1]='P';
player[t].pg--;
break;
case 3:
printf("Where would you like to place your palace? X Y\n");
scanf ("%d %d",&y, &x);
tab[x-1][y-1]='P';
player[t].pn--;
break;
case 4:
printf("Where would you like to place your palace? X Y\n");
scanf ("%d %d",&y, &x);
tab[x-1][y-1]='P';
player[t].pb--;
break;
}
break;

这是我的显示:

void display(char tab[DIMH][DIMV])
{
int i, j, k;


for(i=0; i<9; i++)
{
printf(" %d ", i+1);
}
for(i=0; i<9; i++)
{
printf(" %d ", i+10);
}
printf(" \n");
for(i=0; i<DIMV; i++)
{
printf("+---");
}
printf("+\n");
for(i=0; i<DIMH; i++)
{
for(j=0; j<DIMV; j++)
{
printf("| %c ", tab[i][j]);
}
printf("| %d \n", i+1);

for(k=0; k<DIMV; k++)
{
printf("+---");
}
printf("+\n");
}

}

我有一个结构体玩家,概述了每个玩家拥有的棋子数量(例如player.pb是玩家的黑色宫殿)。

或者,如果有人知道如何在表格中显示多个字母(Pb = 黑色宫殿等),同时在板上保持正确的间距,那将非常有帮助。

谢谢

最佳答案

颜色问题特定于您的硬件和软件环境。如果您知道要输出到 ANSI 终端,则可以使用转义码,但在类 UNIX 操作系统上使用像 ncurses 这样的curses 库可能是您的最佳选择。在 Windows 上,许多命令行编译器都有用于此类操作的库。检查你的文档。

要打印多个字符,您需要更改为打印字符串。您可以使用字段宽度说明符来提供帮助,或使所有字符串具有相同的长度(例如两个字符长)。

关于c - c中表格内的不同颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43702063/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com