1024. 科学计数法 (20)

3人阅读 评论(0) 收藏 举报
分类:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

int main()
{
    char str[10000];
    gets(str);
    int i,pos=0,exp=0;
    if(str[0] == '-') printf("-");
    for(i=1;i<strlen(str);i++){
        if(str[i] == 'E')
            break;
    }
    pos = i;
    for(i=pos+2;i<strlen(str);i++){
        exp = exp * 10 + str[i] - '0';
    }
    if(exp == '0'){
        for(i =1;i<pos;i++)
            printf("%c",str[i]);
    }
    else if(str[pos+1]=='-'){
        printf("0.");
        for(i=0;i<exp-1;i++){ //小数点向前移动exp-1位
            printf("0");
        }
        for(i=1;i<pos;i++)
            if(str[i]!='.') printf("%c",str[i]);
    }
    else if(str[pos+1]=='+'){
        for(i=1;i<pos;i++)
        {
            if(str[i]!='.') printf("%c",str[i]);
            if(i==exp+2&&exp+2<pos-1) printf(".");
        }
        for(i=0;i<exp+2-(pos-1);i++)  //exp+2表示所有数位,pos—1表示有数字的位数
            printf("0");
    }
    printf("\n");
    return 0;
}
查看评论

PAT-乙级-1024. 科学计数法 (20)

1024. 科学计数法 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者...
  • orange2a
  • orange2a
  • 2016-07-14 20:01:17
  • 216

编程题目: PAT 1024. 科学计数法 (20)

1024. 科学计数法 (20) 时间限制 100 ms 内存限制 32000 kB 代码长度限制 8000 B ...
  • zhangyalin1992
  • zhangyalin1992
  • 2014-07-04 16:54:07
  • 1732

PAT Basic Level 1024. 科学计数法 (20)

科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位,该数字及其指数部分...
  • gemire
  • gemire
  • 2014-03-07 20:41:42
  • 1488

Java - PAT - 1024. 科学计数法 (20)

科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位,该数字及其指数部分...
  • qq_34594236
  • qq_34594236
  • 2016-07-25 00:32:25
  • 619

PAT Basic Level 1024. 科学计数法(20)

【来源】 1024. 科学计数法 【分析】 此题给出用科学技术法表示的数,要求输出正常表示的数。为字符串处理题。 大致解题思路为从字符串中分别解析出基数的符号、基数的大小、指数的大小、指数的符号,然...
  • u013791113
  • u013791113
  • 2014-03-11 22:49:09
  • 1447

PAT乙级—1024. 科学计数法 (20)-native

科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]”.”[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位,该数字及其指数部分...
  • wanmeiwushang
  • wanmeiwushang
  • 2016-05-08 22:32:56
  • 1820

PAT (Basic Level) Practise (中文)1024. 科学计数法 (20) C语言

1024. 科学计数法 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B ...
  • Pandoraemon
  • Pandoraemon
  • 2015-07-21 14:01:02
  • 607

PAT (Basic Level) Practise (中文)1024. 科学计数法 (20)

1024. 科学计数法 (20) 时间限制 100 ms 内存限制 32000 kB 代码长度限制 8000 B ...
  • wyxdexyq
  • wyxdexyq
  • 2014-10-21 23:40:42
  • 1998

1024. 科学计数法 (20)||1073. Scientific Notation (20):string类方法substr() 以及 stringstream知识

stringstream用法这里 substr()方法   这里 思路来源这里 #include #include #include // !#$%@#@!%!#@$@! using namespa...
  • qq_17249047
  • qq_17249047
  • 2015-06-04 11:15:55
  • 337

浙大 PAT 1024. 科学计数法 (20)

1024. 科学计数法 (20) 时间限制 100 ms 内存限制 32000 kB 代码长度限制 8000 B ...
  • IAccepted
  • IAccepted
  • 2014-03-02 23:22:25
  • 3671
    个人资料
    持之以恒
    等级:
    访问量: 663
    积分: 417
    排名: 12万+
    文章存档
    最新评论