C语言的写一个100元循环购买东西的小程序,谢谢大家了

刚入门,不熟悉,麻烦各位了C语言写一个和购买有关的小程序谢谢大家了,问题如下编写一个程序,要求用户输入购买的总预算,然后反复要求用户输入要购买的项目数量和每个项目的价格。... 刚入门,不熟悉,麻烦各位了
C语言写一个和购买有关的小程序
谢谢大家了,问题如下
编写一个程序,要求用户输入购买的总预算,然后反复要求用户输入要购买的项目数量和每个项目的价格。当预算达到0时,计划应该停止要求新项目。程序使用到while。

程序的功能需要达到下面的效果(下面的数字由用户输入,然后后面两句话是最后显示):

请输入预算:100
请输入项目和价格:10,4
请输入项目和价格:3、5
请输入项目和价格:2,10
请输入项目和价格:10、3
你不能买最后的东西。
您的剩余预算是25。
展开
 我来答
刀劈华山
2019-02-25 · TA获得超过2273个赞
知道小有建树答主
回答量:1338
采纳率:72%
帮助的人:411万
展开全部
#include <stdio.h>

#define MAX_GOODS 100

typedef struct goods
{
    int cnt;
    int price;
}GOODS_T;

int main(int argc, char *argv[])
{
    int money_all = 0;
    int money_now = 0;
    int i = 0;
    GOODS_T goods[MAX_GOODS] = {0};
    
    printf("请输入预算:");
    scanf("%d", &money_all);
    
    while(i < MAX_GOODS)
    {
        printf("请输入项目和价格:");
        scanf("%d %d", &goods[i].cnt, &goods[i].price);
        money_now += (goods[i].cnt * goods[i].price);
        if (money_now == money_all)
        {
            printf("您的剩余预算是0。\n");
            break;
        }
        else if (money_now > money_all)
        {
            money_now -= (goods[i].cnt * goods[i].price);
            printf("你不能买最后的东西。\n");
            printf("您的剩余预算是%d。\n", money_all - money_now);
            break;
        }
        
        i++;
    }
    return 0;
}

要注意的是,这份代码里输入项目和价格时用空格来区分数量和单价,不能用标点符号,如:请输入项目和价格:10  4

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式