科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][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

#include<stdio.h>
#include<string.h>
int GetExp(char s[],int n);
int main(){char isign,esign;int integer,e;char decpart[10000],expart[40];scanf("%c%d.%[0-9]E%c%s",&isign,&integer,decpart,&esign,expart);if(isign=='-')printf("-");int exp=GetExp(expart,strlen(expart));//printf("<exp = %d>",exp);if(exp==0){printf("%d.%s",integer,decpart);}else{if(esign=='+'){printf("%d",integer);if(strlen(decpart)>exp){int i=0;while(exp!=0){printf("%c",decpart[i++]);exp--;}printf(".");while(i<strlen(decpart)){printf("%c",decpart[i++]);}}else{printf("%s",decpart);while((exp-strlen(decpart))>0){printf("0");exp--;}}}else {printf("0.");exp--;while(exp>0){printf("0");exp--;}printf("%d%s",integer,decpart);}}
}
int GetExp(char s[],int n){int i,m=0;for(i=0;i<n;i++){m=m*10+s[i]-'0';}return m;
}

转载于:https://www.cnblogs.com/xLester/p/7570515.html

1024. 科学计数法 (20)相关推荐

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  8. 1024 科学计数法 (20分) c/c++代码中有详细解释

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

  9. 科学技术法c语言字符串,PAT Basic 1024. 科学计数法 (20)(C语言实现)

    我的PAT系列文章更新重心已移至Github,欢迎来看PAT题解的小伙伴请到Github Pages浏览最新内容.此处文章目前已更新至与Github Pages同步.欢迎star我的repo. 题目 ...

最新文章

  1. 中山大学计算机学院运动会,中山大学2019年运动会.PDF
  2. Thrift在windows下的使用
  3. 启明云端分享|直接用ESP32-S2和ESP32-C3驱动1.54寸串口屏,有哪些区别呢,他们的亮点又有哪些呢
  4. Flutter升级到1.12填坑指南
  5. 截取屏幕,并保存图片到本地(画廊)
  6. spring 注释_Spring@懒惰注释
  7. 使用SQLite数据库存储数据(2)-向表中插入记录
  8. js 多个input值拼接json字符串
  9. 在java中蓝色_Java基础
  10. dede后台文章不能上传图片及缩略图的解决办法
  11. 博客平台、Markdown编辑器与hexo admin简介
  12. 设计模式 - 模板方法设计模式
  13. 翻译PDG官方教程:一个最简单的特效PDG流程(步骤详细)
  14. STC15系列单片机-I/O口小结
  15. iMX8MP方案推荐|一款适用于心电监护仪的嵌入式核心板
  16. 从软件测试培训班出来之后找工作的经历,教会了我这五件事...
  17. Gateway一直访问本地
  18. 计算机毕业设计ssm高校学报管理系统lt10k系统+程序+源码+lw+远程部署
  19. 1.1.1.1校园网_高一数学上册必修1第一章知识点:1.1.1集合的含义与表示
  20. 记录一次Java对接监控(大华、海康、onvif)

热门文章

  1. PowerDesigner对列增加注释
  2. Mac 安装 MySQL-python 问题解决
  3. docker操作大全
  4. MySQL 性能优化,优化设计及设计原则解读
  5. 【Shell脚本】逐行处理文本文件
  6. 1.Spring Boot --hello world
  7. linux系统主要常见目录结构
  8. java list三种遍历方法性能比較
  9. [cb]NGUI组件基类之 UIWidget
  10. web.config文件