gpt4 book ai didi

C语言将 'char'类型转换为 'int'并保存数据

转载 作者:太空宇宙 更新时间:2023-11-04 03:03:08 25 4
gpt4 key购买 nike

我目前正在上一门涉及 C 编程语言的编程基础大学类(class)。我的一项任务是编写一个程序,创建一个从 1 到 10 的随机数,并让用户猜测这个数字。我遇到的问题是我必须使用 isdigit() 函数来检查猜测是否是一个数字。我用过

scanf("%c", &userChar);

以下列方式存储参数以检查猜测是否为数字:

if isdigit(userChar)

但是,我想通过将“userChar”转换为 int 变量来检查以确保数字在 1 到 10 之间,以按以下方式检查:

if (userNum >= 1 && userNum <= 10)

我还没有学会如何做,所以我希望这个网站的人能帮助我。另外,我需要它来检查用户是否猜对了数字。提前致谢。

最佳答案

由于 10 不能存储在单个字符中,因此您要么需要使用两位数,要么要求用户猜测 0 到 9 之间的一个数字,包括 0 和 9。

要从单个数字字符生成 int,请使用以下代码片段:

int digitVal = charDigit - '0';

这是可行的,因为数字 0 到 9 在 ASCII 编码中彼此相邻:1 的代码等于 0 的代码加一; 2 的代码等于 0 的代码加二,依此类推。因此,当你从一个数字字符中减去0(在C中表示为'0')的代码时,得到相应数字的整数值.

关于C语言将 'char'类型转换为 'int'并保存数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9057970/

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