#include<cstdio>
#include<cstring>
#include <stdio.h>
int main(){
char str[10010];
gets_s(str);
int len=strlen(str);
if(str[0]=='-')printf("-");
int pos=0;
while(str[pos]!='E'){
pos++;
}
int exp=0;
for(int i=pos+2;i<len;i++){
exp=exp*10+(str[i]-'0');
}
if(exp==0){
for(int i=1;i<pos;i++){
printf("%c",str[i]);
}
}
if(str[pos+1]=='-'){
printf("0.");
for(int i=0;i<exp-1;i++){
printf("0");
}
printf("%c",str[1]);
for(int i=3;i<pos;i++){
printf("%c",str[i]);
}
}else{
for(int i=1;i<pos;i++){
if(str[i]=='.')continue;
printf("%c",str[i]);
if(i==exp+2&&pos-3!=exp){
printf(".");
}
}
for(int i=0;i<exp-(pos-3);i++){
printf("0");
}
}
return 0;
}
A1073.科学计数法题解
最新推荐文章于 2024-07-01 17:12:08 发布
该篇博客主要介绍了一段C语言代码,用于处理包含科学计数法的字符串。代码首先读取输入字符串,检查第一个字符是否为负号。然后找到'E'的位置,解析指数部分。根据指数的正负,输出相应的小数点和零。博客详细阐述了代码逻辑,适合C语言初学者和理解科学计数法转换的读者。
2128

被折叠的 条评论
为什么被折叠?



