使用哪个循环?

时间:2015-04-23 23:41:33

标签: c loops while-loop char

我希望用户输入杯子的数量,我的程序将为他们计算小计,税金和总计。然后我希望程序询问他们是否想订购更多柠檬水。如果他们放了' y,它会让他们添加,如果他们放了' n'它就会停止。我应该使用哪个循环(while,do,for)?

这是我到目前为止所做的:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>

void main()
{
    int NumCups,count=0;
    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");
    scanf("%c", &more);
    while(more!='y')
    {
        SubTot += SubTot;
        Tax +=Tax;
        Tot+=Tot;
        printf("Enter the number of cups:");
        scanf("%d", &NumCups);
        printf("Subtotal:%0.2f\nTax:%0.2f\nTotal:%0.2f\n", SubTot, Tax, Tot);
    }
        system("pause");
    }

1 个答案:

答案 0 :(得分:0)

我没有C编译器方便,所以我不能保证它是100%正确的,但这样的东西看起来像你想要的。我在这里做的是在循环开始之前询问用户。如果他们说是,那么循环就会运行。在循环结束时,它会再次询问它们。如果他们拒绝,它就会破裂。如果他们说是,它会循环直到他们说不。就像我说的那样,没有C编译器方便,所以它可能需要稍作修改,但它应该让你走上正轨。我的猜测是这里所有的小计算都是错误的,因为循环中没有任何东西使用NumCups,但我认为这至少回答了如何使用循环的问题。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>

void main()
{
    int NumCups,count=0;
    float SubTot, Tot = 0, Tax;
    char more='y';
    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");
        scanf("%c", &more);

    while(more=='y')
    {

        SubTot += SubTot;
        Tax +=Tax;
        Tot+=Tot;
        printf("Enter the number of cups:");
        scanf("%d", &NumCups);
        fflush(stdin);
        printf("Thank you.\nWould you like to order more lemonade?\n");
        scanf("%c", &more);
    }
        system("pause");
    }