雅痞6 2022-10-13 09:22 采纳率: 81%
浏览 48
已结题

买铅笔问题,需要分几种情况

img

问题遇到的现象和发生背景 p需要去商店买 n 支铅笔作为小朋友们参加 NOIP 的礼物。她发现商店一共有 3种包装的铅笔,不同包装内的铅笔数量有可能不同,价格也有可能不同。为了公平起 见,P 决定只买同一种包装的铅笔。

商店不允许将铅笔的包装拆开,因此 P 可能需要购买超过 n 支铅笔才够给小朋友们发礼物。

现在 P 想知道,在商店每种包装的数量都足够的情况下,要买够至少 n支铅笔最少需要花费多少钱。

用代码块功能插入代码,请勿粘贴截图

#include <stdio.h>
int main () {
int a,b,c,d=10000,i,f,g;
scanf("%d",&g);
for(i=1;i<=3;i++)
{
scanf("%d%d",&a,&b);
if(g%a==0) c=b*(g/a);
else c=b*(g/a+1);
if(c<d||d==10000) d=c;

} printf("%d",c);
}

运行结果及报错内容 只对了40%,不理解怎样处理。

img

  • 写回答

2条回答 默认 最新

  • it_hao528 2022-10-13 17:46
    关注

    代码参考如下:

    #include <stdio.h>
    int main() {
        int a[7] = {0};
        for (int i = 0; i < 7; i++) {
            scanf("%d", &a[i]);
        }
        // 第一种花费
        int p1 = a[1] * (a[6] / a[0] + (a[6] % a[0] > 0));
        // 第二种花费
        int p2 = a[3] * (a[6] / a[2] + (a[6] % a[2] > 0));
        // 第三种花费
        int p3 = a[5] * (a[6] / a[4] + (a[6] % a[4] > 0));
        if (p1 <= p2 && p1 <= p3) {
            printf("购买第一种最划算,需花费:%d元\n", p1);
        } else if (p2 <= p1 && p2 <= p3) {
            printf("购买第二种最划算,需花费:%d元\n", p2);
        } else if (p3 <= p1 && p3 <= p2) {
            printf("购买第三种最划算,需花费:%d元\n", p3);
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月28日
  • 已采纳回答 10月20日
  • 修改了问题 10月13日
  • 修改了问题 10月13日
  • 展开全部

悬赏问题

  • ¥200 sqlite3数据库设置用户名和密码
  • ¥15 cups交叉编译后移植到tina sdk的t113,只需要实现usb驱动打印机,打印pdf文件
  • ¥30 关于#wireshark#的问题:需要网络应用流量数据集需要做长度序列的实验,需要与应用产生的会话的数据包的长度,如视频类或者聊天类软件
  • ¥15 根据上述描述表示泥浆密度沿着管路的长度方向在不断变化,如何来表示泥浆密度随管路的变化(标签-matlab|关键词-流计算)
  • ¥21 matlab可以把图像数据转换为小波分析吗
  • ¥60 基于香农编码的图像压缩算法实现
  • ¥15 matlabGUI绘制一个函数与其导数的图像
  • ¥20 大数据采集用Python爬取猫眼电影数据
  • ¥15 用freertos后NVIC里系统时钟部分报错
  • ¥15 后缀表达式的计算算法问题