Her er min version af det omskrevne program: Jeg foretrækker den oprindelige udgave, hvor fahrenheit temperaturen formidles som returværdi fra funktionen,
fordi kaldet af funktion kan angives direkte som en parameter i printf. I ovenstående version skal der først ændres i
variablen result, som så anvendes som parameter i printf. Dette er i sandhed i rigtig imperativ løsning på problemet.#include <stdio.h>
double fahrenheit_temperature(double celcius_temp, double *fahrenheit_temp){
*fahrenheit_temp = (9.0 / 5.0) * celcius_temp + 32.0;
}
int main(void){
double result;
fahrenheit_temperature(0.0, &result);
printf("Freezing point: %6.2lf F.\n", result);
fahrenheit_temperature(100.0, &result);
printf("Boiling point: %6.2lf F.\n", result);
return 0;
}