c语言中怎么把 [字符(%c) 转成 [浮点型(%f)]]

如题所述

一、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
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-07-18
C语言在编译时,会自动进行数据类型的转换。像你这里,系统会自动把字符型转换为浮点型。所以,你担心的问题是不会出现的。就像你这样,直接写就可以了,让后用printf语句输出即可
printf(“%f”,c)

C语言中如何将char[]转换为float?
atof()函数,可以把字符串(字符数组)转成float,相应的有atoi可以转成int,itoa()从int到字符串等

C语言 怎样将无符号整型转换成浮点型
C语言中无符号整型转换成浮点型方法如下:unsigned int x=123;1、输出强制转换,如:printf("%f", x ); \/\/这样的输出因为%f与x的类型不同,导致输出数据异常 printf("%f", (float)x ); \/\/强制转换成浮点型,可正确输出 2、存储到相应的变量中,如:float fVal;fVal=x ; \/\/系统会隐式...

请问C语言中如何将int转换为float
这个程序没问题啊,sum2输出是浮点型啊

c语言怎么把分数变成浮点型
方法代码如下:\/*MODF.C*\/#includelt;math.hgt;#includelt;stdio.hgt;voidmain(void){doublex,y,n;x=-14.87654321;\/*Dividexintoitsfractional*\/y=modf(x,amp;n);\/*andintegerparts*\/printf("For%f,thefractionis%fandtheintegeris%.f\\n",x,y,n);}浮点型数据定义:浮点型数据分为浮点...

c语言如何将数字字符串强制转换成double型
可以先将数字字符串拆分成两个部分:整数部分、小数部分。整数部分计算长度为NZ,根据长度来计算总值,小数部分也是一样。最后只要把整数部分与小数部分相加就行。如果是用系统函数,我想用atof应该可以,不过我只用过atoi,所以对atof不太了解,你可以百度上去找现成的资料 ...

在c语言中如何把字符型转变成double型?例如字符型:123.25 转换成double...
你好,include <stdio.h> include <stdlib.h> \/\/ 应用头文件,用到了 atoi函数。main(){ char str[] ="13.67";double dstr;dstr=atof(str);printf("%f\\n",dstr);}

浮点型用c语言怎么表示?
include<stdio.h> int main(){ float a,b,c,D,max;scanf("%f%f%f",&a,&b,&c);if(a>b)D=a;else D=b;if(D>c)max=D;else max=c;printf("%f",max);return 0;}

C语言中字符串和整数小数相互转换的函数以及头文件
字符串转到数(stdlib.h头文件):atof(将字符串转换成浮点型数)atoi(将字符串转换成整型数)atol(将字符串转换成长整型数)strtod(将字符串转换成浮点数)strtol(将字符串转换成长整型数)strtoul(将字符串转换成无符号长整型数)数转到字符串(stdio.h头文件):sprintf(格式输出,可以转换任何类型变量到...

c语言输出% f的格式?
printf("%f",fVal);\/\/这是浮点默认输出格式,小数点保留6位 printf("%.1f",fVal);\/\/.1是说明,小数点保留1位,对其后的数据进行四舍五入 printf("%.2f",fVal);\/\/.2是说明,小数点保留2位,对其后的数据进行四舍五入,你想保留几位,就用点几 printf("%10f",fVal);\/\/输出宽度为10个...

c语言中%lf区别
都是转换符,%c要求将结果转换为字符型; %d 要求转换为十进制型;%f 转换为浮点型;%lf转换为长浮点型。

相似回答
大家正在搜