PAT-A1073

来源:互联网 发布:淘宝一元拍怎么弄 编辑:程序博客网 时间:2024/05/10 21:37
#include<stdio.h>#include<string.h>int main(){int i, j, z=0, len1, posi, exp=0;double temp=0.0, weigh=0.1;char cc[100000];scanf("%s",cc);len1=strlen(cc);if(cc[0]=='-')printf("-"); for(i=2;i<len1;i++){//找E if(cc[i]=='E'){posi=i;break;} } for(j=posi+2;j<len1;j++){//求exp if(cc[j]<='9'&&cc[j]>='0'){exp=exp*10+cc[j]-'0';}   } if(exp==0){for(i=1;i<posi;i++)printf("%c",cc[i]);}//指数为0if(cc[posi+1]=='-'){//指数<0 printf("0."); for(i=1;i<exp;i++)printf("0"); printf("%c",cc[1]); for(i=3;i<posi;i++)printf("%c",cc[i]);}else{//指数>0if((posi-3)<=exp){printf("%c",cc[1]);    for(i=3;i<exp+3;i++)if(i<=posi&&cc[i]>='1'&&cc[i]<='9')printf("%c",cc[i]);else printf("0");}else{//(posi-3)>=expprintf("%c",cc[1]);    for(i=3;i<exp+3;i++)printf("%c",cc[i]);printf(".");for(i=i;i<posi;i++)printf("%c",cc[i]);}}return 0;}

0 0