C言語関係掲示板

過去ログ

No.149.小数点第N位以下を四捨五入


No.968

小数点第N位以下を四捨五入するには?
投稿者---Kura(2002/01/28 18:41:21)


はじめまして。
最近C言語始めたのですが、疑問が続くばかりで・・・

さっそくなのですが、小数点第N位以下を四捨五入するには
どうしたらいいのでしょうか?

第何位(例えば第3位)と決まっていれば、

#include <stdio.h>
main()
{
double a;
printf("実数を入力してください : ");
scanf("%lf", &a);
printf("小数点第3位以下を四捨五入して表示 : %.3f\n",a);
}

このソースでできるのですが・・・
Nの値を入力させて、%.n なんてやってみたんですけどダメでした。
基本過ぎるのかも知れませんが、どうかご指導をお願い致します。

No.969

Re:小数点第N位以下を四捨五入するには?
投稿者---ともじ(2002/01/28 19:59:10)


kuraさん、こんばんは。

> さっそくなのですが、小数点第N位以下を四捨五入するには
> どうしたらいいのでしょうか?
> Nの値を入力させて、%.n なんてやってみたんですけどダメでした。

sprintf関数を使って、書式を組み立ててしまうのも手ですね。
	char format[128];
		:
	sprintf(format,"%%.%df",n);
	printf(format,a);



No.972

Re:小数点第N位以下を四捨五入するには?
投稿者---Kura(2002/01/28 22:41:44)


お返事ありがとうございました!
無事四捨五入させることに成功しました^−^
また分からないことがあったらご指導宜しくお願いします。


戻る


「初心者のためのポイント学習C言語」 Last modified:2002.03.16
Copyright(c) 2000-2002 TOMOJI All Rights Reserved