懂c语言的高手请进

来源:百度知道 编辑:UC知道 时间:2024/05/22 17:32:54
小明买4样物件
1.钢笔 10元
2.苹果 10元
3.箱子 20元
4.游戏带 100元
妈妈给他120元 他最多买几样?

1.可重复买
用if 和 for帮我编两个c程序
(对了再给分)
我知道没啥意义 但总有程序可以算出吧
就像1+1=2 这个谁都会的算术 计算机也可以算出是同一道理
2楼太复杂了 我老师肯定知道不是我做的.....
我听老师说是一个for做的.......
帮帮小弟啊 大哥大姐们

#define pen_price 10
#define app_price 10
#define box_price 20
#define gam_price 100
#define money 120

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int argc, char **argv)
{
int pen_num, app_num, box_num, gam_num;
int max_num = 0;
for (pen_num=0; pen_num<money/pen_price;pen_num++) {
for (app_num=0; app_num<money/app_price;app_num++) {
for (box_num=0; box_num<money/box_price;box_num++) {
for (gam_num=0; gam_num<money/gam_price;gam_num++) {
if (pen_num*pen_price+app_num*app_price+box_num*box_price+gam_num*gam_price == 120) {
if (pen_num+app_num+box_num+gam_num>max_num) {
max_num = pen_num+app_num+box_num+gam_num;
}
}
}
}
}
}

printf("max_num=%d\n", max_num);

exit( 0 );
}

题目有问题

问题是,如果他弹出的买苹果或者是钢笔,那么不就是最多的么?,但是这个有意思么?
如果他每样都要买那么钱不够啊。综上只能是卖钢笔或者苹果最多