"getchar();" 进行单个字符的输入,要和赋值语句一起使用,如图:
"putchar(变量名);" 进行单个字符的输出,示例:
"scanf("格式控制字符串",变量地址列表);" 进行格式化输入
正如上文提到的printf();当中可能出现的百分号,用于表示格式说明,输出的时候会用引号外,逗号右边的变量列表一一对应且替换,当我们使用scanf进行格式化输入的时候也需要用到百分号的格式说明。当你依照引号里的格式进行输入的时候,你输入的不同部分也会与里面的格式进行对应,然后按顺序储存到引号外面,逗号右边的变量地址当中。只有当你的输入格式与scanf当中的格式控制字符串一致时才能正常输入。注意,逗号右边是变量地址,不是变量名,因此我们要用到取址符“&”,从而得到变量所在的内存地址。示例如图:
大伙可能还注意到了,我输入小数的时候输入的是1.123,可是输出的对应小数却是1.123000,数值上没问题,可是保留了6位小数。那是因为输出时的"%f"代表以6位小数输出,若要保留3位小数,只需将"%f"替换成"%.3f"即可。同理,10位小数就替换成"%.10f",不过容易出现不准确的数值,我也不太懂,下文补别人的链接,自行领悟。
补:https://zhuanlan.zhihu.com/p/265281184?utm_source=QQ_article_bottom
注意,除非你输入的空格夹在要接收的变量之间,否则在scanf当中的格式控制字符串里面没有空格的情况下,scanf的输入遇到空格或者回车就会停止扫描。