借书方案知多少

一、问题描述:

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

二、设计思路:

1、首先定义a,b,c三种变量来表示三个人借书的编号。

2、每个小朋友所借的书只有五种编号,所以可先利用循环语句进行穷举来找到每个小朋友所接到书的编号。

3、因为书的编号不能相同,第二个人的选择会受到第一个人的限制,最后一个人的选择会受到前两个人的限制,所以要对循环进行一定的限制,即在输出语句前加入if语句if(a!=b&&b!=c&&a!=c)即可。

4、最后得出借阅方法数,输出即可

三、程序流程图:

 

 

 

 

四、代码实现:

#include<stdio.h>
int main()
{
int a,b,c,i=0;/*a,b,c分别用来记录三个人所选的新书编号,i用来控制有效的借阅次数/*
printf("A,B,C三人所选书号分别为:\n");
for(a=1;a<=5;a++)/*用来控制A借阅图书编号/*
for(b=1;b<=5;b++)/*用来控制B借阅图书编号/*
 for(c=1;c<=5;c++)/*用来控制C借阅图书编号/*
 if(a!=b&&b!=c&&a!=c)
 {
 printf("A:%2d,B:%2d,C:%2d",a,b,c);
 i++;
 if(i%4==0)
 printf("\n");/*每行最多输出四种借阅方法组合*/
}
printf("共有%d种有效借阅方法\n",i);/*输出有效的借阅方法总数*/
}

 

posted @ 2023-04-13 19:35  jais  阅读(90)  评论(0编辑  收藏  举报