感悟网 导航

C语言中printf ("%f\n", i );中 %f是什么意思? C语言 %d 、 %f 分别是什么意思?

作者&投稿:芒届 (若有异议请与网页底部的电邮联系)
C语言中printf ("%f\n", i );中 %f是什么意思?~

格式字符 说明
%a 读入一个浮点值(仅C99有效)
%A 同上
%c 读入一个字符
%d 读入十进制整数
%i 读入十进制,八进制,十六进制整数
%o 读入八进制整数
%x 读入十六进制整数
%X 同上
%c 读入一个字符
%s 读入一个字符串
%f 读入一个浮点数
%F 同上
%e 同上
%E 同上
%g 同上
%G 同上
%p 读入一个指针
%u 读入一个无符号十进制整数
%n 至此已读入值的等价字符数
%[] 扫描字符集合

%d表示输出输入格式为整型,用于int ,short int;%f表示输出实数,以小数形式输出,默认情况下保留小数点6位。
C语言中,输入输出的格式为:输入输出符号("", ),格式化字符串由格式控制、和输出表列两部分组成,其中格式控制包含格式声明和普通字符。
格式声明由“%”和格式字符组成,如%d、%f等。它的作用是将输出的数据类型转换为指定的格式然后输出。

扩展资料
C语言中格式字符的用法:
一、d格式符
1、%d按整数的实际长度输出。
2、%MD,米为指定的输出字段的宽度。如果数据位数小于米,则左端补以空格,若大于米,则按实际位数输出。(3),%LD,输出长整型数据。例:long a = 135790; 的printf(“%LD”,A);如果用%d输出就会发生错误,因为整型数据的范围是-32768到32767。对于长型数据应当用%ld的格式输出,对长整型数据也可以指定字段宽度,如:%8LD。
二、O格式符,以八进制数形式输出整数。由于内存单元中的各位的值(0或1)按八进制形式输出,因此输出的数值不带符号,即将符号位也一起作为八进制的一部分输出。
三、X格式符,以十六进制数形式输出整数。同样不会出现负的十六进制数。同样可以用%LX输出长整型数,也可以指定输出字段宽度。
四、U格式符,用来输出无符号型数据,即无符号数,以十进制形式输出。一个有符号整数(int型)也可以用%U格式输出,反之,一个无符号型的数据也可以用% d格式输出。按相互赋值的规则处理.Unsigned型数据也可以用%×格式输出。
五、C格式符,用来输出一个字符。一个字符型数据也可以用整数形式输出。
六、S格式符,用来输出一个字符串。
1、%S,的的printf(“%S”,“HELLO”);
2、%MS输出字符串占米列,如字符串本身大于米,则突破米的限制,字符串全部输出,如果小于米,则左补空格(3),% - 。毫秒如果字符串小于米,则在米范围内,字符串向左靠,右补空格。
3、%m.ns,输出占米列,但只取字符串中左端Ñ个字符。这Ñ个字符输出在米列的右侧,左补空格。
4、% - m.ns,其中M,N含义同上,N个字符输出在米范围的左侧,右补空格如果N> M,则自动取值,即保证Ñ个字符正常输出。
参考资料来源:百度百科——格式字符

/*%f是用来指定输出格式的,它指定变量i将按浮点数(float,也即小数)输出。
%f的用法如下:
%0m.nf,数字0是填充字符,m和n是一个整数。其中,由n指定输出的小数部分有几位(默认6位),由|m|(m的绝对值)指定整个输出(包括小数点)占据几个字符的宽度以及数据的对齐方式,m为正表示右对齐,负表示左对齐。如果为了正常显示一个浮点数,实际需要的宽度要大于|m|,则不会受m指定的影响,否则,如果m为正,会在数据的左边填充0(如果指定了0为填充字符)或空格,以补足到|m|指定的宽度,而当m为负时,只能填充空格(即便指定了0作为填充字符,也会忽略)来补足。0,m,n都是可选的,可以不指定,即%f完全合法。
下面是例子。*/
#include<stdio.h>
#include<stdlib.h>

int main()
{
float f1=1.1,f2=222.222,f3=12345678;

//输出0001.10
printf("%07.2f\n",f1);
//输出222.22 左边5个空格
printf("%0-11.2f左边5个空格\n",f2);
//输出12345678.00
printf("%5.2f\n",f3);
system("PAUSE");
return 0;
}

%f 对应的参数为单精度浮点型(float)。会输出一个实数,是整数部分加小数点加小数部分的形式,默认是6位小数。

   

返回顶部
本页内容来自于网友发表,若有相关事宜请照下面的电邮联系
感悟网