题目:
思路:
由输入获取相关信息,得到指数和科学计数的前部分数字,然后再依据指数的正负分别进行输出
注意点:
依据转换后的数据进行格式输出
代码:
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
原文:https://www.cnblogs.com/fangzhiyou/p/12483662.html