scanf的返回值怎么输出(分享scanf函数返回值操作方法)
输入输出几乎是每个C程序必须具备的功能,因为有了它们,程序才有了交互性。C提供的输入输出函数除了具有必须的输入输出功能外,还有一些其他实用的小技巧,了解这些小技巧将会为程序带来更友好的用户体验。
一、printf字段宽度、精度修饰符
当我们要输出类似表格形式的样式时,我们会用到字段宽度修饰符。它能够让printf函数的输出更加规整。我们先看下面的程序:
没有对齐的输出
程序定义了一个容纳20个数字的数组,然后利用两个for循环将20个数字以四行五列的格式进行输出,虽然我们在printf的格式说明符%d的前面已经敲了一个空格,防止了数据紧密地挨着,但是,很难看出这是一个四行五列的格式。这里我们就需要字段宽度修饰符,请看下面修改之后的程序:
对齐的输出
可以看到,在%d之间加上字段宽度修饰符,我们的输出变得好看多了,那么,为什么是7呢?因为7代表着输出占用7个宽度的字段,而我们的数字最宽只有6个,所以7就足够让数据分隔开了。默认是按照右对齐的方式排列的,如果想要左对齐,那么只需要再加一个左对齐的标志“-”即可,如下图:
左对齐
加了左对齐的标志之后,程序输出就变得非常友好了。这是字段宽度修饰符的作用,字段精度修饰符用于输出小数时的格式化。比如限制小数位数、指定小数以科学计数法显示等。如下图:
精度修饰符
从输出来看,第一行是默认输出格式,可以看到默认带有6个小数位;第二行加了.2精度修饰符,限制了小数位为2位,可以看到输出2位小数,并且按照四舍五入进行输出;第三行加了“+”号标志,它能显示变量的正负号,我们定义的变量是正数,所以显示了一个加号,当然了,如果是负数,默认也是输出负号的;第四行以科学计数法进行输出,指数部分默认是以三位显示,不足三位用0补齐;第四行是限制小数位数的输出。
二、scanf修饰符限制输入位数
在scanf中添加字段宽度修饰符可以限制用户输入的数据宽度,即使用户输入的宽度超过需求,scanf也只会读取指定宽度的数据,请看下面的程序:
不带有字段宽度修饰符的程序
可以看到即使用户输入四位数,程序也将按照四位进行读取,不利于程序的稳定运行,但是只要在%d之间加上字段宽度修饰符,不管你输入几位,scanf将只读取前两位数:
带有字段宽度修饰符的程序
加上一个提示和小小的修饰符就能够使得程序更加友好,不用复杂的验证代码,非常有利于简单程序的验证,减小程序体积,提高程序运行效率。这里要注意中文的读取,一个中文占用两个字节位置,所以要限制读取两个中文,要指定宽度修饰符为4,如果是3将只读取一个中文。
三、printf、scanf函数的返回值
有没有想过你经常使用的输入输出函数的返回值问题呢?其实它们都是有返回值的。printf函数返回输出的字节个数,scanf返回成功读取项目的个数,如下图:
两者的返回值程序
可以看出,printf返回了7个中文占用的字节数14,scanf返回了读取成功的项目数2。
- 1绿茶生产基地你不知道的10个惊人秘密
- 2雁荡毛峰茶民间传说(探寻雁荡山茶文化的传承与发展)
- 3普洱茶为什么是越陈越值钱-古董普洱茶并非越陈越值钱
- 4武夷红茶泡(享受武夷山的红茶文化)
- 5喝绿茶真的好(介绍绿茶的健康功效与饮用方法)
- 6女性喝普洱茶有哪些好处?
- 7普洱茶的养生功效及饮用方法详解
- 8安吉白茶是白茶还是绿茶?解答你的疑惑
- 9白瓷杯泡红茶(享受红茶的优雅生活)
- 10国内高档红茶价格分析及推荐
- 11正山小种三盒装价格及购买推荐
- 12铁观音能闷泡吗?
- 13普洱茶到底有多少种(普洱茶的品种分类和特点)
- 14红茶与荔枝哪一个更适合你的口味?
- 15黄花云尖的冲泡方法(品味黄花云尖的独特韵味)
- 16黄山碧云茶叶的种类和产地介绍
- 17滇红茶的价格多少(市面上滇红茶的价格参考)
- 18女生夏天喝绿茶的好处有哪些?
- 19安吉白茶有几个等级及其特点介绍
- 20普洱茶味道苦吗「普洱茶的苦味是如何存在的」
- 21茉莉绿茶涩的原因及如何解决
- 22如何用柑普茶提高工作效率?
- 23龙井生茶怎么喝(品尝龙井生茶的正确方法)
- 24龙井茶2023年生产计划(预测龙井茶产量及市场前景)
- 25普洱茶回甜与回甘区别「普洱茶的回甘是时间转化的滋味」
- 26台地茶的起源,你绝对不知道的惊人秘密
- 27西湖龙井与其他绿茶的区别(了解西湖龙井的独特之处)
- 28铁观音盖碗冲泡时间介绍(让你喝出口感最佳的茶水)
- 29普洱茶用盖碗冲泡的注意事项及正确方法
- 30武阳春雨茶(品尝武阳特色茶饮)