借书方案知多少

小明有五本新书,要借给A,B,C这三位小朋友,若每人每次只能借一本,则可以有多少种不同的借法?

一共有五本书,对于第一个小孩的选择,我们可以用一个for循环来穷举出,第二个和第三个小孩也同理,但三个小孩中任意两个小孩都不能借同一本书,因此我们需要对小孩选到的书进行编号,再通过条件判断使得三个孩子选到的书编号不同,分别输出三个孩子选到书籍的编号以及一共借书的借法。

#include<iostream>

using namespace std;
int main()
{
int A,B,C,x;//A,B,C分别代表A,B,C三位小朋友所借书的编号 ,x代表有多少种借法
for(A=1;A<=5;A++)
{
for(B=1;B<=5;B++)
{
for(C=1;C<=5;C++)
{
if(A!=B&&A!=C&&C!=B)
{
cout<<"A:"<<A<<" B:"<<B<<" C:"<<C<<endl;
x++;
}
}
}
}
cout<<"一共有"<<x<<"种借法" <<endl;
return 0;
}

运行结果如下:

 

posted @ 2023-04-11 20:36  为20岁努力  阅读(16)  评论(0编辑  收藏  举报