舞伴配对问题c语言实训报告,1舞伴配對系统实训报告.doc_游戏干线的博客-程序员宅基地

技术标签: 舞伴配对问题c语言实训报告  

1舞伴配對系统实训报告

舞伴配对系统

本题目设计目的是训练本人的基本编程能力,了解数据结构C++实现系统的开发流程,掌握数据结构和熟悉C++语言的面向对象各种基本操作。本程序中涉及结构体、单链表、类等方面的知识。通过本程序的训练,使本人能对C++语言的类操作有一个更深刻的了解,为进一步开发出高质量的有关数据结构方面系统打下坚实的基础。

1、问题定义

【内容与要求】

假设在周末舞会上,男士们和女士们进入舞厅时,各自排成一队。跳舞开始时,依次从男队和女队的队头上各出一人配成舞伴。若两队初始人数不相同,则较长的那一队中未配对者等待下一轮舞曲。要求写程序模拟上述舞伴配对问题。对于此问题,可使用队列这种数据结构实现。

在问题定义阶段要考虑题目的可行性和需求分析,接下来进入开发阶段,完成系统设计和系统实现的任务。

2、系统设计

2.1 总体设计

采用模块化的程序设计方法,即将较大的任务按照一定的原则分为一个个较小的任务,然后分别设计各个小任务。需要注意的是划分出来的模块应该相对独立但又相关,且容易理解。可以用模块化层次结构图(即模块图)来分析其任务的划分,一般从上到下进行,最上面一层是主模块,下面各层是其上一层模块的逐步细化描述。

本系统由如下功能模块组成

功能图:

配对流程图

2.2 详细设计

2.2.1数据

舞伴配对类体class peoples将用于存基本信息。

//定义类peoples

class peoples

{

public:

peoples();

void shuru(char *na,char *s);//输入函数

void sf(); //相当于析构函数

void show(); //显示函数

char *fhn(); //获取姓名

char *fhs();

private:

char *name;

char *sex;

};

这样就定义了一个类结构。

2.2.2 主控函数执行流程

//主函数实现

void main()

{

//运行系统程序执行生成标题

system("title ☆舞伴配对系统☆--全建思");

//运行系统程序执行改变界面颜色

system("color B1");

queue man;

queue woman;//把peoples类放入模板,然后创建两个队列

peoples p; //创建对象

int k; //用于输入每次舞会的人数

char t; //用于输入是否继续下一场舞会

static int count_m=0;//男的数量

static int count_w=0;//女的数量

static int count_t=0;//舞会的次数

cout<

cout<

cout<

ofstream inout("舞伴配对.txt",ios::in);//创建文件

if(!inout) //如果创建不成功就返回

{

cout<

return;

}

for(;;) //死循环相当于while(1)

{

cout<

inout<

cout<

cin>>k;

for(int i=0;i

{

peoples p;

char name[12];

char sex[2];

cout<

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_30697511/article/details/117089045

智能推荐

GBDT模型-程序员宅基地

(一)简介1.以决策树作为基函数的提升方法称为提升树;提升树利用加法模型与前向分步算法实现学习的优化过程;当损失函数是平方损失和指数损失函数时,每一步的优化是很简单的,但对一般损失函数而言,往往每一步优化并不简单,这里使用梯度提升(gradient boosting)算法;(二)

TensorFlow-gpu各版本下载链接-程序员宅基地

https://pypi.tuna.tsinghua.edu.cn/simple/tensorflow-gpu/

4 大软件架构,你们公司用哪种?_xhmj12的博客-程序员宅基地

相关阅读:厉害!某生鲜电商平台竟然是这样设计监控模块的(已开源)~作者:SimpleEasy链接:www.jianshu.com/p/e7b992a82dc0如果一个软件开发人员,不了解软..._软件公司非开源的框架

monthdiff oracle_moment.js diff 计算相差浮点数月份时间存在问题-程序员宅基地

moment('2020-11-01',"YYYY-MM-DD").diff(moment('2020-10-01',"YYYY-MM-DD"), 'months',true).toFixed(4); // 1moment('2020-10-31',"YYYY-MM-DD").diff(moment('2020-10-01',"YYYY-MM-DD"), 'months',true).toFixe..._moment计算有问题

adb为Android的root方法,Android 实现永久性开启adb 的root权限-程序员宅基地

adb 的root 权限是在system/core/adb/adb.c 中控制。主要根据ro.secure 以及 ro.debuggable 等system property 来控制。默认即档ro.secure 为0 时,即开启root 权限,为1时再根据ro.debuggable 等选项来确认是否可以用开启root 权限。为此如果要永久性开启adb 的root 权限,有两种修改的方式:1. 修改..._adb root

2023年最新Java JDK1.8的安装教程_jdk1.8.2-程序员宅基地

前言JDK是 Java 语言的软件开发工具包,没有JDK的话,无法编译Java程序(指java源码.java文件),如果想只运行Java程序(指class或jar或其它归档文件),要确保已安装相应的JRE。本文将带你学习如何安装配置JDK环境变量。一、JDK下载1.官网下载点击官网下载地址往下划,找到自己电脑相对应的JDK,点击下载。勾选接受许可协议后点击下载会提示登录ORACLE账户,如果没有就用邮箱注册一个登录后就可以下载了二、安装步骤初学者建议傻瓜式安装,直接点击下一步即可。_jdk1.8.2

随便推点

oa login.php,api/login.php · IBOS开源OA协同办公管理/IBOS - Gitee.com-程序员宅基地

use application\core\model\Log;use application\core\utils\Env;use application\core\utils\Ibos;use application\core\utils\StringUtil;use application\modules\dashboard\model\Syscache;use application\mod..._ibos 环境配置cookiepre

linux下nodejs ide,在windows环境下配置nodejs的IDE开发调试环境(详细安装配置步骤,并提供软件下载)..._常晓锁的博客-程序员宅基地

一、配置准备1. 下载Git-2.7.2 for windows,点击下载2. 下载WebStorm9.0.1的ide开发工具,点击下载3. 下载node-v4.3.1版本的nodeJs引擎,点击下载4. 下载个nodejs前端工程项目(demo),点击下载,更多学习教程参见“NodeJS入门知识分享”二、详细步骤1. 下载先安装Git-2.7.2和node-v4.3.1,直接下一步完成所有步骤...

文档服务器 件排名,服务器排名_李day的博客-程序员宅基地

服务器排名 内容精选换一换您可以登录华为云控制台查看Anti-DDoS监控报表,查看单个公网IP的监控详情,包括当前防护状态、当前防护配置参数、24小时的流量情况、24小时的异常事件等。您可以登录华为云控制台查看Anti-DDoS拦截报告,查看所有公网IP的防护统计信息,包括清洗次数、清洗流量,以及弹性云服务器、弹性负载均衡或裸金属服务器被攻击次数Top10排名和您可以登录华为云控制台查看Anti..._文档服务器

Win7 64位操作系统连接HP 1010打印机完美解决方案_win7 兼容hp 1010-程序员宅基地

工作的第一天就遇到问题,新电脑无法连接老式的HP1010打印机,64位Windows7系统无法连接32位XP网络共享打印机,而32位WIN7就可以。 这里分享个简单的解决方法: 先去下载一个64位的打印机驱动,然后添加打印机,注意这里要添加的是本地打印机,安装官网的驱动,不要检测打印机,安装完后打开打印机属性配置窗口,点击<端口>页,在该配置界面中,添加..._win7 兼容hp 1010

193-网络模块代码ChatServer_usage : ./chatserver <groups-file>-程序员宅基地

1、ChatServer.hpp首先,我们在include下的server下创建头文件:chatserver.hpp#ifndef CHATSERVER_H#define CHATSERVER_H#include <muduo/net/TcpServer.h>#include <muduo/net/EventLoop.h>using namespace muduo;using namespace muduo::net;//聊天服务器的主类class ChatSe_usage : ./chatserver

从Java到C++:CMake_java cmake-程序员宅基地

[从Java到C++系列目录]前言CMake是一个开源的、跨平台的构建工具。在Android NDK(Native Development Kit)开发中,编译C/C++代码的方式,主要有两种:ndk-build、CMake。在Android源码中,你会频繁看见前者。而后者,则是Android Studio创建包含C/C++代码的项目时,默认使用的构建工具。CMake可以配合Gradle,完成整个项目的构建。摘要本文主要内容如下:创建Native项目Native项目的不同CMake语法代码_java cmake