科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该数字及其指数部分的正负号即使对正数也必定明确给出。

现以科学计数法的格式给出实数 A,请编写程序按普通数字表示法输出 A,并保证所有有效位都被保留。

输入格式:
每个输入包含 1 个测试用例,即一个以科学计数法表示的实数 A。该数字的存储长度不超过 9999 字节,且其指数的绝对值不超过 9999。

输出格式:
对每个测试用例,在一行中按普通数字表示法输出 A,并保证所有有效位都被保留,包括末尾的 0。

输入样例 1:
+1.23400E-03
输出样例 1:
0.00123400
输入样例 2:
-1.2E+10
输出样例 2:
-12000000000

注***: 根据题意一定用字符串进行输入(因为指数的绝对值不超过9999)

#include<iostream>
#include<string>
#include<vector>
using namespace std;
int main(){string s;getline(cin,s);int i=0;while(s[i]!='E') i++; //定位E的位置string s1=s.substr(1,i-1);  //取除符号位到E之前int n=stoi(s.substr(i+1));  //取E后,扩大或者缩小多少if(s[0]=='-')cout<<'-';if(n<0){     //小数点左移动cout<<"0.";for(int i=0;i<abs(n)-1;i++)cout<<'0';for(int i=0;i<s1.size();i++){if(s1[i]!='.')cout<<s1[i];}
}else{   //小数点右移动cout<<s1[0];int cnt,j;for(j=2,cnt=0;j<s1.size()&&cnt<n;j++,cnt++)cout<<s1[j];if(j==s1.size()){ //s1 遍历完了,补0for(int k=0;k<n-cnt;k++)cout<<'0';}else{//n 用完了,还要输出s1 里的  **懂得都懂**  不懂的反复理解代码cout<<'.';   for(int k=j;k<s1.size();k++)cout<<s1[k];}}return 0;
}

1024 科学计数法 (20分) c/c++代码中有详细解释相关推荐

  1. C++学习之路 | PTA乙级—— 1024 科学计数法 (20 分)(精简)

    1024 科学计数法 (20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数 ...

  2. PAT 1024 科学计数法 (20分) C语言实现

    1024 科学计数法 (20分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数部 ...

  3. 【PAT (Basic Level) 】1024 科学计数法 (20 分)

    科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该数字及其指数部 ...

  4. 1024 科学计数法 (20 分)(c语言)

    科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+-][1-9].[0-9]+E[+-][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该数字及其指 ...

  5. 测试点错的来:1024 科学计数法 (20分)

    立志用更少的代码做更高效的表达 PAT乙级最优题解-->传送门 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+, ...

  6. PAT乙级 1024 科学计数法 (20 分)

    题目内容 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+-][1-9].[0-9]+E[+-][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该 ...

  7. 【PAT乙级】1024 科学计数法 (20 分)

    题目地址 上面的精简写法: #include<cstdio> #include<iostream> #include<string> #include<alg ...

  8. 1024 科学计数法 (20)(20 分)

    1024 科学计数法 (20)(20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+, ...

  9. 1024. 科学计数法 (20)

    科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位 ...

最新文章

  1. Ubuntu中Atom安装与使用
  2. (2 sat) hdu 1824
  3. how tomcat works
  4. lock和synchronized的同步区别与选择
  5. 转:20分钟教你使用hexo搭建github博客
  6. 3-4:常见任务和主要工具之文件搜索
  7. C# 中对于json的解析小结
  8. Leecode刷题热题HOT100(2)——两数相加
  9. Win7下使用U盘安装Ubuntu16.04双系统图文教程(亲测)
  10. 数据格式与数据类型(Content-Type)
  11. python静态方法怎么调用_python实例方法、静态方法和类方法
  12. 手动导入第三方工程/类库
  13. 智能优化算法:金枪鱼群优化算法-附代码
  14. VS2015 C#6.0 中的那些新特性(转)
  15. redis 编译/调试
  16. 《异度神剑2》与犹太教卡巴拉略考
  17. 推荐一个node QQ机器人框架-onebot
  18. OSChina 周六乱弹 ——什么是村支书不可推卸的责任!
  19. kneighbors()返回值indices、distances详解
  20. 用友系统客户端登录不上服务器,客户端不能登录服务器-用友U8

热门文章

  1. Hello Spring boot
  2. 温室温度预测方案总结(万文详解)
  3. python项目方案书模板格式_GitHub - petterobam/python_tpl: Python项目规范模板
  4. 微信和支付宝收款0.2%接口
  5. 任拓数据科技 软件开发工程师 一面 万兴科技 前端开发工程师 一二面hr面
  6. 多媒体通信中内容分发网络技术分析
  7. 端午屈夫子祭-基于LeafLet的夫子一生时空轨迹纵览
  8. 毕业设计:基于STM32或(arduino)智能物联网居家防盗系统
  9. 【scipy.sparse中csr.matrix的用法】
  10. 《前沿》杂志简介|《前沿》杂志投稿及咨询