PAT-字符串处理-B 1024 科学计数法 (20分)
题目:
思路:
由输入获取相关信息,得到指数和科学计数的前部分数字,然后再依据指数的正负分别进行输出
注意点:
依据转换后的数据进行格式输出
代码:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #include<iostream> 2 #include<string> 3 using namespace std; 4 5 int main() 6 { 7 char h, a[10001] = { 0 }; 8 int i, e; 9 10 // 11 scanf("%c%c.%[0-9]E%d", &h, &a[0], a + 1, &e); 12 if (h == '-')printf("-"); 13 14 //指数小于0的情况 15 if (e < 0) 16 { 17 printf("0."); 18 e = -e - 1; 19 while (e) 20 { 21 printf("0"); 22 e--; 23 } 24 printf("%s", a); 25 } 26 //指数不小于0的情况 27 else 28 { 29 for (i = 0;i <= e || a[i] != 0;i++) 30 { 31 if (i == e + 1) 32 printf("."); 33 printf("%c", a[i] == 0 ? '0' : a[i]); 34 } 35 } 36 return 0; 37 }
提升知识点: scanf——扫描集
参考——https://blog.csdn.net/tangxinru123/article/details/84975248
作者:方知有
Motto: 热爱可抵岁月漫长
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。
所有评论和私信都会在第一时间处理,如有问题或建议,请多多赐教!
支持博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是作者坚持原创和持续写作的最大动力!