dポイントプレゼントキャンペーン実施中!

printf("%.3e", 1234.5678); の結果は、1.235e+003
printf("%.3e", 0.0012345678); の結果は、1.235e-003

となります。
これを各々、「1.235e3」「1.235e-3」と表示するにはどうすれば良いのでしょうか?

詳しい方がいたら教えて下さい。宜しくお願い致します。

OS:WindowsXP
開発環境:Visual Studio 2010

A 回答 (1件)

自分で書き換えるしか方法はありません、下記のように。


char buff[100],*p;
sprintf(buff,"%.3e", 1234.5678);
p=strchr(buff,'e');
if(p)
sprintf(p+1,"%+d",atoi(p+1));
    • good
    • 1
この回答へのお礼

ご回答有難うございました。
サンプルも書いていただいて助かりました。

お礼日時:2012/05/25 17:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!