#include <stdio.h> int main() { long double i = 12345678.12345678901234567890; //浮点型数据类型有float,double,long double三种类型 long double x = 1234.12345678901234567890; //浮点型数据类型有float,double,long double三种类型 printf("\n浮点型数据常用格式:\n"); printf("%%f = %f \n", i); //%f 输出浮点数,默认6位小数,末位四色五入,%f/%lf/%llf输出时无区别;; printf("%%e = %e \n", i); //%e 以指数形式输出浮点数,指数中"e"小写,默认6位为转化后的小数点后面的6位; printf("%%E = %E \n", i); //%E 以指数形式输出浮点数,指数中"E"大写,默认6位为转化后的小数点后面的6位; printf("%%g = %g \n", i); //%g 选用%f和%e较短的一种,末位0省略,指数e小写,默认6位包括小数点前面的数; printf("%%G = %G \n", i); //%G 选用%f和%e较短的一种,末位0省略,指数E大写,默认6位包括小数点前面的数; printf("%%g = %g \n", x); //%g 选用%f格式输出,末位0省略,默认6位包括小数点前面的数; printf("%%G = %G \n", x); //%G 选用%f格式输出,末位0省略,默认6位包括小数点前面的数; printf("\n浮点型数据控制格式:\n"); printf("%% f = % f \n", i); //% f 若数据符号为正,则显示空格,负则显示"-",对所有格式都有效; printf("%%+f = %+f \n", i); //%+f 输出数据正负号, 正数显示"+",负数则显示"-"; printf("%%20f = %20f \n", i); //%20f 输出最小宽度为20,数据右对齐; printf("%%-20f = %-20f \n", i); //%-20f 输出最小宽度为20,数据左对齐; printf("%%020f = %020f \n", i); //%020f 输出最小宽度为20,空位"0"填充; printf("%%.10f = %.10f \n", i); //%.10f 输出数据小数点后保留10位; printf("%%+025.10f = %+025.10f \n", i); //%+025.10f 输出正负号,最小宽度25,空位用0填充,小数点后保留10位; printf("%%*.*f = %*.*f \n", 30, 3, i); //%*.*f 用参数控制小数的最小宽度30和小数点的位数3; } 浮点型数据常用格式: %f = 12345678.123457 %e = 1.234568e+07 %E = 1.234568E+07 %g = 1.23457e+07 %G = 1.23457E+07 %g = 1234.12 %G = 1234.12 浮点型数据控制格式: % f = 12345678.123457 %+f = +12345678.123457 %20f = 12345678.123457 %-20f = 12345678.123457 %020f = 0000012345678.123457 %.10f = 12345678.1234567892 %+025.10f = +0000012345678.1234567892 %*.*f = 12345678.123 //(%*.*f \n", 30, 3, i);