任务描述:将科学计数法字符串转化为实数

#include<stdio.h>// 将科学计数法字符串转化为实数
// 如 1.345-e2 为0.01345
// 注意,单个字符转化为对应的数字不能用(int) char,应该用 char - '0'
float convert(char *num){printf("开始转换%s\n",num);float num1 = 0.0,num2 = 0.0;int sign = 1;int exp = 1,cishu = 0;//表示e后面是正号还是负号,正号为1,负号为-1//cishu表示是几次饭char *p = num;if(*p == '-'){sign = -1;p++;//如果小数是复数}while(isdigit(*p)){num1 = num1 * 10 + *p - '0';p++;//小数点前面的部分}printf("num1:%f\n",num1);float i = 0.1;p++;while(isdigit(*p)){num2 += i * (*p- '0');i *= 0.1;p++;}//小数点后面的部分printf("num2:%f\n",num2);if(*p == 'e' || *p == 'E')p++;if(*p == '-'){exp = -1;p++;}else if(*p == '+')p++;while(*p != '\0') {cishu = cishu*10 + *p - '0';p++;}printf("cishu:%d\n",cishu);float result = sign*(num1+num2);if(exp == -1) i = 0.1;else i = 10;for(int j=0;j<cishu;j++) result*=i;return result;}
int main()
{char *str = "21.345e2";float result = convert(str);printf("%f",result);return 0;
}

C语言科学计数法字符串转化为实数相关推荐

  1. java科学计数法转十进制_Linux下科学计数法(e)转化为数字的方法

    科学计数法使用e标识数值,将科学计算学转化为数字的思路:按e右边的数字移动小数点位数.e右边的数字如果是负数,则向左移动小数点.示例如下: 1.2345678e2 = 123.45678 1.2345 ...

  2. linux识别科学计数法,Linux下科学计数法(e)转化为数字的方法 [shell中几种数字计算说明]...

    科学计数法使用e标识数值,将科学计算学转化为数字的思路:按e右边的数字移动小数点位数.e右边的数字如果是负数,则向左移动小数点.示例如下:1.2345678e2 = 123.45678 1.23456 ...

  3. 怎么转换科学计数法字符串_【编码技巧】python字符串格式化教你正确打印

    点击上方蓝字关注我吧! %运算符用来格式化字符串.在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要一一对应.如果只有一个%?,括号可以省略.用% ...

  4. c语言科学计数法_C入门:C语言中数据的储存(上)

    How Data is stored in computer memory? 储存数据是计算机进行各种数据操作的基础,为了理解计算机可以对哪些数据进行怎样的操作,有必要了解数据在计算机中的储存方式. ...

  5. R语言科学计数法详解:digits和scipen设置

    控制R语言科学计算法显示有两个option: digitis和scipen.介绍的资料很少,而且有些是错误的.经过翻看R语言的帮助和做例子仔细琢磨,总结如下: 默认的设置是: getOption(&q ...

  6. 轻松一招,解决go语言科学计数法导致交易数据掐尖的问题

    开发区块链时,遇到以下问题,明明交易了5.005e+18数量的代币,结果最后只交易5个 查看以太坊浏览器,数据如下 苦思冥想,应该是数据转换出了问题 balance, _ := strconv.Par ...

  7. PTA1024-C语言-科学计数法

    #include <stdio.h> #include <string.h> #include <math.h>int char_int(char* a, int ...

  8. C语言科学计数法E格式

    记住口诀 e前e后必有数,e前为小数可以省略整数部分或者小数部分,e后必须为整数,中间不能加空格 e前为小数省略小数部分 e前为小数省略整数部分 e后不为整数不合法 e前为小数同时省略整数部分和小数部 ...

  9. python 数值型字符串实现四舍五入 decimal_Python将科学计数法数值转换为指定精度浮点数...

    Python将科学计数法数值转换为指定精度浮点数 In [20]:money = 1190000.0 In [21]: traded_maket_value = 13824000000 In [22] ...

  10. C语言答案写成科学记数法,c语言科学记数法_C语言中、科学计数法123456e+002具体代表什么意思、或者说怎么理解这个数_淘题吧...

    『壹』 c语言用double写了一个表示科学计数法的程序,但是却读不出来30位以上的数,怎么办 double 是抄64 位(8字节),52 位代表有袭效数位,11 位表示指数,一位表示符号,精度(有效 ...

最新文章

  1. suse mysql ERROR1045_Suse发生了错误Access denied for user #39;#39;@#39;localhost#39; toamp;...
  2. Cloudreve云网盘系统源码 支持本地储存
  3. HTML单页营销宣传专题页源码
  4. 大数据_Hbase-原理说明_大数据存储_垂直拆表_水平拆表_动态列扩展---Hbase工作笔记0003
  5. PHP大批量插入数据库的3种方法和速度对比
  6. 百度文库f12免费复制文章
  7. Lambert 投影转换相关代码
  8. 我的毕业论文————面向对象的软件测试
  9. 用拉格朗日插值法,牛顿插值和分段线性插值计算近似值
  10. 结合P2P软件使用Ansible分发大文件 1
  11. ActiveMq NON_PERSISTENT与PERSISTENT以及 durable subscription(持久订阅)的理解
  12. c语言绝对值函数作用,C语言中有没有求绝对值的函数啊?谢谢!
  13. 计算机电子表格课程导入,又到了每年此刻,教你把课程表导入日历
  14. 如何解决OpenStack上Windows虚机CPU负荷
  15. 几种你不知道的获取浙A牌照的方法
  16. 深度探索Hyperledger技术与应用之超级账本的典型交易流程
  17. 关于Python Ansible中 HOST_KEY_CHECKING不生效问题分析
  18. wasm转c调用与封装至dll案例
  19. 论文翻译-On Recognizing Texts of Arbitrary Shapes with 2D Self-Attention
  20. Firefox使用Chrome主题

热门文章

  1. Nicescroll滚动条插件的用法
  2. Nachos 用户进程地址分配
  3. 高通qxdm抓取sensor的log【学习笔记】
  4. python如何截长图_python+selenium实现长截图
  5. CRMEB商城公众号H5前端模板修改,nodejs使用教程
  6. Android Studio内置JDK源码关联和断点错乱问题解决
  7. golang笔记14--go 语言爬虫实战项目介绍
  8. 打算开源一个低代码平台,第三天,包含【工作流,业务流,财务,APQC】。技术站 React,typescript,java,mysql
  9. A4排成A3双面打印怎么操作
  10. HP打印机自动双面打印故障排除