C语言 %d 、 %f 分别是什么意思?

Python017

C语言 %d 、 %f 分别是什么意思?,第1张

%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用于格式化输入输出函数,用来格式化输入输出float(单精度浮点数)类型数据。

1、格式化输入函数,包括scanf, fscanf, sscanf, vscanf, vsscanf,vfscanf等。当%f用于格式化输入函数时,后续对应位置应传入一个float类型变量的地址。

不同的格式化输入函数,只是源不同,功能都是从源中,按照格式读取数据存到变量中,当指定%f格式时,会尝试读取一个浮点数,存到对应参数地址中。

2、格式化输出函数,包括printf, fprintf, sprintf, vprintf, vsprintf,vfprintf等。当%f用于格式化输出函数时,后续对应位置应传入一个float类型变量的值。

区分函数不同, 会将对应的float变量值,格式化输出到对应的目标上。

默认%f会输出6位小数。

3、代码举例:

#include <stdio.h>

int main()

{

    float a//定义变量。

    scanf("%f",&a)//读入数据。

    printf("get float: %f\n", a)//输出读入的数据。

    return 0

}

运行示例:

输入

1.23

输出

1.230000

4、注意事项:

在使用%f输入时,必须传入float类型的地址,否则会出错。

而用%f输出时,可以传入float或者double的值。 如果传入为double,函数会自动强制转换为float类型输出。