一人选一个方法,解决个小孩搬砖的问题。
题目是这样的:有100个人,由大人、妇女、小孩组成,有100块砖,大人一个人搬三块砖,妇女一个人搬一块砖,小孩两个人搬一块砖,请问有多少个大人,有多少个妇女,有多少个小孩。
我感觉这个题可以用好多方法,比如if语句,for语句等等,(当然我才学这么多)都各自发表下自己的代码吧,分数不是很多,纯属兴趣。
#include <stdio.h> int main(void) { int i,j,k; int x,y,z; for(x = 0;x<=33;x++) { for(y = 0;y<=100;y++) { z = 100-x-y; if(0 == z%2 && 100 == 3*x+y+(z>>1)) printf("男人:%d 妇女:%d 小孩:%d\n",x,y,z); } } return 0; }最笨的方法
#include <stdio.h> int main(void) { int i,j,k; int x,y,z; for(i = 0;i<=20;i++) { x = i; y = 100-5*i; z = 100-x-y; printf("男人:%d 妇女:%d 小孩:%d\n",x,y,z); } return 0; }其实观察输出结果就可以看到少买5个女人就可以买1个男人和4个小孩 所以从一开始100个女人