C++的科学计数法本质上是常量的一种表达方式,或者说一种写法,这种写法只能应用于常量中。所以变量是不能写入在科学计数法的任何位置的。
如n为变量,那么nE2, 或1.2En的方式都是错误的,无法编译通过。
要实现指数可变的情况,可以不通过科学计数法,而是采用变量赋值的方式变通实现。
如要获取到一个值为aEb的实数,那么可以先输出a和b,然后根据科学计数法原理计算a乘10的b次幂,得到最终的值。
double a, b;
double r;
cin >> a >>b;//输入a和b。
r = a*pow(10,b);//计算值。