格式化控制符

来源:互联网 发布:efm32编程 编辑:程序博客网 时间:2024/06/05 16:28
例: 
printf("数字1= , 数字2= "); 我想让两个等号后面的两个数字,是由我填多少就打印多少,怎么做?
解决: 
printf("数字1=%d,数字2=%d",10,20);
那么,程序会自动把10放在前面一个位置,把20放在后面的位置 
打印结果为:数字1=10,数字2=20 
像这种类似%d的东西,称之为格式化控制符! 


以下是部分格式化控制符以及解释:
%d:代表占用一个放int类型(整数)的位置 
%ld:代表占用一个放long类型的位置
%c:代表占用一个放char类型(字符)的位置
%f:代表占用一个放float类型的位置
%lf:代表占用一个放double类型的位置
%u :代表占用一个unsigned int类型的数据
%lu:代表占用一个unsigned long类型的数据

 %d或者%ld的其他控制符:
        1.%md:m代表这个整数占多少位,m是一个整数

                实际数字不足的位数用空格补齐



     如果实际的整数的位数大于或者等于m时,就按实际输出



   m也可以是负数,那么代表不足位在后面补齐




        2.%0md:跟上面一样的作用,只不过不足位用0补齐 (重点)




  3.不能用其他的来补齐,只能用0
 
 
 %f或者%lf的其他控制符
        float是加上小数点一共7位有效,也就是小数点后6位是有效数字
        double是加上小数点一共15位有效,也就是小数点后14位是有效数字
 
        1.不管是float还是double默认会输出小数点后6位


        2.%.mf:m代表保留小数点后几位,m是一个整数,最后一位会四舍五入 (重点)




 3.%n.mf:n代表总共的列数(小数点也算1列),m还是跟上面的一样,代表保留几位小数
                 n可以控制列数,如果实际列数小于n时,那么不足部分以空格补齐
                 但是如果实际列数>=n时,就按实际的输出
                 n<=m时,就按照m规定的输出
 



0 0
原创粉丝点击