c语言简单问题求解吧。

img


这51是哪来的

getchar 只能读一个字符,读的是输入第一个数字 "3","3"的ascii码是0x33,转换成10进制数是 51,打印出来的就是 51
你的程序要用 scanf 去做会容易些。

3的ascii码就是51
你用了getchar,是以字符的形式作为输入的
然后你又按float输出

getchar返回值是所接收字符的ASCII码,34344只会接受到3这个字符,3的ASCII码是51