C语言中如何实现从整型数字12345到字符串12.345的转换

2025-01-07 10:08:31
推荐回答(1个)
回答1:

int i = 12345;
char str[100];
sprintf(str, "%0.3f", ((float)i)/1000);
以上是简单的数字转换, 先把int类型转变为float, 然后除以1000, 再作为浮点数输出到str.
并不需要用到拆分字符串.

char num[] = "12345";
char str[100];
sprintf(str, "%s", num);
sprintf(str+2, ".%s", num+2);
以上是将"12345"这个字符串的指定位置插入一个'.'.
首先将整个字符串(12345)输出到str, 然后把后半部分(345, num+2的位置)连同一个'.'输出到
str第3个字符的位置(即str+2), 注意第2句sprintf的".%s"中 '%'前面有个 '.'

sprintf和printf用法一样, 只不过输出目标不是屏幕, 而是指定字符串(第一个参数).