C语言,为什么输入1之后的得到的是49,不是1
答案:3 悬赏:20 手机版
解决时间 2021-02-05 04:42
- 提问者网友:谁的错
- 2021-02-04 05:26
C语言,为什么输入1之后的得到的是49,不是1
最佳答案
- 五星知识达人网友:上分大魔王
- 2021-02-04 06:21
x=getchar();
你程序中的x是按字符读取的,而不是按数字读取。
字符1在ASCII码表中对应的十进制数是49,将字符1(而不是数字1)对应的十进制数赋值给整数y,y的值是49
输出y的值,当然是输出49了。
你程序中的x是按字符读取的,而不是按数字读取。
字符1在ASCII码表中对应的十进制数是49,将字符1(而不是数字1)对应的十进制数赋值给整数y,y的值是49
输出y的值,当然是输出49了。
全部回答
- 1楼网友:愁杀梦里人
- 2021-02-04 08:01
如果要输出1 必须用字符输出,如果用%d则输出1对应的ASCII值49.
- 2楼网友:愁杀梦里人
- 2021-02-04 07:29
x=getchar(); 得到的是 字符 1, 写成字符常量 是 '1'.
字符 1, 对应的 ASCII 码 数值 等于 十进制 49。
printf("%c %d\n",x,x); 若用 %c 格式输出 就得 1,用 %d 格式输出 就得 ASCII 码 数值了。
字符 1, 对应的 ASCII 码 数值 等于 十进制 49。
printf("%c %d\n",x,x); 若用 %c 格式输出 就得 1,用 %d 格式输出 就得 ASCII 码 数值了。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯