c++中如何把一个科学计数法的字符串分离输出他的正常数值??例如输入9.2*10^5输出92000

2025-04-06 12:01:26
推荐回答(2个)
回答(1):

#include 

using namespace std;

class Algebra {
    private:
        double var;
    public:
        Algebra( double var=1 ): var( var ) {};
        
        Algebra operator^ ( int pwr ) {
            double res = this->var;
            Algebra answer(res);
            for ( int i=0; i                answer.var *= res; 
            }
            return answer;
        }
        
        friend ostream &operator<< ( ostream & o, const Algebra &a ) {
            o << a.var;
            return o;
        }
        friend Algebra operator* ( const Algebra &a, const Algebra &b ){
            return Algebra( a.var * b.var );
        }

};

int main(int argc, char *argv[]) {
    Algebra power(10.0);
    Algebra result = 9.5*(power^5);
    cout << result<< endl;
    cout << power << endl;
}

回答(2):

将9.2E5的输出形式改为以double形式输出