c语音 printf附加格式说明符l有什么用

作者&投稿:蓝呼 (若有异议请与网页底部的电邮联系)
C语言输出附加格式说明字符怎么用~

C语言基本的输出格式说明符如下:
%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%0 无符号以八进制表示的整数
%g 自动选择合适的表示法

说明:
1、可以在"%"和字母之间插进数字表示最大场宽。 例如:
%3d 表示输出3位整型数, 不够3位右对齐。
%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6, 小数点占一位, 不够9位右对齐。
%8s 表示输出8个字符的字符串, 不够8个字符右对齐。
如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出,
但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出;
若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。

2、 可以在"%"和字母之间加小写字母l, 表示输出的是长型数。 例如:
%ld 表示输出long整数
%lf 表示输出double浮点数

3、可以控制输出左对齐或右对齐, 即在"%"和字母之间加入一个"-" 号可说明输出为左对齐, 否则为右对齐。 例如:
%-7d 表示输出7位整数左对齐
%-10s 表示输出10个字符左对齐

使用方法可以参考如下程序:
#include #include int main() { char c, s[20], *p; int a=1234, *i; float f=3.141592653589; double x=0.12345678987654321; p="How do you do"; strcpy(s, "Hello, Comrade"); *i=12; c='\x41'; printf("a=%d
", a); /*结果输出十进制整数a=1234*/ printf("a=%6d
", a); /*结果输出6位十进制数a= 1234*/ printf("a=%06d
", a); /*结果输出6位十进制数a=001234*/ printf("a=%2d
", a); /*a超过2位, 按实际值输出a=1234*/ printf("*i=%4d
", *i); /*输出4位十进制整数*i= 12*/ printf("*i=%-4d
", *i); /*输出左对齐4位十进制整数*i=12*/ printf("i=%p
", i); /*输出地址i=06E4*/ printf("f=%f
", f); /*输出浮点数f=3.141593*/ printf("f=6.4f
", f); /*输出6位其中小数点后4位的浮点数f=3.1416*/ printf("x=%lf
", x); /*输出长浮点数x=0.123457*/ printf("x=%18.16lf
", x);/*输出18位其中小数点后16位的长浮点数x=0.1234567898765432*/ printf("c=%c
", c); /*输出字符c=A*/ printf("c=%x
", c); /*输出字符的ASCII码值c=41*/ printf("s[]=%s
", s); /*输出数组字符串s[]=Hello, Comrade*/ printf("s[]=%6.9s
", s);/*输出最多9个字符的字符串s[]=Hello, Co*/ printf("s=%p
", s); /*输出数组字符串首字符地址s=FFBE*/ printf("*p=%s
", p); /* 输出指针字符串p=How do you do*/ printf("p=%p
", p); /*输出指针的值p=0194*/ getch(); retunr 0; }

  1、%L修饰符(注意大写的L):和浮点转换说明符一起使用,表示一个long double值。
  示例:“%Lf”和“%10.4Le”

  注:%l的修饰符(小写的l):和整数说明符一起使用,表示一个long int 或者unsigned long int 类型值。
  示例:“%ld”和“%8lu”。

  2、%h修饰符:和整数转换说明符一起使用,表示一个short int 或者 unsigned short int 类型数值。
  示例:“%hu”、“%hx”和“%6.4hd”
  

printf语句里 %f 和 %lf 用于输出浮点型数据,定点格式。
理论上 %f 用于输出float型, %lf 用于输出double型,定点格式。
实际上 两者可以通用,float 也可用 %lf ,double 也可用 %f ,没有区别。

但注意,输入语句里 不通用,float 必须用 %f, double 必须用 %lf, 不可混淆。

%f是输入输出float类型的
%lf是输入输出double类型的


株洲市15641154905: c语音 printf附加格式说明符l有什么用 -
蒸满护肝: printf语句里 %f 和 %lf 用于输出浮点型数据,定点格式.理论上 %f 用于输出float型, %lf 用于输出double型,定点格式.实际上 两者可以通用,float 也可用 %lf ,double 也可用 %f ,没有区别.但注意,输入语句里 不通用,float 必须用 %f, double 必须用 %lf, 不可混淆.

株洲市15641154905: C语言printf附加格式字符问题,求详细解释 -
蒸满护肝: 其实此题主要考察scanf的附加格式字符作用.scanf中%2d表示只接收两位整数,所以a=98;%3f表示只接收3位浮点数,所以b=765;%4f表示只接收4位浮点数,所以c=4321.printf的附加格式字符只是对相应的变量增加了a=、b=和c=及各输出变量间加了个逗号,且要注意浮点数默认小数是6位,所以最后输出是:a=98,b=765.000000,c=4321.000000.显然C正确.

株洲市15641154905: C语言转换格式符大全? -
蒸满护肝: int printf(const char *format,[argument]);format 参数输出的格式,定义格式为:%[flags][width][.perc] [F|N|h|l]type规定数据输出方式,具体如下:1.type 含义如下:d 有符号10进制整数i 有符号10进制整数o 有符号8进制整数u 无符号10进制...

株洲市15641154905: 计算机c语言中printf表示什么意思 -
蒸满护肝: printf是C语言的库函数,用来输出信息,例如printf("hello"); 这条语句的功能是将hello显示在屏幕上

株洲市15641154905: C语言中格式输出函数PRINTF中的附加格式符中M表示输出数据的最小宽度,在此句中“宽度”是什么意思 -
蒸满护肝: 若是字符串 ,那么宽度为1 ,就输出一个字母或者数字. 例如,M=3,f='asefhv';printf("f"); 输出为 ase

株洲市15641154905: c语言里怎么使用printf? -
蒸满护肝: 1、使用格式为:printf(“格式化字符串",值列表); 2.、格式化控制符: %d:输出int类型,short类型,%ld:输出long类型,%f:输出float类型,%lf:输出double类型,%c:输出char类型. 3、%d或者%ld的其他控制符:%md:m代表这个整...

株洲市15641154905: c语言printf()修饰符怎么用,求大神举个例子 -
蒸满护肝: printf("%d\r\n", 123); printf("%f\r\n", 123.456f); printf("%lf\r\n", 123.456);

株洲市15641154905: C语言格式字符printf八进制输出 -
蒸满护肝: -1的原码是1000 0000 0000 0001,既然知道-1是以补码形式存放的,那么应该知道补码是对原码取反,然后加1,也就是下面的过程,取反(符号位不变):1111 1111 1111 1110,加一:1111 1111 1111 1111,转化成8进制的之后就变成了177777

株洲市15641154905: printf在C语言里是表示什么啊?
蒸满护肝: 格式输出函数 printf("sine of %lf is %lf\n",x,s); 其中%lf为格式字符,表示按双精度浮点数处理.它在格式串中两次现,对应了x和s两个变量.其余字符为非格式字符则照原样输出在屏幕上

株洲市15641154905: C语言中printf格式解释 -
蒸满护肝: #与0是printf的标志之一,2是修饰符;# :对c,s,d,u类无影响;对o类,在输出时加前缀0;对x类,在输出时加前缀0x或者0X;对g,G 类防止尾随0被删除;对于所有的浮点形式,#保证了即使不跟任何数字,也打印一个小数点字符.0 :...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网