開発環境
- OS X Lion - Apple(OS)
- TextWrangler(Text Editor) (BBEditの無料、light版)
- 言語: C
- コンパイラ: UNIX ccコンパイラ (汎用UNIX)
『実践プログラミング 第3版』 (Steve Oualline (著)、 望月 康司 (監修) (翻訳)、 谷口 功 (翻訳)、 オライリー・ジャパン、1998年、ISBN978-4900900646)の4章(基本的な宣言および式)(プログラミング実習)浮動小数点数型の除算と整数型の除算の設問4-2, 3, 4, を解いてみる。
コード(TextWrangler)
#include <stdio.h> float answer1; float answer2; int answer3; float result; int main() { /* 整数型割る整数型で結果は0になり、それがfloat型の変数answer1に代入されて0.0になる */ answer1 = 1/3; /* 以下のように修正すれば、float型の結果を代入できる */ answer2 = 1.0/3; answer3 = 2 + 2; result = 7.0 / 22.0; printf("The value of 1/3 is %f\n",answer1); printf("The value of 1.0/3 is %f\n",answer2); /* printf("The answer3 is %d\n"); %d変換が指定されてない */ printf("The answer3 is %d\n",answer3); /* 整数型の%dにfloat型のresultを指定してるという問題がある printf("The result is %d\n",result); */ /* ということで%dを%fに変えればいい */ printf("The result is %f\n",result); return (0); }
入出力結果(Terminal)
$ cc -g -o c_program c_program.c $ ./c_program The value of 1/3 is 0.000000 The value of 1.0/3 is 0.333333 The answer3 is 4 The result is 0.318182 $
0 コメント:
コメントを投稿