printf

来源:互联网 发布:cs1.6 优化参数 编辑:程序博客网 时间:2024/06/06 16:34
#include <stdio.h>#include <stdlib.h>int main(){    int a1=20, a2=345, a3=700, a4=22;    int b1=56720, b2=9999, b3=20098, b4=2;    int c1=233, c2=205, c3=1, c4=6666;    int d1=34, d2=0, d3=23, d4=23006783;    printf("%-9d %-9d %-9d %-9d\n", a1, a2, a3, a4);    printf("%-9d %-9d %-9d %-9d\n", b1, b2, b3, b4);    printf("%-9d %-9d %-9d %-9d\n", c1, c2, c3, c4);    printf("%-9d %-9d %-9d %-9d\n", d1, d2, d3, d4);    system("pause");    return 0;}/*这样写起来更加方便,即使改变某个数字,也无需修改 printf 语句。%-9d中,d表示以十进制输出,9表示最少占9个字符的宽度,宽度不足以空格补齐,-表示左对齐。综合起来,%-9d表示以十进制输出,左对齐,宽度最小为9个字符。大家可以亲自试试%9d的输出效果。printf 格式控制字符串的完整形式如下:%[flags][width][.precision]type1) type 也就是以什么类型输出,比如 %d、%f、%c,type 就分别对应 d、f、c;%-9d中 type 对应 d。type 必须有。2) width 表示最小输出宽度,也就是占几个字符的位置;%-9d中 width 对应 9。注意:[xxx] 并不是C语言规定的格式,只是一种习惯写法,表示此处的内容可有可无,后面会经常见到这样的写法。对于整数和小数,默认右对齐,不足的宽度以空格补齐,例如:printf("%10d%12f", 234, 9.8);输出结果为:       234    9.800000234 前面共有7个空格,9.8 前面有4个空格。3) .precision 表示输出精度。对于 %d,.precision 表示的其实是最小输出宽度,与 width 不同的是,不足的宽度以 0 补齐,例如:printf("%.10d\n", 4309);输出结果为:0000004309对于 %f,.precision 表示小数的位数,不足以 0 补齐,也就是精度,例如:printf("%.10f %.3f\n", 23.988, 2.9328745);输出结果为:23.9880000000 2.9334) flags 是标志字符,%-9d中 flags 对应-。几种常见的标志字符标志字符含  义-         左对齐+         输出符号(正号或负号)空格     输出值为正时冠以空格,为负时冠以负号#         对c、s、d、u类无影响;            对o类,在输出时加前缀o;             对x类,在输出时加前缀0x;             对e、g、f 类当结果有小数时才给出小数点。 */ 

0 0
原创粉丝点击