gpt4 book ai didi

c - 程序一直运行直到用户输入 n 退出

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

我正在做一项作业,允许用户输入“类型”和“重量”,它会显示成本。这是代码。我希望它继续运行,直到用户输入“n”。

main()
{
char type,chr;
float cost,weight;

do
{
printf("Insert the type of fish: "); /*inputs type and weight*/
scanf("%c",&type);
printf("insert weight: ");
scanf("%f",&weight);

switch(type)
{
case 'K':
case 'k':
cost=weight*9.00;
break;
case 'R':
case 'r':
cost=weight*10.00;
break;
case 'S':
case 's':
cost=weight*12.00;
break;
case 'G':
case 'g':
cost=weight*8.00;
break;
case 'T':
case 't':
cost=weight*15.00;
break;
default :
printf("Invalid type\n");
}
printf("The cost of fish is:%.2f \n",cost);
printf("Do you want to continue?Y/N: ");
scanf(" %c",&chr);
}
while(chr == 'Y' || chr == 'y');
}

我使用了 do..while 循环,它工作得很好,直到我输入“y”并且无法输入类型。

it looked something like this

最佳答案

从标准输入流中读取类型假设您确切地知道流中的下一个内容。正如 Streeragh 提到的,您可能有一个换行符作为下一个输入字符。您可以通过转储 chr 来对此进行分类(尝试使用十六进制,例如 %0x)。提到的文章还提供了很好的建议:将文本输入为 %s(或使用 readline),然后解析输入。看看strtok。还要注意,stdin 可以从管道重定向(即 out.exe

关于c - 程序一直运行直到用户输入 n 退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52428199/

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