gpt4 book ai didi

c - 如何强制程序识别单词并停止

转载 作者:行者123 更新时间:2023-11-30 20:31:54 26 4
gpt4 key购买 nike

我遇到了与输入类型的不同类型变量相关的问题。我的程序很简单。我输入摄氏温度,程序打印摄氏温度和华氏温度值,然后循环自身询问下一个摄氏温度值。如果您输入“-99999”,它将停止。我想将其更改为在输入单词“elo”时停止(它在波兰俚语中基本上意味着“再见”:)),但经过几个小时的尝试后我放弃了......我将不胜感激任何帮助!

#include <stdio.h>

float fahrenheit(long);

int main()
{
int celsius;
printf("Type the temperature in celsius: ", &celsius);
scanf_s("%ld", &celsius);

while (celsius != -99999) {
printf("%ld %6.1f\n", celsius, fahrenheit(celsius));
printf("Type the temperature in celsius: ", &celsius);
scanf_s("%ld", &celsius);
}
}

float fahrenheit(long celsius)
{
return (float) 1.8*celsius + 32.0;
}

最佳答案

有多种方法可以做到这一点。我认为最简单的方法是检测 scanf 读取数字失败,然后依靠字符串输入。

int celcius;
char buff[10];
bool elo = false;

int args_read = scanf(" %d", &celcius);
if (args_read < 1) {
// User must have put in a non-number
scanf(" %s", buff);

if (strcmp(buff, "elo") == 0) {
elo = true;
}
}

关于c - 如何强制程序识别单词并停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49373863/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com