1024 科学计数法 (20分)
- substr():substr(起始位置,往后要几个字符)
- stoi():string转换为int,参数必须是字符串,字符的话用substr(ch,1)转换为字符串
常用字符串处理函数:
参数是字符即可
isalpha();//是否为字母
isdigit();//是否为数字
isupper();//是否为大写字母
islower();//是否为小写字母
#include<iostream>
#include<ctype.h>
#include<algorithm>
#include<sstream>
#include<string>
#include<cstdio>
using namespace std;
int main() {
string s;
cin>>s;
if(s[0]=='-') cout<<'-';
string s1=s.substr(s.find('.')+1,s.find('E')-s.find('.')-1);
string s2=s.substr(s.find('E')+1,s.length()-s.find('E'));
if(s2[0]=='-') {
int num=stoi(s2);
int n=stoi(s.substr(1,1));
num=-num;
if(num){
cout<<"0.";
for(int i=1; i<=num-1; i++) {
cout<<"0";
}
cout<<n<<s1;
}else{
cout<<n<<"."<<s1;
}
} else {
int num=stoi(s2);
int n=stoi(s.substr(1,1));
if(s1.length()<=num){
cout<<n<<s1;
for(int i=1;i<=num-s1.length();i++){
cout<<"0";
}
}else{
if(num){
cout<<n;
for(int i=0;i<=num-1;i++){
cout<<s1[i];
}
cout<<".";
for(int i=num;i<s1.length();i++){
cout<<s1[i];
}
}else{
cout<<n<<"."<<s1;
}
}
}
return 0;
}