%m.nd:m代表输出一共占m列,不够m列前面补空格,够m列不作任何处理,n代表这个数一共要有n列,不够前面补0,够n列不做任何处理。
int main(){int a = 123;printf("%.4d\n",a);printf("%5d\n", a);printf("%5.4d\n", a);return 0;}
运行结果如下:
0123123 0123
%m.ns:m代表这个字符串一共输出m列,n代表取这个字符串前n个元素输出到整个m列的右侧,当n=m时,不做处理
int main(){char*s = "hello world";printf("%5.3s\n",s);printf("%6.7s\n",s);printf("%.2s\n",s);return 0;}helhello w he
int main(){float a = 1.25;printf("%5.1f\n",a);printf("%.4f\n",a);printf("%4.3f\n",a);return 0;}1.31.25001.250
%m.nf:m代表这个数一共要输出m列,包括小数点和小数的位数,n代表小数的个数,当浮点数的小数小于n时,采用四舍五入,大于时,后面补0。
2023.02.21
From:努力进大厂的新青年