⑴ C语言中如何把浮点型转换为字符型
浮点型转换为字符型一般需要计算的,比如现在浮点型是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';
//将各个位上的数字转化成字符型,存入缓冲区
}
⑵ 怎么将sql server 语句中integer类型转换成string
SQL Server中的数值类型分为两种,一种是精确的数值类型,具体的数据类型有:
bit、tinyint、smallint、int、bigint、smallmoney、money和decimal,这些数据类型能够精确的表明某以数值;
另一种是近似的数值类型,具体就是float和real。
浮点数据为近似值,因此,并非数据类型范围内的所有值都能精确地表示。
有些时候需要将这些数值类型转换为字符串类型,用到的转换函数就是cast和convert,这两个函数的作用都是进行类型转换,只不过语法格式不同。
对于精确数值的数据类型,转换出来的字符串就是存储的数值,比如:
declare @i int
set @i=123456789
print 'test:'+convert(varchar(20),@i)
输出就是:test:123456789
而如果对于近似数值的数据类型,那么可就没有那么简单了。
declare @i float
set @i=123456789
print 'test:'+convert(varchar(20),@i)
输出结果:test:1.23457e+008
输出的结果是使用科学计数法来表示的,再看看可否通过指定转换样式来指定不使用科学计数法呢?帮助文档中说到float 或 real 转换为字符数据时的 style 值:
0(默认值)最大为 6 位数。根据需要使用科学记数法。
1 始终为 8 位值。始终使用科学记数法。
2 始终为 16 位值。始终使用科学记数法。
值是123456789,超过了6位数.所以不管是0还是1,2结果都会使用科学计数法来表示。
那么要怎么样才能将我们的数据不转换成科学计数法而输出呢?比较简单的办法就是将近似数据转换为精确数据,然后再将精确数据转换成字符串。
同样以上面的例子为例, 进行两次数据类型的转换如下:
declare @i float
set @i=123456789
print 'test:'+convert(varchar(20),convert(int,@i))
输出:test:123456789如果是有小数,那么我们要转换出小数位的话,可以转换成decimal,转换出的小数位数在定义decimal时指定。
比如要输出4位小数,那么转换代码是:
declare @i float
set @i=123456789.12
print 'test:'+convert(varchar(20),convert(decimal(18,4),@i))
输出:test:123456789.1200
⑶ sql中float怎样转成int
可以用cast()或convert()进行转换
如cast(col as int) 或convert(int,col)
⑷ sql float转 nvarchar格式 ,急
你的格式有问题
定义了 declare @s float(8) ,但你赋值的时候却给了十几位的长度,后面的字符型也是.
可以把变量改的长一点,例如:
declare @s numeric(32,4)
declare @t nvarchar(32)
set @s=127777777777773.1222
set @t=convert(nvarchar(50),@s)
print @t
set @t=cast(@s as nvarchar(50))
print @t
⑸ 如何将浮点类型转换成字符型
一、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
⑹ sql float转String
额......
MS SQL里面没有STRING
但是有类似的,CHAR VARCHAR NCHAR 和NVARCHAR
关于其中的区别,建议你在联机帮助文档看看。
至于转换的话...
用convert函数可以实现。
convert(nvarchar(20),float)
⑺ sql float转 nvarchar格式 ,急
命令格式:
CONVERT (使用类型[(长度)], 源变量 [, 转换参数])
对于FLOAT转为VARCHAR类型,转换参数值设置如下:
0(默认值) 最大为 6 位数。根据需要使用科学记数法。
1 始终为 8 位值。始终使用科学记数法。
2 始终为 16 位值。始终使用科学记数法。
所以,您如果未选转换参数,即下面的格式,为默认值0,当有效的最大位数为 6 以上时,自动舍去,并根据需要使用科学记数法。
convert(nvarchar(100),[汇总表$].[F2])
所以,你应该在分析数据精度要求的基础上,采用适合的方法。(转换为定点数似乎问题更多,不建议使用)
⑻ sql 语句 ,怎么将字符型转换为数字型(整型,浮点型)都行,用什么函数 在线等
你可以试试Convert函数 ,例如:
Convert(int, 字段) //前一个参数为目标类型,后一个为字段名
如果想转换成浮点型/日期 等,可以通过第三个参数来控制格式
⑼ 在sql server2000中,如何把整型字段转换成字符串型字段
使用函数STR()
STR
由数字数据转换来的字符数据。
语法
STR ( float_expression [ , length [ , decimal ] ] )
参数
float_expression
是带小数点的近似数字 (float) 数据类型的表达式。不要在 STR 函数中将函数或子查询用作 float_expression。
length
是总长度,包括小数点、符号、数字或空格。默认值为 10。
decimal
是小数点右边的位数。
返回类型
char
注释
如果为 STR 提供 length 和 decimal 参数值,则这些值应该是正数。在默认情况下或者小数参数为 0 时,数字四舍五入为整数。指定长度应该大于或等于小数点前面的数字加上数字符号(若有)的长度。短的 float_expression 在指定长度内右对齐,长的 float_expression 则截断为指定的小数位数。例如,STR(12,10) 输出的结果是 12,在结果集内右对齐。而 STR(1223, 2) 则将结果集截断为 **。可以嵌套字符串函数。
说明 若要转换为 Unicode 数据,请在 CONVERT 或 CAST 转换函数内使用 STR。
示例
A. 使用 STR
下例将包含五个数字和一个小数点的表达式转换为有六个位置的字符串。数字的小数部分四舍五入为一个小数位。
SELECT STR(123.45, 6, 1)
GO
下面是结果集:
------
123.5
(1 row(s) affected)
当表达式超出指定长度时,字符串为指定长度返回 **。
SELECT STR(123.45, 2, 2)
GO
下面是结果集:
--
**
(1 row(s) affected)
即使数字数据嵌套在 STR内,结果集也是带指定格式的字符数据。
SELECT STR (FLOOR (123.45), 8, 3)
GO
下面是结果集:
--------
123.000
(1 row(s) affected)
⑽ sql中怎么将double型 的转换为字符串型
select CAST( 字段名 as 字符串类型)
比如 现在我有一个student表中有一个grade 类型double 保存学生成绩
select cast(garde as nvarchar(50)) as '列别名' from student
当前注意 转换的时候,注意类型本身的大小,例如 大字段(长度) 转换 小类型 或许会失败