ftoa浮法成字符串
#include <stdio.h>
bool ftos(float num,char *s,int n)
{
int temp;
float t=num;
int pn=0;
bool flag_s=true;
bool flag_z=false;
for(int i=n;i>0;i--)
t=t*10;
printf("%f\n",t);
temp=t;
printf("%d\n",temp);
if(temp<0)
{
temp=-temp;
t=-num;
flag_s=false;
}
if(temp==0)
{
if(n>0)
{
for( pn=0;pn<n;pn++)
{
*(s+pn)='0';
}
*(s+pn)='\.';
++pn;
}
*(s+pn)='0';
++pn;
if(!flag_s){
*(s+pn)='\-';
++pn;
}
*(s+pn)='\0';
}
else
{
while(temp>0)
{
if(pn==n && n>0)
{
*(s+pn)='\.';
++pn;
}
else{
*(s+pn)=(temp%10)+'0';
temp=temp/10;
++pn;
}
}
while(pn<n)
{
*(s+pn)='0';
++pn;
}
if(pn==n)
{
*(s+pn)='\.';
++pn;
if(flag_s){
*(s+pn)='0';
++pn;
}
}
if(!flag_s){
if(t<1.0){
*(s+pn)='\.';
++pn;
*(s+pn)='0';
++pn;
}
*(s+pn)='\-';
++pn;
}
*(s+pn)='\0';
}
int i(0),j(pn-1);
while(i<j)
{
int temp=*(s+i);
*(s+i)=*(s+j);
*(s+j)=temp;
++i;
j--;
}
return true;
}
int main()
{
char s[20];
float num=123.456;
int n=3;
scanf("%f",&num);
scanf("%d",&n);
printf("float num is %f\n",num);
if(ftos(num,s,n))
{
printf("after convert is %s\n",s);
}
return 0;
}
ftoa浮法成字符串的更多相关文章
- C#字节数组转换成字符串
C#字节数组转换成字符串 如果还想从 System.String 类中找到方法进行字符串和字节数组之间的转换,恐怕你会失望了.为了进行这样的转换,我们不得不借助另一个类:System.Text.Enc ...
- 100怎么变成100.00 || undefined在数字环境下是:NaN || null在数字环境下是0 || 数组的toString()方法把每个元素变成字符串,拼在一起以逗号隔开 || 空数组转换成字符串后是什么?
100怎么变成100.00?
- 将数据转化成字符串时:用字符串的链接 还是 StringBuilder
/* 目的:将数据转化成字符串时:用字符串的链接 还是 StringBuilder呢? */ public class Test{ public static void main(String[] a ...
- js 将json对象转成字符串
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 随笔 JS 字符串 分割成字符串数组 并动态添加到指定ID的DOM 里
JS /* * 字符串 分割成字符串数组 并动态添加到指定ID的DOM 里 * @id 要插入到DOM元素的ID * * 输入值为图片URL 字符串 * */ function addImages(i ...
- js 字符串分割成字符串数组 遍历数组插入指定DOM里 原生JS效果
使用的TP3.2 JS字符串分割成字符串数组 var images='{$content.pictureurl} ' ;结构是这样 attachment/picture/uploadify/20141 ...
- 前台 JSON对象转换成字符串 相互转换 的几种方式
在最近的工作中,使用到JSON进行数据的传递,特别是从前端传递到后台,前台可以直接采用ajax的data函数,按json格式传递,后台Request即可,但有的时候,需要传递多个参数,后台使用requ ...
- 将Ajax 中数组转换成字符串 封装成类
<?php class Ajax{ //ajax调用的方法 //sql是要执行的语句 //$type是SQL语句的类型,0代表增删改,1代表查询 //$db代表要操作的数据 public fun ...
- php部分--例子:租房子(复选框的全选、数组拼接成字符串、设置复选框的name值、)
1.链接数据库 <?php include("DBDA.class.php"); $db=new DBDA(); $sql="select * from fangz ...
随机推荐
- Struts2_1_struts2建立一个执行环境
1)最低需要进口jar包: commons-fileupload-1.2.1.jar.commons-logging-1.0.4.jar. freemarker-2.3.15.jar.ognl-2.7 ...
- a web-based music player(GO + html5)
github 住址:https://github.com/codercheng/music-player 后台是用GO (windows/ linux 都能够),前端是HTML5 推荐用chrome浏 ...
- SVD在推荐系统中的应用
一.奇异值分解SVD 1.SVD原理 SVD将矩阵分为三个矩阵的乘积,公式: 中间矩阵∑为对角阵,对角元素值为Data矩阵特征值λi,且已经从大到小排序,即使去掉特征值小的那些特征,依然可以很好地重构 ...
- mac下qt设置调试器 调试器未设置
标号少标个5凑合看吧
- git 如何让单个文件回退到指定的版本
1.进入到文件所在文件目录,或者能找到文件的路径查看文件的修改记录 1 $ git log MainActivity.java 结果: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...
- Oracle中的delete和truncate的关系
转自:http://chenxy.blog.51cto.com/729966/168459 1.相同点 a.都可以删除数据,其中truncate用于全表清空数据,而delete可以选择的删 ...
- 沃森Mysql数据库修复工具
华信Mysql数据库修复程序是由北京华信数据恢复中心独立研发.主要针对Mysql数据库损坏的恢复. 本程序可用于因为各种误操作而导致数据丢失的恢复,以及因为断电.陈列损坏.硬盘坏道等各种原因导致数据库 ...
- Matlab图像处理系列4———傅立叶变换和反变换的图像
注意:这一系列实验的图像处理程序,使用Matlab实现最重要的图像处理算法 1.Fourier兑换 (1)频域增强 除了在空间域内能够加工处理图像以外,我们还能够将图像变换到其它空间后进行处理.这些方 ...
- 分享一下我的部分毕设内容:基于Windows Phone平台的污染源管理应用
原文:分享一下我的部分毕设内容:基于Windows Phone平台的污染源管理应用 毕业半年,又总结了一下之前的工作,发现很多知识不复习都忘记了.最近新闻总是报道北京的空气污染,各种雾霾,各种PM X ...
- 01. SQL Server 如何读写数据
原文:01. SQL Server 如何读写数据 一. 数据读写流程简要SQL Server作为一个关系型数据库,自然也维持了事务的ACID特性,数据库的读写冲突由事务隔离级别控制.无论有没有显示开启 ...