借书方案知多少
问题:小明有5本书,要借给A,B,C三人,若每人每次只能借一本,则有多少种不同的借法?
设计:给五本书编号1到5,A,B,C拿到5本书中不同的三本,即为一次。定义a,b,c,,for循环中令a=1;a<=5;a++,在a的循环下,以同样的方式嵌套关于b的for循环,在b的循环下也以同样的方式嵌套关于c的循环。,最后if条件判定,判定条件为a不等于b不等于c,三者不等即分配成功一次,最后打印输出。
#include<iostream>
using namespace std;
int main()
{
int a,b,c,i=0;//定义i=0,用来后面计算种类
for(a=1;a<=5;a++)
{
for(b=1;b<=5;b++)
{
for(c=1;c<=5;c++)
{
if(a!=b&&b!=c&&a!=c)
{cout<<a<<" "<<b<<" "<<c<<endl;
i++;
}
}
}
}
cout<<"借书的所有方法共"<<i<<"种"<<endl;
return 0;
}
总结:关键是条件的判定a不等于b不等于c。