题目链接:https://www.bilibili.com/video/av21356335?p=2
问题描述:小明有五本新书,要借给A、B、C三个人,若每人每次只能借一本,则可以由多少种借法?
问题分析:属于数学中的排列组合问题,即求从5个数中取3个不同数的组合的情况
使用三重for循环,只要每层循环的值不相等,最后就记录为一次
#include<iostream>
using namespace std;
int main(void)
{
int a, b, c;
int count = 0; //count用于记录次数
cout << "三人所选的书号分别为:" << endl;
for (a = 1; a <= 5; a++)
for (b = 1; b <= 5; b++)
for (c = 1; c <= 5; c++)
if ((a != b) && (a != c) && (b != c))
{
cout << a << " " << b << " " << c <<" ";
count++;
//每行输出四种情况然后换行
if (count % 4 == 0)
cout << endl;
}
cout << "共有" << count << "种情况!" << endl;
}