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 ...
随机推荐
- Cache
在选择的几点思考
Cache为缓解DB装有重要数据,下面经常使用memcached和redis要总结,促进技术的选择. 1 memcached (1) 有限支持的操作,持经常使用的set.get.delete和过期删 ...
- OpenCV功能界面和示例
OpenCV2.4.9 API Reference http://docs.opencv.org/modules/refman.html 版权声明:本文博客原创文章,博客,未经同意,不得转载.
- Matlab.NET混合编程技巧之——找出Matlab内置函数
原文:[原创]Matlab.NET混合编程技巧之--找出Matlab内置函数 Matlab与.NET的混合编程,掌握了基本过程,加上一定的开发经验和算法基础,肯定不难.反之,有时候一个小错误,可能抓破 ...
- thinkphp 删除该表的最后一行
问题叙述性说明: 文章连接动态连接表格,因为有被添加.有必须删除.动态添加到表格这似乎有点不合理.它应该只被添加到表格行.而不是增加一个新表格. 发布完整的代码在这里,加入表格新行和删除表格最后一行. ...
- Node.js 开发指南笔记
第一章:node简介 介绍了node是什么:node.js是一个让javascript运行在服务器端的开发平台, node能做些什么:[书上的] 具有复杂逻辑的网站 基于社交网络的大规模Web应用 W ...
- OS X升级到10.10使用后pod故障解决方案出现
最新的mac 10.10强大的好奇心,所以,你的系统升级到10.10.结果表明,使用pod出现下述问题: /System/Library/Frameworks/Ruby.framework/Versi ...
- 使用Maven管理Spring[转]
原文链接: Spring with Maven 原文日期: 2013年04月17日 翻译日期: 2014年06月29日 翻译人员: 铁锚 翻译原文连接:http://blog.csdn.net/ren ...
- DynamicReports
try { response.setCharacterEncoding("UTF-8"); response.setHeader("Content-disposition ...
- JS function立即调用的几种写法
//立即执行 (function () { alert(1) })() //立即执行 !function () { alert(1) }() //立即执行 +function () { alert(1 ...
- 饼干怪兽和APT攻击
APT攻击就像一个孩子,你通过各种方式窃取他们的大脑要拿出饼干,为了防止恶意攻击,过失作为母亲未能发现和防止饼干盗窃贼如.于她仅仅监视厨房椅子.衣柜门或烤箱门的开启.建立起有效防御目标攻击与APT攻击 ...