
C语言中的printf与scanf函数
发布日期:2021-05-07 21:49:30
浏览次数:20
分类:精选文章
本文共 1292 字,大约阅读时间需要 4 分钟。
C语言中Printf与Scanf函数的格式控制
1. printf函数的格式字符串
在C语言的printf函数中,格式字符串是控制输出格式的关键。常用的格式控制符包括:
1.1 左对齐与右对齐
%-md
:左对齐,若宽度m
比实际数据少,会按实际数据输出,右边补空格。例如:#include
int main(void) { int a = 12; printf("%5d\n", a); // 输出: 12 return 0;} %md
:右对齐,若宽度m
比实际数据少,左边补空格,右边按实际数据输出。例如:#include
int main(void) { int a = 12; printf("%5d\n", a); // 输出:12 }
1.2 精确控制字符数量
%m.ns
:输出m
位,取字符串的前n
位,左补空格。当n
大于m
或m
省略时,n
默认等于m
。例如:#include
int main(void) { printf("%7.2s\n", "NAME"); // 输出: NAME}
1.3 浮点数输出
%m.nf
:输出浮点数,m
为宽度,n
为小数点右边的数字位数。输出包括小数点的m
位数字,若不足左补空格。例如:#include
int main(void) { printf("%3.1f\n", 3852.99); // 输出:3853.0}
2. printf函数的完整格式说明
格式控制符的完整组成包括:
%
:格式说明的起始符,必不可少。-
:左对齐,省略则右对齐。0
:左补空格为0,省略则不补空格。m.n
:m
指域宽,n
指精度,若n
省略则默认为6位小数。l
或h
:l
表示long型或double型,h
修正整型为short型。
2.1 示例说明
%d
:输出整型数,默认右对齐,左补空格为非0。%0.6f
:输出浮点数,宽度为0,精度为6位,左补空格为0。%lu
:输出unsigned long整型,右对齐。
3. scanf函数的格式控制符
与printf函数类似,scanf函数的格式控制符也有所不同:
3.1 格式字符一致性
- 常用格式包括
%d
、%o
、%x
、%c
、%s
、%f
、%e
等,不支持%u
和%g
格式。
3.2 列宽控制
- 可以指定输入数据的列宽,系统会自动截取相应数据。例如:
scanf("%3d%3d", &a, &b);
输入:
输出:123456
a=123
,b=456
3.3 跳过数据
- 使用
*
作为附加说明符,表示跳过相应数据。例如:scanf("%2d%*3d%2d", &a, &b);
输入:
输出:1234567
a=12
,b=67
,345
被跳过
3.4 精度控制
- 不支持对浮点数的精度进行指定。例如:
scanf("%6.2f", &a); // 不合法,无法输入123.45
通过以上格式控制符,可以更灵活地处理输入输出数据,提高程序的可读性和功能性。
发表评论
最新留言
很好
[***.229.124.182]2025年04月07日 02时42分05秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
ASP.NET CORE MVC 实现减号分隔(Kebab case)样式的 URL
2019-03-06
bcolz的新操作
2019-03-06
zmq的send
2019-03-06
阿里钉钉面试题
2019-03-06
C++中找资源或者函数的方法
2019-03-06
delete对象时会自动调用类的析构函数
2019-03-06
POD类型
2019-03-06
const与常量,傻傻分不清楚~
2019-03-06
Head First设计模式——迭代器模式
2019-03-06
MongoDB版本及存储引擎区别
2019-03-06
shell echo单行和多行文字定向写入到文件中
2019-03-06
HTML5新特性
2019-03-06
cmp命令
2019-03-06
Linux 磁盘管理(df fu fdisk mkfs mount)
2019-03-06
老Python总结的字典相关知识
2019-03-06
jQuery的事件绑定与触发 - 学习笔记
2019-03-06
Linux上TCP的几个内核参数调优
2019-03-06
记一次讲故事机器人的开发-我有故事,让机器人来读
2019-03-06
seo 回忆录百度基本概念(一)
2019-03-06