处理此作业。不知道如何摆脱while循环,我不能使用比while循环更先进的任何东西。我尝试将int转换为char,但没有奏效。以下是我的代码。任何帮助,将不胜感激。如何在用户输入字母“q”时退出while循环 - C编程
/* This program has the user input a number. This number is then printed out in degrees F, C and K*/
#include <stdio.h>
#define KEL 273.16
#define CEL1 32
#define CEL2 0.5555
void temperatures(double temp);
int main(void)
{
double tempF; // Temperature the user inputs
char userinput; // Quit character the user inputs
userinput = 'a';
tempF = 0;
printf("Enter a temperature in degrees Farenheit or enter q to quit:\n");
scanf_s("%lf", &tempF);
//scanf_s("%c", &userinput);
while ((char)tempF != 'q')
{
temperatures(tempF);
printf("Enter a temperature in degrees Farenheit or enter q to quit:\n");
scanf_s("%lf", &tempF);
//scanf_s("%c", &userinput);
}
printf("Goodbye!\n");
return 0;
}
void temperatures(double temp)
{
double celsius;
double kelvins;
celsius = (temp - CEL1) * CEL2;
kelvins = celsius + KEL;
printf("%lf F is %lf degrees C or %lf degrees K.\n", temp, celsius, kelvins);
}