【发布时间】:2023-03-27 16:30:01
【问题描述】:
通过使用 for 循环。我想让用户输入他们想要订购的柠檬水量。然后我的程序将计算税收、小计和总计。之后应该让他们通过输入“y”或“n”继续。
当我编译这些代码时。我得到的都是空白。我的代码有什么问题?
所以我做了一些改变。但是,如果他们要求继续,我不知道如果我输入“n”,如何让它停止程序。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
void main()
{
int NumCups;
float SubTot, Tot = 0, Tax;
char more;
printf("Enter the number of cups:");
scanf("%d", &NumCups);
SubTot = NumCups*1.29;
Tax = SubTot*0.0825;
Tot = SubTot + Tax;
printf("Subtotal:%0.2f\nTax:%0.2f\nTotal:%0.2f\n", SubTot, Tax, Tot);
fflush(stdin);
printf("Thank you.\nWould you like to order more lemonade?\n");
for (; scanf("%c", &more);)
{
printf("Enter the number of cups:");
scanf("%d", &NumCups);
SubTot = NumCups*1.29;
Tax = SubTot*0.0825;
Tot += SubTot + Tax;
fflush(stdin);
printf("Subtotal:%0.2f\nTax:%0.2f\nTotal:%0.2f\n", SubTot, Tax, Tot);
printf("Thank you.\nWould you like to order more lemonade?\n");
}
system("pause");
}
【问题讨论】:
-
您希望先输入一些符号,然后您才会询问杯子的数量
-
与您的问题无关,但请注意您应该使用
int main()而不是void main()。此外,fflush(stdin)是未定义的行为。 (这可能与您的问题有关。)另外,请发布一个可编译的示例,明确说明预期输出和实际输出。 -
@ace 我做了一些改变。
-
count的意义何在?除了递增(没有明显原因?)之外,我没有看到它在任何地方使用过。为什么不只使用一个while循环?我认为它更适合您的程序。 -
@digitalninja 任务是使用 for 循环。