///////////////////////////////////////////////////////////////////
///@brief 功能说明:以C++方式实现程序: 设有N个人围坐一圈并按顺时针方向从
// 1到N编号,从第S个人开始进行1到M报数,报数到第M个人时,此
// 人出圈,再从他的下一个人重新开始1到M的报数,如此进行下去
// 直到所有的人都出圈为止。打印出出圈次序。
///@date 2011/5/4 —— 2011/5/28
///@note 备注:
///////////////////////////////////////////////////////////////////
#include <iostream>
#include <malloc.h>
using namespace std;
///@brief 函数名: mainface()
///@brief 函数功能:系统主界面函数
///@date 2011/5/17
///@param [IN]
///@retval
///@return
///@note 备注:
void mainface()
{
cout << endl;
cout << endl;
cout << endl;
cout << endl;
cout << " ********************************************************";
cout << endl;
cout << " WELCOME TO THE CODE ZOON OF CIRCLECOUNT ";
cout << endl;
cout << " 欢迎来到代码园地——报数出圈 ";
cout << endl;
printf( " ********************************************************");
cout << endl;
cout << endl;
cout << endl;
}
///@brief 函数名: mainmenu()
///@brief 函数功能:分级界面函数
///@date 2011/5/19
///@param [IN]
///@retval
///@return
///@note 备注:
void mainmenu()
{
system("cls"); //调用清屏函数
cout << endl;
cout << endl;
cout << "******************************************************\n";
cout << " ************************************************ \n";
cout << endl;
cout << " 请输入以下数值(均为正整数) : \n";
cout << endl;
cout << " N 表示总人数 \n";
cout << " S 表示从第S个人开始报数 \n";
cout << " M 表示进行1到M报数 \n";
cout << endl;
cout << " ************************************************ \n";
cout << "******************************************************\n";
}
///@brief 函数名: PrintOutIndex()
///@brief 函数功能:打印计算出圈顺序函数
///@date 2011/5/24
///@param [IN]
///@retval
///@return
///@note 备注:
void PrintOutIndex ( int iTotalNum, int iStartPos, int iCountNum )//声明三个参数:总人数、开始报数位置、报数值
{
int *a = new int[iTotalNum+1], iIndex, iRemainNum, iOutIndex;//声明各参数
--iStartPos;
for ( iIndex = 0; iIndex < iTotalNum; ++iIndex )
{
a[iIndex] = iIndex + 1;
}
iRemainNum = iTotalNum; //剩余人数
while ( iRemainNum > 0 ) //当圈中还有人时
{
iOutIndex = ( iStartPos+iCountNum-1 ) % iRemainNum; //出圈编号
iStartPos = iOutIndex; //打印出圈编号
cout << a[iOutIndex] << " ";
--iRemainNum; //剩余人数减1
for ( iIndex = iOutIndex; iIndex < iRemainNum; ++ iIndex )
{
a[iIndex] = a[iIndex+1];
}
}
cout << endl;
}
Amw8at8harvard8
- 粉丝: 0
- 资源: 12
最新资源
- Qt C++皮肤生成器 20套肤 26套精美界面 各种界面 一键肤 1. 自带17套精美皮肤样式,其中包括黑色、灰色、扁平等 2. 皮肤生成器只需要简单几步就可以生成一套自定义的皮肤 3. 自带了
- 永磁同步电机无位置传感器控制,采用的是龙贝格,基于模型的 定点开发,仿真效果和实际95%高度吻合,可以仿真学习,也可以直接移植到项目中
- Guns v8.3.0发布,全新前后端分离版本 Guns是一个现代化的Java应用开发基础框架,基于主流技术Spring Boot3 + JDK17,配套代码生成平台,DevOps运维平台
- 高速道路场景全景分割数据集、约5000张数据和标签
- 数据结构 (1)(1).zip
- 龙讯lt6911uxc,lt9611uxc资料,有源码固件,支持4k60,支持对接海思3519a和3559a,hdmi转mipi,双通道4k60
- 一种基于扩展反电动势的永磁同步电机无位置控制算法,全部C语言 编写,含有矢量控制大部分功能(弱磁,解耦,过调制,死区补偿等) 为了方便学习和工作,该产品结合S-Function进行仿真,且属于量产产品
- 源码,打包程序,和测试文档
- IO总结总结总结总结总结
- krc歌词解密站.html
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈