1024 科学计数法(C语言)
设计思路:
- 数字的正负号决定输出普通数字的正负
- 指数的正负号决定小数点的移动
编译器:C (gcc)
#include <stdio.h>
#include <string.h>int movepoint(char n[], int index);/*当指数为正,向右移动小数点*/
/*此函数用 '\0' 判断补 0 和输出小数点,数组至少需要 10002 个空间,定义 n[10003]*/int rightprint(char n[], int index);
/*此函数利用指针直接循环输出,数组空间达题目要求即可,定义 n[10000](参考源码来自https://oliverlew.github.io/PAT/Basic/1024.html)*/int main()
{int index;char n[10003] = {'\0'};scanf("%[^E]E%d", n, &index);if(n[0] == '-') printf("-");if(index >= 0){movepoint(n, index);printf("%s\n", n+1);}else{printf("0.");for(index++; index; index++){printf("0");}printf("%c%s\n", n[1], n+3);}return 0;
}int movepoint(char n[], int index)
{char *p = n+2;for(; index; index--){if(*(p+1) != '\0') *p = *(p+1); else *p = '0';p++;*p = '.';}if(*(p+1) == '\0') *p = '\0';return 0;
}int rightprint(char n[], int index)
{char *p = n+1;putchar(*p);for(p += 2; index; index--){putchar(*p ? *p++ : '0');}if(*p){putchar('.');while(*p) putchar(*p++);}
}
1024 科学计数法(C语言)相关推荐
- PTA 1024 科学计数法 (c语言)
1024 科学计数法 (20 分) 代码如下 #include<string.h> int main(void) {char head,a[10001]= {0};int ex=0;sca ...
- PAT乙级-1024 科学计数法- C语言实现(31行AC)
考察知识点归纳: 根据题目要求输出 坑点归纳: 1.若小数部分长度等于指数值时不用在末尾加'.' 2.虽然题目说指数可能为0,实际给出指数都不为0 #include<stdio.h> in ...
- PAT乙级 C语言 1024 科学计数法
注意点:俺没有注意到个位数是1位--且可以用"%[^E]E%d"输入,要不可以省一堆压根没用的东西--但我懒得改了 我觉得这个写的很好PAT乙级1024. 科学计数法(C语言)_对 ...
- PAT乙级 1024. 科学计数法 (C语言)
1024. 科学计数法 (20) 题目: 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即 ...
- PAT 1024 科学计数法 (20分) C语言实现
1024 科学计数法 (20分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数部 ...
- C++学习之路 | PTA乙级—— 1024 科学计数法 (20 分)(精简)
1024 科学计数法 (20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数 ...
- 1024 科学计数法——C/C++实现
题目 1024 科学计数法 (20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+-][1-9].[0-9]+E[+-][0-9]+,即数字的整数部分只有 1 ...
- PAT乙级 1024 科学计数法 python
题目 1024 科学计数法 分数 20 作者 HOU, Qiming 单位 浙江大学 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[± ...
- 1024 科学计数法 (20)(20 分)
1024 科学计数法 (20)(20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+, ...
- PAT 1024 科学计数法
1024. 科学计数法 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 HOU, Qiming 科学计数法是科学家用来表示很 ...
最新文章
- 世界首条柔性人造触觉神经诞生,有望应用于义肢感触等领域
- 迈出物联网的第一步,玩儿一下Arduino
- python 科学计算设计_Python科学计算——Data Structures
- freeimage ubuntu安装
- 【MySQL】Got fatal error 1236原因和解决方法
- UnicodeDecodeError: 'gbk' codec can't decode byte 0xab in position 43: illegal multibyte sequence
- docker配置data-root:设置镜像存储路径 镜像加速地址 私有仓库
- [Elasticsearch2.x] 多字段搜索 (三) - multi_match查询和多数字段 译
- 微前端与项目实施方案研究
- 软件测试必备工具安装包
- Linux常用命令一 查看系统负载 版本信息 工作目录
- GitHub 推出安全新功能,帮助开源软件发现漏洞和机密信息
- 计算机与管理科学的交叉与融合,计算机信息管理学科交叉融合研究论文
- 信息安全等级保护工作概述
- 必先利其器——Python机器学习环境搭建
- 58移动开发 App 工厂
- 2021-2024年中国两轮电动车企业经营情况对比
- #FFMPEG4.3.1#命令行实现视频码率转换、缩放、剪切、填充、旋转操作(3)
- codeblock-(no debugging symbols found)(已解决)
- Python机器学习iris数据集预处理和模型训练
热门文章
- UpdateData()函数的用法
- 产品运营 跨境支付_精细化运营降低合规成本,收款易从亚马逊收款工具起步做完整跨境支付...
- 紫乌鸦服务器维护后多久刷,魔兽世界:9.0卡这个技巧,10分钟5只稀有坐骑,紫乌鸦惑龙入手!...
- 跨专业考清华大学的计算机,18级学长跨考清华大学计算机考研经验分享
- Android关于第三方h5在webview调用摄像头及相机的处理
- 浅谈Android之SurfaceFlinger相关介绍(一)
- VC知识库之应用控制
- 使用Itextsharp编辑PDF
- 2004年9月30日星期三
- 【强化学习】Q-Learning算法求解悬崖行走问题 + Python代码实战