PAT 1024 科学计数法 (字符串)
Posted taiga
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT 1024 科学计数法 (字符串)相关的知识,希望对你有一定的参考价值。
不用纠结怎么把输入串变成结果串,一部分一部分输出即可。(时间不够写一部分是一部分,+的情况10分-的情况6分,还漏了4分有空来讨论一下)
1 #include<bits/stdc++.h> 2 using namespace std; 3 const int maxn=10010; 4 int main(){ 5 char a[maxn]; 6 scanf("%s",a); 7 if(a[0]==‘-‘) printf("-"); 8 int len=strlen(a); 9 int pos=0; 10 for(;pos<len;pos++){ 11 if(a[pos]==‘E‘) break; 12 } 13 int index=(a[len-1]-‘0‘)+(a[len-2]-‘0‘)*10;// 14 int dpos; 15 if(a[pos+1]==‘+‘){ 16 for(int i=1;i<pos;i++){ 17 if(a[i]!=‘.‘) printf("%c",a[i]); 18 if(a[i]==‘.‘) dpos=i; 19 } 20 for(int i=0;i<(index-(pos-dpos-1));i++){ 21 printf("0");//不需要补0的情况没讨论 22 } 23 }//10分 24 else if(a[pos+1]==‘-‘){ 25 printf("0."); 26 for(int i=0;i<index-1;i++){ 27 printf("0"); 28 } 29 for(int i=1;i<pos;i++){ 30 if(a[i]!=‘.‘) printf("%c",a[i]); 31 } 32 } //16分 33 }
以上是关于PAT 1024 科学计数法 (字符串)的主要内容,如果未能解决你的问题,请参考以下文章