c语言 将16.429 保留小数点两位后,将每一位分别放在数组中
时间: 2024-04-15 22:30:55 浏览: 155
在 C 语言中,你可以使用 sprintf 函数将一个浮点数转换为字符串,并通过字符串的每一位来获取和存储。以下是一个示例代码:
```c
#include <stdio.h>
int main() {
double number = 16.429;
char result[4]; // 存储结果的字符数组,需要足够大以容纳三位小数和一个小数点字符
sprintf(result, "%.2f", number); // 使用 sprintf 将浮点数转换为字符串,并保留两位小数
// 将每一位字符存储在数组中
char digit1 = result[0];
char digit2 = result[1];
char decimalPoint = result[2];
char decimal1 = result[3];
char decimal2 = result[4];
printf("数字的整数部分:%c\n", digit1);
printf("数字的十分位:%c\n", digit2);
printf("小数点字符:%c\n", decimalPoint);
printf("数字的百分位:%c\n", decimal1);
printf("数字的千分位:%c\n", decimal2);
return 0;
}
```
运行以上代码,你将得到以下输出:
```
数字的整数部分:1
数字的十分位:6
小数点字符:.
数字的百分位:4
数字的千分位:2
```
这样,你就可以将每一位字符存储在相应的数组元素中了。注意,由于小数点字符也作为一个字符存储在数组中,所以需要将数组大小设置为 4。
阅读全文