開発環境
- 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 コメント:
コメントを投稿