putchar用法的一个程序

2020-04-29 科技 140阅读
问题1:这个是让输入数字倒序的程序,但是用putchar输出的话会输出一堆符号,怎么回事呢?
回答:因为putchar的括号内放的应该是字符(串),所以当你写:
putchar('1')时,输出的才是1.因为'1'的外面套了一个单引号(字符串就套双引号)
而,输入putchar(1)时
输出的是ASCII码(是电脑中所认定的一种标准交换码,如果你不懂可以直接无视,因为这只是个常识而已,想要知道号码和相应的字符可以在网上查一下)为1的符号,也就是笑脸符号。
而真正需要输出0时,必须写putchar(48),
因为0的ASCII码是48,而1是49,2是50,等等,直到9是57。
所以你想要输出n%10时,括号内应该写n%10+48,而不是n%10。
电脑里很多时候ASCII码和字符是可以相互转换的,所以当出现很多符号的时候,可以多考虑是不是ASCII码的问题
问题2:putchar是一定要配合getchar用的吗?它所输出的格式是什么决定的呢?
回答:不一定。因为putchar的输出格式不太好控制,也比较单一,所以大部分时候都会用putchar,而是使用printf,getchar的输出格式就是括号里的字符串,字符串什么样,打出来就是什么样。
问题3:那我想用putchar像printf那样输出一个变量怎么办?
回答:很少有这样的用法(恕我见识短浅)……一般都用printf比较方便吧?
在这一题的具体过程中,可以改成putchar (N%10+48),但是其他的就没有这样的改法了。putchar的中文意思就是输出字符函数,很少有用来输出整型数值的用法。你可以具体问一问别人吧。不好意思不能帮你。
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com