用C语言编程,设用100元钱买100支笔,其中钢笔每支3元,圆珠笔每支2元,铅笔每支0.5元,问钢笔、圆珠笔和铅笔可以各买多少支(每种笔至少买1支)。

用C语言编程,设用100元钱买100支笔,其中钢笔每支3元,圆珠笔每支2元,铅笔每支0.5元,问钢笔、圆珠笔和铅笔可以各买多少支(每种笔至少买1支)。

代码:

#include<stdio.h>

int main() {
    float gangpen = 3;
    float yuanpen = 2;
    float qianpen = 0.5;
    
    for (int i = 1; i < 33; i++) {
        for (int j = 1; j < 50; j++) {
            for (int k = 1; k < 200; k++) {
                if (i * gangpen + j * yuanpen + qianpen * k == 100) {
                    printf("需要钢笔: %d  , ",i);
                    printf("需要圆珠笔: %d , " , j);
                    printf("需要铅笔: %d\n" , k);
                }
            }
        }
    }


    return 0;
}

结果:

img


这里简单说下for循环吧,我们找到最小值,必须都有一个,所以所有for循环最小值为1,最大值就是比如,铅笔最多只能买100、0.5=200,但是肯定买不了200个所以小于200,其他一样,反正简单写了下,望采纳,谢谢