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;

}

时间: 2024-12-29 23:47:56

ftoa浮法成字符串的相关文章

Sql Server将一列字段拼接成字符串方法

最近在项目中遇到个问题,需要将表中某列字段合并成字符串输出,如果直接通过代码全部读取出来,再遍历进行拼接显然不是最好的方法,所以想着能否在数据读取的时候直接拼接好返回,网上搜了可通过for xml来实现. 首先,准备好需要的数据,脚本如下: if exists (select * from sysObjects where id=object_id('Student')) drop table Student go create table Student ( Id int, Name varc

java 数字转换成字符串

一.各种数字类型转换成字符串型:  public static void main(String[] args) { double value = 123456.123; String str = String.valueOf(value); // 其中 value 为任意一种数字类型. System.out.println("字符串str 的值: " + str); //字符串str 的值: 123456.123 } 二.字符串型转换成各种数字类型: public static vo

谭浩强 c程序设计 8.17用递归法将一个整数n转换成字符串。例如,输入486,应输出字符串&quot;486&quot;。n的位数不确定,可以是任意位数的整数。

8.17用递归法将一个整数n转换成字符串.例如,输入486,应输出字符串"486".n的位数不确定,可以是任意位数的整数. #include <stdio.h> char str1[20];int i=0;long n;int main(){        int longToStr(long n);    char *revstr(char *str, int len);    printf("请输入一个整数n:\n");    scanf("

jQuery把所有被选中的checkbox的某个属性值连接成字符串

有这样的一个需求:对于一组checkbox,当点击每个checkbox后,把当前处于选中状态的checkbox的某个属性值取出来连接成字符串,并以逗号分开. html部分: <input type="checkbox" id="1"/> <label for="1">选项一</label> <br/> <input type="checkbox" id="2&qu

将整形数字(int)转换成字符串

#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<string.h> #include<string.h> void itoa(int n, char *buf) { int count = 0; char nu; char buf2[128] = { 0 }; //核心算法很简单 就是每次取出各位数字然后把数字转存进数组,中间有一个数组匿置的过程 do

JavaScript基础 join() 将数组连接成字符串 化零为整

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=ut

laravel 将数组转化成字符串 再把字符串转化成数组

这是在给阮少翔改代码的时候用的方法, 开始的数据用explored转化成数组不是想要的结果, 我就自己写了一个方法把有用的信息提取出来拼接成一个字符串, 再用explored将字符串转化成数组.   方法有点笨, 但是最后是解决了阮少翔的问题 $re1 = DB::table('admin_user') ->join('admin_role_user','admin_user.id','=','admin_role_user.user_id') ->select('admin_role_use

jquery把int类型转换成字符串类型的方法

jQuery中把获取的number类型数据转换成字符串类型 var val=$("#id).val(); If(typeof val=="number"){ val+=' '; }

delphi 怎么将一个文件流转换成字符串(String到流,String到文件,相互转化)

//from   http://kingron.myetang.com/zsfunc0d.htm (*//   标题:充分利用pascal字符串类型   说明:和PChar不同,string可以保存#0字符在其中;示例文件.内存流字符串之间转换   设计:Zswang   日期:2002-01-25   支持:[email protected]   //*) ///////Begin   Source   function   StringToFile(mString:   string;