K&R 演習1-5 解答 (プログラミング言語C 第2版)

スポンサーリンク

鍛錬 62

K&R 演習1-5 解答 (プログラミング言語C 第2版)

温度換算プログラムに手を加えて,表を逆順に,すなわち 300 度から 0 度へという順に印字するように直せ。

B.W.カーニハン D.M.リッチー 石田晴久 訳 『プログラミング言語C 第2版 ANSI 規格準拠』, (共立出版, 2017), pp.18.

スポンサーリンク

プログラム

以下は、300 度から 0 度へという順で温度換算を印字するプログラム kr_1_5.c です。

#include <stdio.h>

int main(void)
{
	float fahr;
	float celsius;
	int lower;
	int upper;
	int step;
	
	// 初期化
	upper = 300;
	
	printf("  摂氏 |   華氏\n");
	printf("------------------\n");
	celsius=(float)upper;
	for (lower=0,step=20; celsius>=lower; celsius=celsius-step) {
		// 華氏を算出
		fahr = (float)((celsius * (9.0 / 5.0)) + 32.0);
		printf("  %3.0f  |  %6.1f\n", celsius, fahr);
	}
	
	return 0;
}
スポンサーリンク

実行結果

***@ubuntu:~/***/test/c$ 
***@ubuntu:~/***/test/c$ gcc -Wall -Wextra kr_1_5.c -o kr_1_5
***@ubuntu:~/***/test/c$ ./kr_1_5
  摂氏 |   華氏
------------------
  300  |   572.0
  280  |   536.0
  260  |   500.0
  240  |   464.0
  220  |   428.0
  200  |   392.0
  180  |   356.0
  160  |   320.0
  140  |   284.0
  120  |   248.0
  100  |   212.0
   80  |   176.0
   60  |   140.0
   40  |   104.0
   20  |    68.0
    0  |    32.0
タイトルとURLをコピーしました