通知
すべてクリア
Topic starter
2007年8月27日 5:04 PM
VC++6.0 で勉強中です。
double形の変数に、 キーボードで入力して
その入力された値から、少数点以下のみ抜き出し、表示するプログラムを
作成しようとしているのですが、
少数点以下のみ抜き出すような標準関数はありますか?
下記プログラムを書いたのですが、改善した方が良い点などアドバイスお願いします。
よろしくお願い致します。
#include <stdio.h>
int main( void )
{
double d;
double decimal; //少数点以下のみ入れる変数
printf( double入力 = );
scanf( %lf, &d );
if(d > 0){
while( d >= 1 ){
d--;
}
decimal = d;
printf( double出力:%f\n, decimal );
}else{
printf( 正の値を入力して下さい。\n);
}
return 0;
}
2007年8月27日 5:22 PM
小数部分 = 元の変数 - 整数部分
で、floorとかを使えば良いのではないかと。
Topic starter
2007年8月27日 6:10 PM
たいちうさん素早い回答ありがとうございます。
無駄なループをしないですっきり書くことが出来ました。
if(d > 0){
/* while( d >= 1 ){
d--;
}
*/
decimal = d - floor(d);
printf( double出力:%f\n, decimal );
}