本文目录一览:
- 1、c语言中的“%d,%s,%c,%d,%f,%s”是什么意思
- 2、C语言中%5.3d中.3是什么意思
- 3、c语言中%5.2d是什么意思
- 4、c语言求解:printf("%5.3d%05.3d",6,6);结果为何一样,且前面为什么有前置0
- 5、C语言-输出
- 6、c语言“%05.3d”是什么意思?
c语言中的“%d,%s,%c,%d,%f,%s”是什么意思
这一类符号是“格式说明”,用于格式的输入与格式的输出,就是当printf和scanf函数中在输入输出时,对不同类型的数据(如int,float,char等)要使用不同的格式来进行说明。
%d,用来输出十进制整数。
%f,用来输出实数(包括单,双精度),以小数形式输出,默认情况下保留小数点6位。
%c,用来输出一个字符。
%s,用来输出一个字符串。
扩展资料:
格式说明由“%”和格式字符组成,如%d%f等。它的作用是将输出的数据转换为指定的格式输出。格式说明总是由“%”字符开始的。
格式字符有d,o,x,u,c,s,f,e,g等。
如%d整型输出,%ld长整型输出,%o以八进制数形式输出整数,%x以十六进制数形式输出整数,或输出字符串的地址。
%u以十进制数输出unsigned型数据(无符号数)。注意:%d与%u有无符号的数值范围,也就是极限的值,不然数值打印出来会有误。
%.100f用来输出实数,保留小数点100位。
%e以指数形式输出实数。
%g根据大小自动选f格式或e格式,且不输出无意义的零。
C语言中%5.3d中.3是什么意思
%5.3d表示
默认使用5的宽度,如果小于5个宽度的话
.3表示使用3位精度,保留3个数字,如果只有1位,用0在数字前补充;所以你输入6,会出现* 006*,0前有2个空格
如果是5.5,则*00006*;如果是5.6,则因为精度数字大于宽度,所以是*000006*,有问题一起交流哈。
c语言中%5.2d是什么意思
%5.2d意思是输出整型数时,每个数在屏幕上占有5个字符的宽度且右对齐,每个数据至少输出2位,不足的前面用0补齐。如printf("%5.2d",8);,则屏幕上显示:xxx08。xxx表示3个空格。
%属于转义字符,通过样式化输出函数printf()输出想要的结果。
扩展资料
函数printf从右到左压栈,然后将先读取放到栈底,最后读取的放在栈顶,处理时候是从栈顶开始的,所以看见的结果是,从右边开始处理的。
printf("格式化字符串", 参量表);
格式化字符串包含了要被写入到标准输出 stdout 的文本。它可以包含嵌入的 format 标签,format 标签可被随后的附加参数中指定的值替换,并按需求进行格式化。format 标签属性是 %[flags][width][.precision][length]specifier
%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
参考资料来源:百度百科-printf()
c语言求解:printf("%5.3d%05.3d",6,6);结果为何一样,且前面为什么有前置0
printf("%5.3d%05.3d",6,6);
意思是右对齐,5代表数据宽度是5
.3是用0来补齐5位宽度的。剩余2个宽度用空格来补
至于为啥%5.3d%05.3d结果是一样的。。。我猜05和5都是5呗。。。所以就一样了
C语言-输出
float有效精度为7位(包括小数点),最后一位四舍五入后得到的结果就是1234.57。e+03是科学表示法,即10的3次方。
%5.3d表示输出的是数值,小数点前至少5位,不足5位会使用空格填充,小数点后只有3位。
在无符号数系统中,没有负数,所以负数会被转换成正数。在计算机中-1的表示形式是1111 1111 1111 1111,所以等于10进制的65535
写程序时,指定一个量是有符号的,那么当这个量的二进制各位上都是1时,它表示的数就是-1;相反,如果事选声明这个量是无符号的,此时它表示的就是该量允许的最大值,对于一个字节的数来说,最大值就是255。
c语言“%05.3d”是什么意思?
它的意思是把6按十进制输出,占宽5列右对齐,数据输出3位;实际数据不足3位时前面用0被齐,实际数据多于3位时按实际宽度输出;当数据多于5位时不受列宽限制按实际数位输出。