我正在用c制作Bubble游戏,其中在控制台窗口上随机生成一些数字,并且用户需要输入出现在屏幕或控制台窗口上的数字,并且我需要将用户输入的内容与随机生成的数字进行比较,并制作该数字在屏幕上看不见。
我在c语言中使用了rand()函数,对于用户输入,我使用了getch()函数,并且尝试了每种类型转换,但尚未获得解决方案。
void main() {
char temp1 = 0;
char temp = 0;
temp1 = rand()%10;
temp = getch();
if(temp == temp1)
printf("ok");
}
我想比较运行时随机生成的值和用户输入,以及通过查看控制台上的数字是否等于我要退出而得到的用户输入。
答案 0 :(得分:0)
数字字符的字符代码值为'0'
至'9'
(在ASCII字符集中为0x30至0x39或十进制为48至57),而rand() % 10
的整数值为0至9
通过将字符代码'0'
(48)添加到随机数,您将生成一个随机字符代码'0'
至'9'
。
int main()
{
char temp1 = rand() % 10 + '0' ;
char temp = getch() ;
if( temp == temp1 )
{
printf("ok");
}
return 0 ;
}
或者,如果从输入的字符中减去'0'
,则将数字字符转换为它们对应的0到9整数值(其他字符转换为其他值)。