题目
思路:
第一次做不容易。参考了Resfeber的代码
- 确定输入的字符串中各位位置,正负号,幂指数符号及幂指数E的次方。
- 考虑E的次数为0的情况,就直接输出从第一位数到E之前的数。
- E为负:因为先考虑了E为0情况,此时E至少有一次。故先输出“0.”,再输出e-1个0。再输出原小数部分。
- E为正:同理E至少有一次,先输出原整数部分,再输出原小数部分a[3~pos]。注意(当e==0并且非末位时输出小数点)。输出后若e还不为0 ,再补零。
AC代码
#include<bits/stdc++.h>
using namespace std;
int main(){
string a;
cin>>a;
int len=a.length();
int pos=a.find('E')