%g的用法

1、%g :根据具体的数值选择 %e 或 %f 

     %G: 根据具体数值选择 %E 或 %f

2、

在变量类型是float或double时,都可以用%g输出,省略小数后面的0,例如:
float a=3.14,b;
b=a/2;
printf("%f %g\n",b,b);
结果输出1.570000 1.57

`printf` 是 C/C++ 中的一个标准库函数,用于格式化输出。在 `printf` 函数中,百分号 `%` 后面跟的一些字符被称为格式控制符,它们用来指定如何转换输出的数据类型和格式。 `%` 后面的字符有几种常见的用法: 1. **基本格式说明符**: - `%d`: 整数(十进制) - `%u`: 无符号整数(十进制) - `%i`: 符号根据前缀确定(`-` 表示负,否则为正),如 `%id` - `%f`: 浮点数(通常双精度) - `%e`: 科学记数法表示的浮点数 - `%g`: 自动选择 `%f` 或 `%e` - `%lf`: 长 double 类型的浮点数 - `%o`: 八进制数 - `%x` or `%X`: 十六进制数(小写或大写字母) 2. **宽度**: `-`: 输出左对齐,如果前面没有宽度,`%` 后的数字就是宽度;如果有 `-`,则右对齐 3. **精度**: `.`: 对于浮点数(`%f`, `%e`, `%g`, `%F`, `%G`),`.n` 表示保留 n 位小数,默认为 6。 4. **标志**: - `0` 或 `#`: 对于整数,前面加上 `0` 表示填充零,加 `#` 显示原码表示 - `h`: 前缀,使 %d, %u, 和 %o 表示最小的固定宽度的短整型 - `l` 或 `L`: 前缀,使 `%d`, `%u`, `%i`, `%o`, `%x`, `%X`, `%e`, `%f`, `%g`, `%G` 等使用长整型或长双精度 5. **复用格式**: - `%s`: 字符串,后面接空终止的字符数组 - `%p`: 指针地址以十六进制形式打印 - `%c`: 单个字符 - `%n`: 记录已输出到屏幕的字节数 例如,以下是一些 `printf` 的使用例子: ```cpp int num = 123; double pi = 3.141592653589793238; char* str = "Hello, World!"; printf("Number in decimal: %d\n", num); printf("Number in hexadecimal: %02x\n", num); // 填充两个 '0' printf("Pi value: %.2f\n", pi); // 保留两位小数 printf("%s length: %lu\n", str, strlen(str)); // 输出字符串长度,以无符号长整型显示 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值