C语言中如何把浮点型转换为字符型
一、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
浮点型转换为字符型一般需要计算的,比如现在浮点型是414.15f
转换为字符型,那么就需要将这串数据转换为ASCII码,单个数字单个数字转换:
定义一个缓冲区:char
Buffer[6]用于存放这几个数字;
接着:
将浮点型放大,转换为整型:(int)(414.15
*
100)
=
41415d
逐个取值:
for(i=0;i<6;i++)
{
41415
%
10
=
5
;
//求除以10的余数,从各位开始取值
10*10
=
100
;
//将除数放大10倍,一个循环后就编程了100,两个循环后是1000,以此求取各位上的数字;
Buffer[i]
=余数+'0';
//将各个位上的数字转化成字符型,存入缓冲区
}
转换为字符型,那么就需要将这串数据转换为ASCII码,单个数字单个数字转换:
定义一个缓冲区:char Buffer[6]用于存放这几个数字;
接着:
将浮点型放大,转换为整型:(int)(414.15 * 100) = 41415d
逐个取值:
for(i=0;i<6;i++)
{
41415 % 10 = 5 ; //求除以10的余数,从各位开始取值
10*10 = 100 ; //将除数放大10倍,一个循环后就编程了100,两个循环后是1000,以此求取各位上的数字;
Buffer[i] =余数+'0'; //将各个位上的数字转化成字符型,存入缓冲区
}
一、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
和前面那个人说的一样,代码如下:
#include<stdio.h>
int main(void)
{
int a = 1;
int b = 2;
char c;
c = a + '0';
printf("%d %d %c\n",a,b,c);
return 0;
}
sprintf(c,"%d",a);
c='1';
C语言中如何把浮点型转换为字符型
浮点型转换为字符型一般需要计算的,比如现在浮点型是414.15f 转换为字符型,那么就需要将这串数据转换为ASCII码,单个数字单个数字转换:定义一个缓冲区:char Buffer[6]用于存放这几个数字;接着:将浮点型放大,转换为整型:(int)(414.15 * 100) = 41415d 逐个取值:for(i=0;i<6;i++){ 4...
如何把浮点型数字变量整个的变成字符型
整型:char int short long 浮点型:float(单精度) double(双精度)二、浮点型数据转存到字符串中 char str[30]; \/\/定义一个字符数组,来存储数据 double d=123.456; \/\/定义一个浮点型变量d sprintf(str,"%f", d ); \/\/格式串同printf()格式要求 sprintf(str,"%.2f", d ); \/\/保留两...
51单片机c语言如何把浮点型转为字符串 ?
使用stdio.h中的sprintf函数转化即可:include <stdio.h>float a = 1.234;char str[10];sprintf(str, "%f", a);
C 语言 哪个函数可以把 浮点数转换成字符串 带小数点 怎么做
用gcvt函数!函数名: gcvt 功 能: 把浮点数转换成字符串 用 法: char *gcvt(double value, int ndigit, char *buf);例子:include <stdlib.h> include <stdio.h> int main(void){ char str[25];double dNum;int n = 5;\/\/需要转化的位数 \/\/一般浮点数...
c语言里 怎样将单精度浮点型数转换成字符型
include <stdio.h>#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;}
c语言里怎么把float转换为char型?
可以使用强制转换,其一般形式为:(类型说明符) (表达式) 其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。例如: (float) a 把a转换为浮点型,(int)(x+y) 把x+y的结果转换为整型。这种方法显然对浮点型数据的精度会有影响,且注意最终输出的形式不同结果也是不同的,若要保留数字...
求助浮点型和字符型相互转换
用 FloatToStr 函数即可 注意,FloatToStr 函数有两种形态:1. FloatToStr(Value: Extended): string;2. FloatToStr(Value: Extended; const FormatSettings: TFormatSettings): string;第二种可以定义输出格式。
在C语言中怎样编写代码实现把浮点数转换成字符串
defineucharunsignedchar defineuintunsignedint intpows(intx){ inty=1;for(;x!=0;x--)y=y*10;returny;} voiddisplay_result(doubleresult){ if(result<0){ printf("-");display_result(-result);} if(result>0){ doublei;intx;uinty;i=1;for(x=0;i>=1;x++)i=result\/pows(x+1...
FORTRAN里怎样把数值类型(整数,浮点数)转换为字符串
用write语句来将数值类型的转换为字符型,例如:integer iy character ye*4 iy=2001 write(ye,'(i4)')iy 通过这个语句就可以把整型iy的值转换为字符型ye中,这个ye也就可以作为变量名,放在打开文件的语句中了,如open(11,file='D:\\TEST\\'\/\/ye\/\/'.txt')。
如何将浮点变量转换成字符串
直接sprintf(str,"%f",f);就把f这个浮点数的值写到了str字符串中。如果只需要打印就直接写printf("%f",f)可以专门设置一个setf函数,只允许使用这个函数来对f设置值,在函数中写sprintf就实现了每改变一次就打印一次的效果。