×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
たとえば、下に示すように整数型と整数型の割り算をする場合、もしその答えに少数が含まれるならばその値はどのように表示されるのでしょうか?ではやってみます。
以下、#include
int main()
{
return 0;
}
は省略させていただきます。以下、{}間のソースを書くことにします。
***************************************
int a,b;
a=10;
b=3;
printf("%d/%d=%d\n",a,b,a/b);
***************************************
結果
10/3=3.00000
***************************************
今までは、a,bの関係をほかの変数として指定(c=a/b;)していましたが、それをしなくても、式として評価され値を持つ性質を使い、Printfの関数の中に関係式を書くことで同じ結果が得られます。
ことでとなり、実際の値3.33333・・・よりだいぶずれたものになってしまいました。これを克服するために以下のように打ち込みます。
***************************************
int a;
double b;
printf("%d/%f=%f");
***************************************
ここでおきているのは変数型の格上げ現象です。より大きな型にそろってしまう性質があります。注意しなければならないのは、整数型に小数点型のデータを代入する場合は例外で、代入もとの整数型に値の型が調整されます。
ex.)
int a;
float b;
a=b;
ここでbはint
****参考資料****
ダウンロード(c)ダウンロード(c)
以下、#include
int main()
{
return 0;
}
は省略させていただきます。以下、{}間のソースを書くことにします。
***************************************
int a,b;
a=10;
b=3;
printf("%d/%d=%d\n",a,b,a/b);
***************************************
結果
10/3=3.00000
***************************************
今までは、a,bの関係をほかの変数として指定(c=a/b;)していましたが、それをしなくても、式として評価され値を持つ性質を使い、Printfの関数の中に関係式を書くことで同じ結果が得られます。
ことでとなり、実際の値3.33333・・・よりだいぶずれたものになってしまいました。これを克服するために以下のように打ち込みます。
***************************************
int a;
double b;
printf("%d/%f=%f");
***************************************
ここでおきているのは変数型の格上げ現象です。より大きな型にそろってしまう性質があります。注意しなければならないのは、整数型に小数点型のデータを代入する場合は例外で、代入もとの整数型に値の型が調整されます。
ex.)
int a;
float b;
a=b;
ここでbはint
****参考資料****
ダウンロード(c)ダウンロード(c)
PR
この記事にコメントする
> カレンダー
> link
> カテゴリー
> FLASH
> 最新記事
(07/27)
(07/05)
(07/03)
(07/03)
(06/18)
(06/14)
(06/13)
(06/12)
(06/11)
(06/07)
> 最新トラックバック
> ブログ内検索
> 最古記事
(03/14)
(03/14)
(03/15)
(03/15)
(03/17)
(03/17)
(03/18)
(03/18)
(03/19)
(03/20)