c语言如何将浮点型数据转换为数组
发布网友
发布时间:2022-05-10 14:02
我来回答
共3个回答
热心网友
时间:2023-10-11 02:20
库函数gcvt可以完成此任务,它返回转换后的字符串的地址。如:
//#include
"stdafx.h"//If
the
vc++6.0,
with
this
line.
#include "stdio.h"
#include "stdlib.h"
int main(void){
double x=34.743829109;
char a[19];
printf("%s\n",gcvt(x,5,a));//5确定有效数字长度且据其后数字四舍五入
return 0;
}
热心网友
时间:2023-10-11 02:21
#include
"stdio.h"
float
temp=26.3;
char
buf[10];
sscanf(temp,"%4.1f",buf);//buf="26.3"
LCD_PutString(buf);
单片机c语言编程里可以调用sscanf函数,但是scanf,printf就不行了,那是需要硬件
热心网友
时间:2023-10-11 02:21
一、c语言中数值型数据分为两大类:整型和浮点型
整型:char
int
short
long
浮点型:float(单精度)
double(双精度)
二、浮点型数据转存到字符串中
char
str[30];
//定义一个字符数组,来存储数据
double
d=123.456;
//定义一个浮点型变量d
sprintf(str,"%f",
d
);
//格式串同printf()格式要求
sprintf(str,"%.2f",
d
);
//保留两位小数,第三位四舍五入
三、整型数据转存到字符串中
char
str[30];
int
i=123;
sprintf(str,
"%d",
i
);
四、0-9之间的数据转为字符
c语言中,字符型数据在存储时,实际上存储的是字符的ascii值,字符'0'到'9'对应的ascii是连续的,其值为48-57,所以,0-9数值转为字符时,只需要加上'0'就可以了,如:
char
ch;
int
i;
i=1;
ch=i+'0'
;
printf("ch=%c
ascii=%d",
ch,
ch
);
//按%c输出,就是字符1,按%d输出就是ascii值49