#define _CRT_SECURE_NO_WARNINGS
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cctype>
#include <string>
#include <iostream>
using namespace std;
int main(void) {
int exp, i;
string str, str2, str3;
char tmp;
getline(cin, str);
for (i = 1; str[i] != 'E'; i++) {
str2.push_back(str[i]);
}
for (i++; i < str.size(); i++) {
str3.push_back(str[i]);
}
exp = 0;
for (i = 1; i < str3.size(); i++) {
exp = exp * 10 + str3[i] - '0';
}
if (str3[0] == '-') {
exp *= -1;
}
string str4;
if (str[0] == '-') {
str4.push_back(str[0]);
}
if (exp < 0) {
str4.append("0.");
exp++;
while (exp) {
str4.push_back('0');
exp++;
}
for (i = 0; i < str2.size(); i++) {
if (str2[i] != '.') {
str4.push_back(str2[i]);
}
}
}
else if (exp > 0) {
str4.push_back(str2[0]);
for (i = 2; exp > 0 && i < str2.size(); i++, exp--) {
str4.push_back(str2[i]);
}
while (exp > 0) {
str4.push_back('0');
exp--;
}
if (i < str2.size()) {
str4.push_back('.');
while (i < str2.size()) {
str4.push_back(str2[i]);
i++;
}
}
}
cout << str4;
return 0;
}
1073. Scientific Notation (20)解题报告
最新推荐文章于 2020-11-18 10:25:29 发布