注意点:俺没有注意到个位数是1位……且可以用"%[^E]E%d"输入,要不可以省一堆压根没用的东西……但我懒得改了

我觉得这个写的很好PAT乙级1024. 科学计数法(C语言)_对方北方-CSDN博客

#include<stdio.h>
#include<stdlib.h>
int sort(char*a,int t,int p,int q);
int main(){char a[100000];scanf("%s",a);int m,n,p,q;if(a[0]=='-'){printf("-");}for(m=0;a[m]!='.';m++);for(n=m;a[n]!='E';n++);p=m-1;q=n-m-1;int r,s,t;char b[100000];s=0;for(r=n+1;a[r]!='\0';r++){b[s]=a[r];s++;}t=atoi(b);int i=0;char c[100000];for(s=1;s<n;s++){c[i]=a[s];i++;}int sign=sort(c,t,p,q);if(sign==1){printf("0.");for(i=0;i<-p-t;i++){printf("0");}for(i=0;c[i]!='\0';i++){printf("%c",c[i]);}}else if(sign==-1){for(i=0;c[i]!='\0';i++){printf("%c",c[i]);}for(i=0;i<t-q;i++){printf("0");}}else{for(i=0;c[i]!='\0';i++){printf("%c",c[i]);}}return 0;
}int sort(char*a,int t,int p,int q){int i;if(t<=-p){for(i=p;a[i+1]!='\0';i++){a[i]=a[i+1];}a[i]='\0';return 1;}else if(t>=q){for(i=p;a[i+1]!='\0';i++){a[i]=a[i+1];}a[i]='\0';return -1;}else if(t>0){for(i=p;i<p+t;i++){a[i]=a[i+1];}a[i]='.';return 0;}
}

PAT乙级 C语言 1024 科学计数法相关推荐

  1. 【PAT (Basic Level) 】1024 科学计数法 (20 分)

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

  2. PAT乙级 1024. 科学计数法 (C语言)

    1024. 科学计数法 (20) 题目: 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即 ...

  3. PAT乙级 1024 科学计数法 python

    题目 1024 科学计数法 分数 20 作者 HOU, Qiming 单位 浙江大学 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[± ...

  4. PAT 1024 科学计数法 (20分) C语言实现

    1024 科学计数法 (20分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数部 ...

  5. C++学习之路 | PTA乙级—— 1024 科学计数法 (20 分)(精简)

    1024 科学计数法 (20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数 ...

  6. PTA 1024 科学计数法 (c语言)

    1024 科学计数法 (20 分) 代码如下 #include<string.h> int main(void) {char head,a[10001]= {0};int ex=0;sca ...

  7. PAT 1024 科学计数法

    1024. 科学计数法 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 HOU, Qiming 科学计数法是科学家用来表示很 ...

  8. 【全网最细PAT题解】【PAT乙】1024 科学计数法

    题目链接 1024 科学计数法 题目描述 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+-][1-9].[0-9]+E[+-][0-9]+,即数字的整数部分只有 1 ...

  9. 1024 科学计数法 (20)(20 分)

    1024 科学计数法 (20)(20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+, ...

最新文章

  1. 理解koa-router 路由一般使用
  2. 从虚拟化、统一映射和自动化看09年法规遵从趋势
  3. 5GS 协议栈 — Overview
  4. Google 的 Java 编码规范,参考学习!
  5. 组会PPT20201120《不同初始电子密度下ne和Te演化》
  6. 远程过程调用(Remote Procedure Call,RPC)
  7. javascript字典中添加数组_如何在 JavaScript 中更好地使用数组
  8. 我大意了,刚一放出来就上了牛客网头条了
  9. 给自己做一块开发板 #AnyBoard
  10. 使用阿里云实现短信发送功能
  11. python中的opencv读取数字_用python和OpenCV从图像中提取数字
  12. 长江大学一键评教项目简要分析
  13. 【力扣-动态规划入门】【第 4 天】45. 跳跃游戏 II
  14. Qt5.9.6 vs2015 SQlite 数据库增删改查
  15. 英语学习的几个实用网站
  16. 如何查看电脑开关机记录
  17. 实例分割总结 Instance Segmentation Summary
  18. 经常宕机的RAC系统 -排查案例
  19. 数字频率计单片机Proteus仿真
  20. 如何配置XenDesktop使用Mirror数据库

热门文章

  1. 海思AI芯片(Hi3519A/3559A)方案学习一Ubuntu18.0.4上编译Hi3519AV100 uboot和kernel
  2. Java 【打印俄文的英文字母】
  3. 软件测试面试题 | 提BUG相关
  4. JAVA 页面置换先进先出算法(FIFO)
  5. 会议OA项目(项目原型图介绍发布会议功能)
  6. JavaScript中的触发事件
  7. 开放机器人控制软件Orocos
  8. 【网络原理7】认识HTTP
  9. 通过深度学习偏微分方程模型估计剩余使用寿命:使用潜变量的 退化的动力学解释框架/PINN 在发动机寿命预测的应用 文献总结和内容概要
  10. 山寨芯片不会像山寨机一样泛滥