fork download
  1.  
  2. /*
  3.  * Program: Temperature Conversion Charts
  4.  *
  5.  * Description:
  6.  * This program converts temperatures between Celsius
  7.  * and Fahrenheit using two separate functions.
  8.  *
  9.  * The first chart displays Fahrenheit equivalents
  10.  * for Celsius temperatures from 0 to 100 degrees.
  11.  *
  12.  * The second chart displays Celsius equivalents
  13.  * for Fahrenheit temperatures from 32 to 212 degrees.
  14.  *
  15.  * Both charts display results in a tabular format.
  16.  */
  17.  
  18. #include <stdio.h>
  19.  
  20. // Function Prototypes
  21. float toCelsius(int theFahrenheitTemp);
  22. float toFahrenheit(int theCelsiusTemp);
  23.  
  24. int main()
  25. {
  26. int i; // loop index
  27.  
  28. // Print Celsius to Fahrenheit chart header
  29. printf("\n*** Celsius to Fahrenheit ***\n");
  30. printf("-----------------------------\n");
  31. printf("%-12s %-12s\n", "Celsius", "Fahrenheit");
  32. printf("-----------------------------\n");
  33.  
  34. // Loop through Celsius temperatures 0 to 100
  35. for (i = 0; i <= 100; i++)
  36. {
  37. // Call function and print Fahrenheit result
  38. printf("%-12d %-12.2f\n", i, toFahrenheit(i));
  39. }
  40.  
  41. // Print Fahrenheit to Celsius chart header
  42. printf("\n*** Fahrenheit to Celsius ***\n");
  43. printf("-----------------------------\n");
  44. printf("%-12s %-12s\n", "Fahrenheit", "Celsius");
  45. printf("-----------------------------\n");
  46.  
  47. // Loop through Fahrenheit temperatures 32 to 212
  48. for (i = 32; i <= 212; i++)
  49. {
  50. // Call function and print Celsius result
  51. printf("%-12d %-12.2f\n", i, toCelsius(i));
  52. }
  53.  
  54. return 0;
  55. }
  56.  
  57. /*
  58.  * Function: toCelsius
  59.  *
  60.  * Description:
  61.  * Converts a Fahrenheit temperature to Celsius.
  62.  *
  63.  * Parameter:
  64.  * theFahrenheitTemp - Temperature in Fahrenheit
  65.  *
  66.  * Formula:
  67.  * Celsius = (Fahrenheit - 32) * 5 / 9
  68.  *
  69.  * Returns:
  70.  * The equivalent Celsius temperature as a float.
  71.  */
  72.  
  73. float toCelsius(int theFahrenheitTemp)
  74. {
  75. float celsius;
  76.  
  77. // Convert Fahrenheit to Celsius
  78. celsius = (theFahrenheitTemp - 32) * 5.0 / 9.0;
  79.  
  80. return celsius;
  81. }
  82.  
  83. /*
  84.  * Function: toFahrenheit
  85.  *
  86.  * Description:
  87.  * Converts a Celsius temperature to Fahrenheit.
  88.  *
  89.  * Parameter:
  90.  * theCelsiusTemp - Temperature in Celsius
  91.  *
  92.  * Formula:
  93.  * Fahrenheit = (Celsius * 9 / 5) + 32
  94.  *
  95.  * Returns:
  96.  * The equivalent Fahrenheit temperature as a float.
  97.  */
  98.  
  99. float toFahrenheit(int theCelsiusTemp)
  100. {
  101. float fahrenheit;
  102.  
  103. // Convert Celsius to Fahrenheit
  104. fahrenheit = (theCelsiusTemp * 9.0 / 5.0) + 32;
  105.  
  106. return fahrenheit;
  107. }
  108.  
  109.  
  110.  
Success #stdin #stdout 0s 5320KB
stdin
73.3
stdout
*** Celsius to Fahrenheit ***
-----------------------------
Celsius      Fahrenheit  
-----------------------------
0            32.00       
1            33.80       
2            35.60       
3            37.40       
4            39.20       
5            41.00       
6            42.80       
7            44.60       
8            46.40       
9            48.20       
10           50.00       
11           51.80       
12           53.60       
13           55.40       
14           57.20       
15           59.00       
16           60.80       
17           62.60       
18           64.40       
19           66.20       
20           68.00       
21           69.80       
22           71.60       
23           73.40       
24           75.20       
25           77.00       
26           78.80       
27           80.60       
28           82.40       
29           84.20       
30           86.00       
31           87.80       
32           89.60       
33           91.40       
34           93.20       
35           95.00       
36           96.80       
37           98.60       
38           100.40      
39           102.20      
40           104.00      
41           105.80      
42           107.60      
43           109.40      
44           111.20      
45           113.00      
46           114.80      
47           116.60      
48           118.40      
49           120.20      
50           122.00      
51           123.80      
52           125.60      
53           127.40      
54           129.20      
55           131.00      
56           132.80      
57           134.60      
58           136.40      
59           138.20      
60           140.00      
61           141.80      
62           143.60      
63           145.40      
64           147.20      
65           149.00      
66           150.80      
67           152.60      
68           154.40      
69           156.20      
70           158.00      
71           159.80      
72           161.60      
73           163.40      
74           165.20      
75           167.00      
76           168.80      
77           170.60      
78           172.40      
79           174.20      
80           176.00      
81           177.80      
82           179.60      
83           181.40      
84           183.20      
85           185.00      
86           186.80      
87           188.60      
88           190.40      
89           192.20      
90           194.00      
91           195.80      
92           197.60      
93           199.40      
94           201.20      
95           203.00      
96           204.80      
97           206.60      
98           208.40      
99           210.20      
100          212.00      

*** Fahrenheit to Celsius ***
-----------------------------
Fahrenheit   Celsius     
-----------------------------
32           0.00        
33           0.56        
34           1.11        
35           1.67        
36           2.22        
37           2.78        
38           3.33        
39           3.89        
40           4.44        
41           5.00        
42           5.56        
43           6.11        
44           6.67        
45           7.22        
46           7.78        
47           8.33        
48           8.89        
49           9.44        
50           10.00       
51           10.56       
52           11.11       
53           11.67       
54           12.22       
55           12.78       
56           13.33       
57           13.89       
58           14.44       
59           15.00       
60           15.56       
61           16.11       
62           16.67       
63           17.22       
64           17.78       
65           18.33       
66           18.89       
67           19.44       
68           20.00       
69           20.56       
70           21.11       
71           21.67       
72           22.22       
73           22.78       
74           23.33       
75           23.89       
76           24.44       
77           25.00       
78           25.56       
79           26.11       
80           26.67       
81           27.22       
82           27.78       
83           28.33       
84           28.89       
85           29.44       
86           30.00       
87           30.56       
88           31.11       
89           31.67       
90           32.22       
91           32.78       
92           33.33       
93           33.89       
94           34.44       
95           35.00       
96           35.56       
97           36.11       
98           36.67       
99           37.22       
100          37.78       
101          38.33       
102          38.89       
103          39.44       
104          40.00       
105          40.56       
106          41.11       
107          41.67       
108          42.22       
109          42.78       
110          43.33       
111          43.89       
112          44.44       
113          45.00       
114          45.56       
115          46.11       
116          46.67       
117          47.22       
118          47.78       
119          48.33       
120          48.89       
121          49.44       
122          50.00       
123          50.56       
124          51.11       
125          51.67       
126          52.22       
127          52.78       
128          53.33       
129          53.89       
130          54.44       
131          55.00       
132          55.56       
133          56.11       
134          56.67       
135          57.22       
136          57.78       
137          58.33       
138          58.89       
139          59.44       
140          60.00       
141          60.56       
142          61.11       
143          61.67       
144          62.22       
145          62.78       
146          63.33       
147          63.89       
148          64.44       
149          65.00       
150          65.56       
151          66.11       
152          66.67       
153          67.22       
154          67.78       
155          68.33       
156          68.89       
157          69.44       
158          70.00       
159          70.56       
160          71.11       
161          71.67       
162          72.22       
163          72.78       
164          73.33       
165          73.89       
166          74.44       
167          75.00       
168          75.56       
169          76.11       
170          76.67       
171          77.22       
172          77.78       
173          78.33       
174          78.89       
175          79.44       
176          80.00       
177          80.56       
178          81.11       
179          81.67       
180          82.22       
181          82.78       
182          83.33       
183          83.89       
184          84.44       
185          85.00       
186          85.56       
187          86.11       
188          86.67       
189          87.22       
190          87.78       
191          88.33       
192          88.89       
193          89.44       
194          90.00       
195          90.56       
196          91.11       
197          91.67       
198          92.22       
199          92.78       
200          93.33       
201          93.89       
202          94.44       
203          95.00       
204          95.56       
205          96.11       
206          96.67       
207          97.22       
208          97.78       
209          98.33       
210          98.89       
211          99.44       
212          100.00