PAT 1024. 科学计数法 (20)

科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][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
需注意指数为0的情况
 1 #include<stdio.h>
 2 #include<string.h>
 3 #include<math.h>
 4 #include<stdlib.h>
 5 int main(){
 6     char a[20000];
 7     scanf("%s",a);
 8     char delim[] ="E";
 9     char b[20000];
10     char c[20000];
11     strcpy(b,strtok(a,delim));
12     strcpy(c,strtok(NULL,delim));
13     char *c1 = &c[1];
14     int index = atoi(c1);
15     if(index==0){
16         printf("0.");
17         for(int i=0;i<strlen(b)-3;i++){
18             printf("0");
19         }
20         return 0;
21     }
22     if(b[0]=='-')
23         printf("-");
24     if(c[0]=='-'){
25         printf("0.");
26         index--;
27         for(int i=0;i<index;i++){
28             printf("0");
29         }
30         printf("%c",b[1]);
31         for(int i=3;i<strlen(b);i++){
32             printf("%c",b[i]);
33         }
34     }
35     if(c[0]=='+'){
36         printf("%c",b[1]);
37         if(strlen(b)-3<=index){
38             for(int i=3;i<strlen(b);i++){
39                 printf("%c",b[i]);
40             }
41             for(int i=strlen(b)-3;i<index;i++){
42                 printf("0");
43             }
44         }
45     else{
46         for(int i=3;i<index+3;i++){
47             printf("%c",b[i]);
48         }
49         printf(".");
50         for(int i=index+3;i<strlen(b);i++){
51             printf("%c",b[i]);
52         }
53     }
54     }
55     
56 }

 


转载于:https://www.cnblogs.com/lolybj/p/6195239.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/371808.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mac上Hive环境搭建

本文介绍在Mac上搭建Hive环境。 建议首先配置好Hadoop&#xff0c;搭建与配置可以参考我之前的博文Mac Hadoop的安装与配置。 当然你也可以选择使用Docker搭建环境&#xff0c;本文不作介绍。 安装 对于MacOs&#xff0c;推荐使用HomeBrew安装hive&#xff0c;一步到位。 $ bre…

mysql+创建备份账户_mysql 添加用户,授予权限,数据库备份等 (转载)

一&#xff0c;连接MySQL格式&#xff1a;mysql -h 远程主机地址 -u 用户名 -p 回车输入密码进入&#xff1a;mysql -u root -p 回车Enter password: ,输入密码就可以进入mysql> 进入了退出命令:>exit 或者ctrlD二&#xff0c;MySQL管理与授权1.修改密码&#xff1a;格式…

分代缓存和转换

康拉德&#xff08;Konrad&#xff09;最近在我们公司的技术室中分享了有关如何完成缓存的有趣文章&#xff0c;这是一个大型的波兰社交网络nk.pl。 算法中的核心概念之一是分代缓存 &#xff08;请参阅此处或此处 &#xff09;。 基本思想是&#xff0c;对于缓存键&#xff0c…

css精灵

○ css 精灵&#xff08;Sprites&#xff09;技术利用photoshop将图片整合&#xff0c;然后用background-images&#xff0c;background-position&#xff0c;background-repeat技术&#xff0c;对图片进行精确定位。 ○ 优点&#xff1a;减少http请求数量&#xff0c;减少服务…

基于Jenkins+Gitlab的自动化部署实战

故事背景 一个中小型企业&#xff0c;是典型的互联网公司&#xff0c;当初期的时候可能运维只能标配到2~3人&#xff0c;此时随着公司的发展&#xff0c;项目会逐渐增多。前期部署项目可能都是手动的&#xff0c; 俗称“人肉部署”&#xff0c;这简直是无比的痛苦&#xff0c;不…

cmd如何刷新MySQL数据库_怎样在cmd中用命令操作MySQL数据库 需要技巧

用命令来操作MySQL是工作必备的&#xff0c;今天我就来分享一下cmd命令操作MySQL数据库的方法&#xff0c;希望有帮助。工具/材料电脑xampp操作方法01首先&#xff0c;启动MySQL服务才行哦。这里我是用xampp集成的数据库&#xff0c;方便&#xff0c;点击‘start’。02如图&…

Java顺序IO性能

许多应用程序将一系列事件记录到基于文件的存储中&#xff0c;以供以后使用。 从日志记录和审核&#xff0c;直到在事件源设计或其紧密相关的CQRS中保留事务重做日志&#xff0c;这都可以是任何东西。 Java具有多种方法&#xff0c;可以通过这些方法将文件顺序写入或重新读取。…

text段,data段,bss段,堆和栈

.bss段和.data段的区别 text段,data段,bss段,堆和栈转载于:https://www.cnblogs.com/jingzhishen/p/6203107.html

[BZOJ3529][Sdoi2014]数表

[BZOJ3529][Sdoi2014]数表 试题描述 有一张Nm的数表&#xff0c;其第i行第j列&#xff08;1 < i < n&#xff0c;1 < j < m&#xff09;的数值为能同时整除i和j的所有自然数之和。给定a&#xff0c;计算数表中不大于a的数之和。输入 输入包含多组数据。输入的第一行…

ZK的实际应用:MVVM –表单绑定

这是我们从头开始构建ZK应用程序的第二集。 上一篇文章涉及使用MVVM将数据加载和呈现到表中。 在本文中&#xff0c;我们将向您介绍ZK MVVM的表单绑定。 目的 我们将构建一个“添加”功能&#xff0c;使我们能够将新条目保存到清单中。 单击“添加”时出现表格 单击“保存”…

群晖按装mysql_如何连接群晖里的MYSQL数据库

匿名用户1级2018-08-27 回答一、连接远程数据库&#xff1a;1、显示密码如&#xff1a;MySQL 连接远程数据库(192.168.5.116)&#xff0c;端口“3306”&#xff0c;用户名为“root”&#xff0c;密码“123456”C:/>mysql -h 192.168.5.116 -P 3306 -u root -p1234562、隐藏密…

ZK的实际应用:MVVM –以编程方式更新视图

在前两篇文章中&#xff0c;我们使用ZK的MVVM功能来&#xff1a; 将数据加载到表中 使用表单绑定保存数据 我们已经看到&#xff0c;用注解NotifyChange&#xff08;&#xff09;装饰方法时&#xff0c;在执行完成后&#xff0c;将向Binder通知VM属性的更改&#xff0c;以便B…

给你一个笑脸

今日冬至&#xff0c;愿你笑靥如初 <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8" /> <title>Document</title> </head> <body> <canvas id"mycanvas" width"800px&qu…

mysql安装与配置的截图_windows下MySQL5.6版本安装及配置过程附有截图和详细说明...

随着MYSQL版本的更新以及电脑系统的变化&#xff0c;我们给大家整理了各种电脑环境下安装MYSQL的图解过程&#xff0c;希望我们整理的内容能够帮助到大家&#xff1a;mysql安装图解总结https://www.jb51.net/article/142398.htm编辑者&#xff1a;Vocabulary下面详细介绍5.6版本…

mysql 更新日的数据类型_[每日更新-MySQL基础]5.常用的数据类型-整数和字符串

1. 数据类型在学习PHP的时候我们已经讲过数据类型了&#xff0c;所谓数据类型就是数据的格式。每一种数据类型在计算机中存储的方式会有差异&#xff0c;占用的存储容量也有区别&#xff0c;所以选择合适的数据类型可以节约我们的存储成本&#xff0c;也方便我们的程序运行和…

Hello World with Spring 3 MVC

在2005年&#xff0c;我对Martin Fowler的这篇文章对Spring进行了介绍。从那时起&#xff0c;我就修改了许多IoC框架&#xff0c;包括Guice &#xff0c; PicoContainer &#xff0c; NanoContainer等。虽然我很喜欢与IoC一起工作&#xff0c;但我必须说Spring在过去的5年中&am…

ansible 安装

1、简介 ansible是新出现的自动化运维工具&#xff0c;基于Python开发&#xff0c;集合了众多运维工具&#xff08;puppet、cfengine、chef、func、fabric&#xff09;的优点&#xff0c;实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于模块工作的&#…

JS原型详解

参考的别人家的博客http://www.cnblogs.com/ljchow/archive/2010/06/08/1753526.html ###JS原型####JS原型&#xff0c;就是原型对象&#xff0c;简称原型。不仅构造函数有&#xff0c;普通函数也有* 普通函数&#xff1a;javascript function puTong(){ }; alert(puTong.proto…

c# mysql 插入 和 查询_C#对数据库的操作(增删改查)

1、【在web.config文件中配置】2、【连接字符串】private static readonly string StrCon ConfigurationManager.ConnectionStrings["sqlConnection"].ToString();3、【查询数据方法】/// /// 查询数据/// /// 查询语句/// 参数/// public static DataTable QueryDa…

利用docker在window7下安装TensorFlow

安装过程下碰了不少坑&#xff0c;记录一下安装过程&#xff0c;方便以后有需要时复用。 1、安装docker 下载最新版本的docker并且默认安装即可&#xff0c;安装后打开Docker Quickstart Terminal&#xff0c;初次进去需要一段时间。 下载网址&#xff1a;https://www.docker.c…