gpt4 book ai didi

c - 替换 C 中已经打印的数字

转载 作者:太空宇宙 更新时间:2023-11-04 04:54:22 24 4
gpt4 key购买 nike

我正在用 C 语言编写一个程序,这是一个名为 Thambola 的印度游戏(类似于宾果游戏)。在这个游戏中,用户得到一张 3x9 的票,计算机要求用户输入第二个程序(从 1-90 中随机选择数字)选择的数字。如果输入的号码在票中存在,则该号码应更改为“x”,表示该号码已被删除。我在这里需要帮助。如何用'x'替换已经打印的数字?我读了这个C - Remove and replace printed items但它确实有帮助,因为我有 27 个号码要更改。请帮助我。这是代码的一部分:

int number,i,j;
const char x='x';

printf("\nEnter the number:");
scanf("%d",&number); // number entered by the user from the Picker

for (i=0;i<3;i++)
for (j=0;j<9;j++)
{if (ticket[i][j]==number)
ticket[i][j]=x;
printf("%d",ticket[i][j]); //if the input number is present in the ticket, this should change it to 'x

}

getchar();

最佳答案

您的代码片段的主要问题是您为变量赋值背后的逻辑。

如任何人所见,您有一个整数数组,但您想将一个字符分配给其中的一个元素。实际上你可以通过转换来完成,但结果将是 'x' 的 ASCII 值。

{if (ticket[i][j]==number) // number is an integer
ticket[i][j]=x; // x is a char

由于“x”的 ASCII 值为 120,超出了票中可能数字的范围,您可以安全地将“x”转换为其整数值,然后将其分配给其数组元素。在打印中,如果你看到 120 打印'x'。

在你的char的整数值在其他可能的整数值范围内的情况下,选择另一个整数值并在逻辑流程中将此值视为'x'(例如,为相应的整数选择0,如果0来打印'x')。

您可以使用 ncurses 或简单地打印票证状态,然后在打印修改后的票证以进行输出之前清除屏幕。

关于c - 替换 C 中已经打印的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10958967/

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