重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#include stdio.h
成都创新互联成都网站建设按需策划设计,是成都网站维护公司,为成都柔性防护网提供网站建设服务,有成熟的网站定制合作流程,提供网站定制设计服务:原型图制作、网站创意设计、前端HTML5制作、后台程序开发等。成都网站维护热线:18982081108
#include stdlib.h
int main() {
float fa = 3.68f;
char fstr[20];
// 最简易的方法
sprintf(fstr,"%f",fa);
printf("%s\n",fstr);
// 用专用函数转换
gcvt(fa,8,fstr);
printf("%s\n",fstr);
return 0;
}
je[i]存的是一个字符型数据的ASCII码,比如'1'会被存为49
'0'的ASCII码为48,所以49-48正好就是整数类型的1
使用stdio.h中的sprintf函数转化即可:
#include stdio.h
float a = 1.234;
char str[10];
sprintf(str, "%f", a);
浮点型转换为字符型一般需要计算的,比如现在浮点型是414.15f
转换为字符型,那么就需要将这串数据转换为ASCII码,单个数字单个数字转换:
定义一个缓冲区:char
Buffer[6]用于存放这几个数字;
接着:
将浮点型放大,转换为整型:(int)(414.15
*
100)
=
41415d
逐个取值:
for(i=0;i6;i++)
{
41415
%
10
=
5
;
//求除以10的余数,从各位开始取值
10*10
=
100
;
//将除数放大10倍,一个循环后就编程了100,两个循环后是1000,以此求取各位上的数字;
Buffer[i]
=余数+'0';
//将各个位上的数字转化成字符型,存入缓冲区
}
sprintf类似于fprintf函数,后者格式化打印到文件,前者打印到一个char*指向的内存
用法:
#include stdio.h
float f = 1032.192
char buffer[32];
// 执行以下语句,buffer里面就保存了f转换的结果
sprintf(buffer, "%f", f);