c语言格式化符,C语言 格式化字符

本文详细介绍了C语言中的格式化输出,包括%d、%o、%x、%u、%c、%s、%f、%e、%g等格式符的用法,并通过示例展示了各种情况下的输出效果。同时,提到了格式化输入函数sscanf的使用,包括常用用法和一些特殊技巧,如取指定长度的字符串、遇到特定字符截止的字符串等。
摘要由CSDN通过智能技术生成

格式字符控制:

说明:sprintf(格式化后的字符,"%(长度)格式符",格式化前的字符);

1、 d格式符。用来输出十进制数。有以下几种用法:

(1)、%d按整数的实际长度输出。

(2)、%md,m为指定的输出字段的宽度。如果数据位数小于m,则左端补以空格,若大于m,则按实际位数输出。(3)、%ld,输出长整型数据。例:long a=135790;printf(“%ld”,a);如果用%d输出就会发生错误,因为整型数据的范围是-32768到32767.对long型数据应当用%ld格式输出,对长整型数据也可以指定字段宽度,如:%8ld。

2、 o格式符,以八进制数形式输出整数。由于内存单元中的各位的值(0或1)按八进制形式输出,因此输出的数值不带符号,即将符号位也一起作为八进制的一部分输出。

3、 x格式符,以十六进制数形式输出整数。同样不会出现负的十六进制数。同样可以用%lx输出长整型数,也可以指定输出字段宽度。

4、 u格式符,用来输出unsigned型数据,即无符号数,以十进制形式输出。一个有符号整数(int型)也可以用%u格式输出,反之,一个unsigned型的数据也可以用%d格式输出。按相互赋值的规则处理。Unsigned型数据也可以用%x格式输出。

5、 c格式符,用来输出一个字符。一个字符型数据也可以用整数形式输出。

6、 s格式符,用来输出一个字符串。

(1)、%s,printf(“%s”,“HELLO”);

(2)、%ms输出字符串占m列,如字符串本身大于m,则突破m的限制,字符串全部输出,如果小于m,则左补空格。(3)、%-ms如果字符串小于m,则在m范围内,字符串向左靠,右补空格。

(4)、%m.ns,输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。

(5)、%-m.ns,其中m,n含义同上,n个字符输出在m范围的左侧,右补空格。如果n>m,则自动取n值,即保证n个字符正常输出。

7、 f格式符,用来输出实数(包括单,双精度),以小数形式输出。

(1)、%f,不指定字段宽度,有系统自动指定,使整数部分全部如数输出,并输出6位小数。应当注意,并非全部数字都是有效数字。单精度实数的有效位数一般是7位。

(2)、%m.nf指定输出的数据占m列,其中有n位小数。如果数值长度小于m,则左补空格。

(3)、%-m.nf与%m.nf基本相同,只是输出的数值向左端靠,右端补空格。

8、 e格式符,以指数形式输出。

9、 g格式符,用来输出实数,它根据数值的大小,自动选择f格式或e格式(选择输出时占宽度较小的一种),且不输出无意义的零。

*********************************************************

Code

格式

%c

字符

%d

带符号整数

%i

带符号整数

%e

科学计数法, 使用小写"e"

%E

科学计数法, 使用大写"E"

%f

浮点数

%g

使用%e或%f中较短的一个

%G

使用%E或%f中较短的一个

%o

八进制

%s

一串字符

%u

无符号整数

%x

无符号十六进制数, 用小写字母

%X

无符号十六进制数, 用大写字母

%p

一个指针

%n

参数应该是一个指向一个整数的指针

指向的是字符数放置的位置

%%

一个'%'符号

一个位于一个%和格式化命令间的整数担当着一个最小字段宽度说明符,并且加上足够多的空格或0使输出足够长. 如果你想填充0,在最小字段宽度说明符前放置0. 你可以使用一个精度修饰符,它可以根据使用的格式代码而有不同的含义.

用%e, %E和 %f,精度修饰符让你指定想要的小数位数. 例如,

%12.6f

将会至少显示12位数字,并带有6位小数的浮点数.

用%g和 %G, 精度修饰符决定显示的有效数的位数最大值.

用%s,精度修饰符简单的表示一个最大的最大长度, 以补充句点前的最小字段长度.

所有的printf()的输出都是右对齐的,除非你在%符号后放置了负号. 例如,

%-12.4f

将会显示12位字符,4位小数位的浮点数并且左对齐. 你可以修改带字母l和h%d, %i, %o, %u和 %x 等类型说明符指定长型和短型数据类型 (例如 %hd 表示一个短整数). %e, %f和 %g 类型说明符,可以在它们前面放置l指出跟随的是一个double. %g, %f和 %e 类型说明符可以置于字符'#'前保证出现小数点, 即使没有小数位. 带%x类型说明符的'#'字符的使用, 表示显示十

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值