科学计数法 (20)

题目描述

科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位,该数字及其指数部分的正负号即使对正数也必定明确给出。现以科学计数法的格式给出实数A,请编写程序按普通数字表示法输出A,并保证所有有效位都被保留。

输入描述:

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

输出描述:

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

输入例子:

+1.23400E-03

输出例子:

0.00123400
#include <cstdio>
#include <cstring>
#include <cmath>
#include <iostream>
#include <algorithm>
#include <string>
#include <cstdlib>
#include <stack>
#include <map>
#include <set>
#include <queue>
using namespace std;
const int maxn = 1e5+100;
char s[maxn];
int main(void)
{cin>>s;int flag=0;int len = strlen(s);if(s[0]=='+') flag=1;int num2=0;int p=0;int mark_E=0;for(int i=0;i<len;i++){if(s[i]=='E'){mark_E=i;if(s[i+1]=='+') p=1;for(int j=i+2;j<len;j++)num2=num2*10+s[j]-'0';break;}}if(flag==0) printf("-");if(num2==0){for(int i=1;i<mark_E;i++)printf("%c",s[i]);return 0;}if(p==1)//+{int cnt=0,i;printf("%c",s[1]);for(i=3;i<mark_E;i++){printf("%c",s[i]);cnt++;if(cnt==num2){printf(".");continue;}}for(;cnt<num2;cnt++)printf("0");}else //-{int cnt=1,i;printf("0.");for(int i=1;i<num2;i++)printf("0");for(i=1;i<mark_E;i++){if(s[i]=='.') continue;printf("%c",s[i]);}}puts("");return 0;
}

PAT乙级(Basic Level)真题-1014 科学计数法 (20)相关推荐

  1. PAT乙级(Basic Level)真题--跟奥巴马一起编程(15)

    这道题本身不难,但是题目给的有点不清楚,导致当时做这道题被坑了好久,最后看了别人的解答才知道掉进坑里了. 题目描述 美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写 ...

  2. PAT乙级(Basic Level)真题 在霍格沃茨找零钱

    题目描述 如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 -- 就如海格告诉哈利的:"十七个银西可(Sickle)兑一个加隆(Galleon),二 十九个纳特(Knut)兑一个西可 ...

  3. PAT甲级(Advanced Level)真题--1046 Sharing

    PAT甲级(Advanced Level)真题–1046 Sharing 通过:648 提交:1138 通过率:56% To store English words, one method is to ...

  4. PAT甲级(Advanced Level)真题-- 1062 To Buy or Not to Buy

    PAT甲级(Advanced Level)真题-- 1062 To Buy or Not to Buy 通过:643 提交:1220 通过率:52% Eva would like to make a ...

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

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

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

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

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

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

  8. 1024. 科学计数法 (20)-PAT乙级真题

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

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

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

最新文章

  1. 设计模式 ( 十六 ) 观察者模式Observer(对象行为型)
  2. iOS Swift GCD 开发教程
  3. leetcode - 4Sum
  4. java的知识点32——多线程 并发同步的 性能分析、快乐影院  订票操作
  5. 【数据结构与算法】之深入解析“颜色分类”的求解思路与算法示例
  6. BUPT 2012复试机考 4T
  7. 传奇手游服务器搭建_热血传奇3月开服计划
  8. SAP Cloud for Customer里根据External Reference搜索销售订单
  9. link怎么打开 vs2015_VS2015工程转VS2010
  10. 好玩的问答,看看你的年龄阶段哦
  11. iis7.5 php 404.17,部署IISHTTP 404.17无法由静态文件处理程序来处理
  12. 在centos6.5上编译安装httpd-2.4和2.4版本特性介绍
  13. 【设计模式】【创造型模式】单例模式
  14. 1、曾经风光无限的jsp,为什么现在很少有人使用了?
  15. Windows下本地或局域网下搭建SVN服务器
  16. (简易版)c语言人机对战五子棋
  17. 敏捷开发scrum模型
  18. 【不全】网络工程师术语表
  19. 关于Acad的cui(研究adobe pdf)
  20. ogr2ogr转坐标

热门文章

  1. 奥特曼视频软件测试,抖音奥特曼知识问答测试,奥特曼知识大挑战问答竞赛答案...
  2. java使用xquery_如何使用Java XQuery
  3. leetcode:427. 建立四叉树【经典建树】
  4. Aruba与中国电信国际有限公司达成MSP战略合作,剑指海外市场
  5. springboot毕设项目基于SpringBoot的特产销售系统设计与实现7m7bc(java+VUE+Mybatis+Maven+Mysql)
  6. 微信平台或者企业微信平台打开外部图片失败解决以及优化
  7. Redhat6.5出现不识别CPU
  8. 众里寻他千百度 暮然回首 那人却在灯火阑珊处……
  9. excel学习-power query安装
  10. 能涨薪3k的jmeter接口测试 接口自动化测试全套教程