首页 > 编程语言 >c语言趣味编程(2)借书方案知多少

c语言趣味编程(2)借书方案知多少

时间:2023-04-18 18:44:26浏览次数:36  
标签:遍历 变量 int 编程 知多少 嵌套循环 借书

一、问题描述

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

二、设计思路

(1)定义三个变量a,b,c来代表三位小朋友借的书的编号

(2)利用for循环 嵌套循环让a,b,c递增遍历得到满足条件的情况

(3)并定义另一个变量i来代表借阅情况的总和,以便后面的输出

三、程序流程图

 

 

四、伪代码

五、代码

 1 #include <iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int a, b, c;
 6     int i = 0;
 7     for (a = 1; a <= 5; a++)
 8     {
 9         for (b = 1; b <= 5; b++)
10         {
11             for (c = 1; c <= 5; c++)
12             {
13                 if (a != b && b != c && c != a)
14                 {
15                     printf("A=%2d B=%2d C=%2d ", a, b, c);
16                     i++;
17                     if (i % 4 == 0)
18                     {
19                         cout << endl;
20                     }
21                 }
22             }
23         }
24     }
25     cout << "共有" << i << "种借阅方法" << endl;
26     return 0;
27 }

运行结果:

 

 

六、总结

(1)嵌套循环可以令一变量不变,另一变量进行运算,使之满足题目要求

(2)使用for循环遍历比较好用

标签:遍历,变量,int,编程,知多少,嵌套循环,借书
From: https://www.cnblogs.com/lian369/p/17330718.html

相关文章

  • WebSocket和Socket编程
    面试一般会问socket原理socket为啥要有端口:确定一个链路的是一个四元组Socket编程socket通信你做过socket编程吗,socket是怎么实现知道有连接过来的说说WebSocket与socket的区别先谈谈Websocket与Socket的区别首先Socket==不属于协议范畴,它把TCP/IP层复杂的操作抽象为几个简......
  • EJB教程_编程入门自学教程_菜鸟教程-免费教程分享
    教程简介EJB入门教程-从简单的步骤了解EJB3.0和3.1(EnterpriseJavaBean)框架,从基本概念到高级概念,包括概述,环境设置,应用服务器,容器,企业Bean,注释,会话,无状态会话,有状态会话,消息驱动,实体Bean,持久性,远程接口,查找,生命周期,接口,拦截器,可嵌入对象,Blob/Clobs,事务,安全性,JNDI绑定,实体关......
  • PHP 7 教程_编程入门自学教程_菜鸟教程-免费教程分享
    教程简介PHP7入门教程-从简单的步骤了解PHP7,从基本到高级概念,包括简介,性能,环境设置,标量类型声明,返回类型声明,空值合并运算符,Spaceship运算符,常量数组,匿名类,Closure::call(),Filteredunserialize(),IntlChar,CSPRNG,Expectations,useStatement,ErrorHandling,IntegerDivision,Sess......
  • Java并发编程:Lock
      在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来讨论这个问题,从Java5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。也许有朋友会问,既然都可以通过synchronized来实现同步访问了,那么为什么还需要提......
  • Java并发编程:深入剖析ThreadLocal
    Java并发编程:深入剖析ThreadLocal想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理。首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景。以下是本文目录......
  • shell编程-位置参数的理解
    Linux——$1、$#、$@、$0、$1、$2探岳精神于 2018-07-1921:59:45 发布29675 收藏 66分类专栏: 测试开发 测试开发专栏收录该内容70篇文章5订阅订阅专栏$1在shell中称为“位置参数”,表示传入的第1个参数(第1个入参)。test-z$1是一个判断表达......
  • 《3D编程模式》写书-第4次记录
    大家好,这段时间我完成了“再看设计原则”的初稿,包括了设计基础、单一职责原则、依赖倒置原则、接口隔离原则、合成复用原则、最少知识原则、开闭原则目前我已经完成了所有的初稿,后面会进行第二轮的修改,将初稿改为二稿目前暂定删除“提出新的设计原则”的内容感谢大家的支持!......
  • socket网络编程
    下面分别以TCP、UDP为例介绍两者的流程图和代码实现:TCP1.流程图:和网上大部分的版本不同,我将TCP三次握手的过程画在了accpet之前,这也是在查阅一些资料发现三次握手会由内核自动完成,aceept只是从队列中取出已经建好的tcp连接,这一点可以在代码中不加入accpet以及后续步骤......
  • UNIX环境高级编程 第三版 源代码编译及使用
    UNIX环境高级编程(第3版)中的代码示例多次包含了一下头文件:#include"apue.h"搜索发现原来这个头文件是作者自定义的一个文件,并在官网提供了源代码供下载。下载之后解压该文件:tar-zxfsrc.3e.tar.gz进入文件夹并编译:cdapue.3emake等待结束,如果没有报错就成功了。(如......
  • 网络编程
    网络编程概述网络编程就是在网络通信协议下,不同计算机上运行的程序,进行的数据传送。本质就是不同计算机之间通过网络进行数据传送。java中可用java.net包下的技术,开发出常见的网络应用程序。常见的软件架构:B/S架构:Browser/Server,即浏览器/服务器的架构只需要一个浏览器,用......