仅以此记重新开始我的C语言之旅。
#include"stdio.h"
int main(){
double a=1.1, b=1.2;
int c=1, d=2;
// %md 可以使不足m位的int型变量以m位进行右对齐输出,其中高位用空格补齐,如果变量本身超过m位则保持原样
// %0md 右对齐,和%md的唯一不同在于:当变量不足m位时,将在前面补足够数量的0而不是空格
// %-md 左对齐,低位用空格补齐
printf("以%%10d形式输出:%10d %10d\n", c, d); // 右对齐
printf("以%%-10d形式输出:%-10d %-10d\n", c, d); // 左对齐
printf("以%%010d形式输出:%010d %010d\n", c, d); // 右对齐,不足位数前面补0
// %.mf 让浮点数保留m位小数输出
printf("以%%10.f形式输出:%.10f %.10f\n", a, b); // 左对齐,小数点后面有10位
printf("以%%-10.f形式输出:%-.10f %-.10f\n", a, b); // 左对齐,小数点后面有10位
return 0;
}
小结:
1. 默认的格式输出是左对齐的,如 %d
2. %md 可以使不足m位的int型变量以m位进行右对齐输出,其中高位用空格补齐,如果变量本身超过m位则保持原样
3. %0md 右对齐,和%md的唯一不同在于:当变量不足m位时,将在前面补足够数量的0而不是空格
4. %-md 左对齐,低位用空格补齐
5. %.mf 让浮点数保留m位小数输出
(ps: 在用scanf()函数对double 类型的变量进行输入时,要用%lf; 用printf() 函数对double 类型变量输出时,用%f 、%lf 均可)