12345672)修饰符(位于%和格式字符之间)l长dldflfh短+使输出的数字总是带有“+”或者“-”-左对齐0加前导0(前导和左对齐不能同时使用)#在输出的八进制或者十六进制前加前导“0”或者“0X”其他进制中不其作用。3)输出数据所占宽度(m.n)(1)对整数指定宽度:(d)m:当变量的实际宽度小于m时,左边多余位置补空格;当变量的实际宽度大于m时,按实际输出。n:当变量的实际宽度大于n时,按实际输出;当变量的实际宽度小于n时,左边多余位置补0;8(2)对实数指定宽度:(f,e)m:用于指定实数的总体宽度,包括小数点当实数的总体宽度小于m时,在数据左侧补空格;当实数的总体宽度大于m时,m无效。n:用于指定实数的小数部分宽度,当实数的小数部分小于n时,在数据右侧补0;当实数的小数部分大于n时,将小数的多余部分四舍五入。(3)对g或G指定宽度m:代表输出的总宽度n:代表输出几个有效位(4)对s指定宽度m:代表输出的总宽度n:代表输出字符的个数程序1,输出格式限制#includestdio.hvoidmain(){inta=32767;longintal=32768;unsignedb=65535;floatc=123.456789;doubled=987.3654321;charch='A',s[]=abcdefg;clrscr();printf(a=%d\n,a);a=32767printf(al=ld\n,al);al=32768printf(b=%u,b=%ob=%x\n,b,b,b);b=65535,b=177777,b=ffffprintf(c=%f,b=%e,b=%g\n,c,c,c);c=123.456789c=1.23457e*02c=123.457printf(d=%lf,d=%e\n,d,d);d=987.654321,d=9.87654e*02printf(ch=%c\n,ch);ch=Aprintf(s[]=%s\n,s);s[]=abcdefgprintf(%%\n);%printf(a=%p\n,a);a=7FFF}程序2:修饰符的使用#includestdio.h9voidmain(){inta=10;unsignedc=65535;floatb=-10.56;clrscr();printf(a=%d\n,a);a=10printf(a=%+d\n,a);a=+10printf(b=%f\n,b);b=-10.56printf(a=*%010d*\n,a);a=*000000000010*printf(c=%#o\n,c);c=0177777(正常八进制的输出)printf(c=%#x\n,c);c=0xffff(正常十六进制的输出)}程序3输出数据宽度使用#includestdio.hvoidmain(){inta=10;floatb=123.456;clrscr();printf(a=*%10d*\n,a);a=*--------10*printf(a=*%.10d*\n,a);a=*0000000010*printf(a=*%1d*\n,a);a=*10*printf(a=*%.1d*\n,a);a=*10*printf(b=%f\n,b);b=123.456001printf(b=%15f\n,b);b=-----123.456001printf(b=%.2f\n,b);b=123.46printf(b=%.5f\n,b);b=123.45600printf(b=%8.5f\n,b);b=123.45600(以小数位为主)}程序4输出数据宽度使用10#includestdio.hvoidmain(){floatb=123.456;chars=abcdefg;clrscr();printf(b=%g\n,b);b=123.456printf(b=%5g\n,b);b=123.456printf(b=%10g\n,b);b=---123.456printf(b=%.4g\n,b);b=123.5printf(s=%s\n,s);s=abcdefgprintf(s=%5s\n,s);s=abcdefgprintf(s=%15s\n,s);s=--------abcdefgprintf(s=%.3s\n,s);s=abcprintf(s=%.15s\n,s);s=abcdefg}111213141516