PAT乙级 1024. 科学计数法 (20)
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
#include "stdio.h"
#include"string.h"
#include <stdlib.h>
int main()
{
int i,position_point=,position_zheng=,position_fu=,count=,length=,position_e=;
char a[];
gets(a); length=strlen(a);
for(i=;i<length;i++)
{
if(a[i]=='.') position_point=i;
if(a[i]=='E') position_e=i;
if(a[i]=='+') position_zheng=i;
if(a[i]=='-') position_fu=i;
}
if(a[]=='-')//
printf("-"); //将E后面的数字转化为%d for(i=position_e+;i<length;i++)
{
count=(a[i]-'')+count*;
} if(count==)
{
for(i=;i<position_e;i++)
printf("%c",a[i] );
} else{ if(position_fu)//小数
{ printf("0.");
for(i=;i<count-;i++) //输出0.0....
printf("" ); for(i=;i<position_point;i++) //输出小数点前的数
printf("%c",a[i] );
for(i=position_point+;i<position_e;i++) //输出小数点后的数
printf("%c",a[i] );
}
else
{ for(i=;i<position_point;i++) //输出小数点前的数
printf("%c",a[i] );
for(i=position_point+;i<position_e;i++) //输出小数点后的数
printf("%c",a[i] ); for(i=;i<count-(position_e-position_point-);i++) //输出00....
printf("" );
}
}
return ;
}
PAT乙级 1024. 科学计数法 (20)的更多相关文章
- PAT乙级 1024. 科学计数法 (20)(未通过全部测试,得分18)
1024. 科学计数法 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 HOU, Qiming 科学计数法是科学家用来表示很 ...
- PAT Basic 1024 科学计数法 (20 分) Advanced 1073 Scientific Notation (20 分)
科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+-][1-9].[0-9]+E[+-][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该数字及其指 ...
- PAT乙级 1024 科学计数法
思路 1.尝试失败:一开始想打算把结果直接存在一个字符串中,后来发现当指数大于0的时候还需要分别考虑两种情况,工程量巨大,尝试失败,于是借鉴了其他大佬思路,写出了ac代码 2.ac思路:首先取指数的绝 ...
- PAT 1024 科学计数法 (20)(精简版代码+思路+推荐测试样例)
1024 科学计数法 (20)(20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+, ...
- PAT (Basic Level) Practise (中文)- 1024. 科学计数法 (20)
PAT (Basic Level) Practise (中文)- 1024. 科学计数法 (20) http://www.patest.cn/contests/pat-b-practise/1024 ...
- PAT-乙级-1024. 科学计数法 (20)
1024. 科学计数法 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 HOU, Qiming 科学计数法是科学家用来表示很 ...
- PAT 1024. 科学计数法 (20)
科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位 ...
- 1024 科学计数法 (20 分)C与Java
科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该数字及其指数部 ...
- C#版 - PAT乙级(Basic Level)真题 之 1024.科学计数法转化为普通数字 - 题解
版权声明: 本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. PAT Bas ...
随机推荐
- style="display"之后不能获取offsetHeight或clientWidth这类测量的值
如果在html元素中设置了style="display:none;height:90px;"的属性后,是无法获得offsetLeft ,offsetWidth,offsetTop, ...
- SpringMVC接收checkbox传值
Controller方法形参接收checkbox的值,既可以用String,也可以用String[]. 字符串数组接收的测试代码如下: @Controller @RequestMapping(&quo ...
- ASP.NET关于Login控件使用 (转)
分类: C# 2011-02-21 10:38 4599人阅读 评论(0) 收藏 举报 loginasp.netstringurlserverbutton 今天上网找了一些关于Login控件的使用资料 ...
- js获取网站根目录
//js获取网站根路径(站点及虚拟目录),获得网站的根目录或虚拟目录的根地址 function getRootPath(){ var strFullPath=window ...
- form表单类标签汇总
<form action="form_action.asp" method="get"> First name: <input type=&q ...
- 在Windows上安装PyCUDA跟Theano
http://www.myexception.cn/cuda/1904274.html
- Java工具类(获取当前主机操作系统名)
package com.fly.jenkins.util; /** * 操作系统类: 获取System.getProperty("os.name")对应的操作系统 * * @aut ...
- Step by Step
数据库设计Step by Step篇目整理及下载地址 系列篇目 1. 数据库设计 Step by Step (1)——扬帆启航 2. 数据库设计 Step by Step (2)——数据库生命周期 3 ...
- NSString的截取
// // main.m // 02-字符串的获取 // // Created by apple on 14-3-20. // Copyright (c) 2014年 apple. All r ...
- Python之配置文件模块 ConfigParser
写项目肯定用的到配置文件,这次学习一下python中的配置文件模块 ConfigParser 安装就不说了,pip一下即可,直接来个实例 配置文件 project.conf [db] host = ' ...