第 13 周 / 编程题 - 新兵队列训练(选做)
某部队进行新兵队列训练,将新兵从1开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始1至2报数,凡报到2的出列,剩下的向小序号方向靠拢,再从头开始进行1至3报数,凡报到3的出列,剩下的向小序号方向靠拢,继续从头开始进行1至2报数,以后从头开始轮流进行1至2报数、1至3报数直到剩下的人数不超过三人为止。编写程序,输入数N为最开始的新兵人数(20 < N < 6000),输出剩下的新兵最初的编号。
输入样例:
21
输出样例:
1 7 19
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>//动态分配
#include<memory.h>//数组复制,交换数组值
//思路:输入一个数字
//处理:生成一个数组,从一开始 ,进行while判断
//有两个for循环,每次for循环后判断人数是否不超过3人,if break
//每次for循环对数组都进行一次操作
int main()
{int total;//总人数scanf("%d", &total);int a[6000];//数组准备环节for (int i = 0; i < total; i++){a[i] = i + 1;}int a1[6000] = { 0 };int j = 0;//生成数组后剩余的人数//处理部分while (1){//1,2报数for (int i = 0; i < total; i++){if ((i+1) % 2 != 0){a1[j] = a[i];j++;}}total = j;memcpy(a, a1, sizeof(int)*j);//对循环后的数据进行判断,如果符合输出条件,就输出,如果不符合,就继续循环if (j <= 3){break;}//满足条件,退出else//不满足条件,就继续,并且数字清零{j = 0;}//1,3报数for (int i = 0; i < total; i++){if ((i + 1) % 3 != 0){a1[j] = a[i];j++;}}total = j;memcpy(a, a1, sizeof(int)*j);//对循环后的数据进行判断,如果符合输出条件,就输出,如果不符合,就继续循环if (j <= 3){break;}//满足条件,退出else//不满足条件,就继续,并且数字清零{j = 0;}}//输出部分for (int i = 0; i < j-1; i++){printf("%d ", a[i]);}printf("%d", a[j-1]);return 0;
}
第 13 周 / 编程题 - 新兵队列训练(选做)相关推荐
- c++primer plus 第13章 编程题第2题
c++primer plus 第13章 编程题第2题 #pragma once #ifndef CD_H_ #define CD_H_ //base classclass Cd { private:c ...
- python123第七周测验编程题答案_Python第七周编程题
Python123第七周编程题 1.打印输出附件文件的平均列数,计算方法如下: ...
- Python123第六周编程题
Python123中第六周编程题 1.获得用户输入的一个整数N,输出N中所出现不同数字的和. ...
- 哈工大C语言程序设计精髓 第十一周编程题
C语言程序设计精髓 第十一周 指针的孪生兄弟 从这一章开始难度才算是真正开始加大了,前面可以说都在过家家. 练兵区--编程题--不计入总分 1找出按字典顺序排在最前面的国名(4分) 题目内容: 输入5 ...
- 中国大学MOOC哈工大C语言程序设计第9周编程题在线测试
中国大学MOOC哈工大C语言程序设计第9周编程题在线测试 1.重复数字检查(4分) 题目内容: 从键盘输入一个数,检查这个数中是否有重复出现的数字.如果这个数中有重复出现的数字,则显示"Re ...
- 吴恩达机器学习第二周编程题参考答案
Andrew Ng机器学习第二周编程题参考答案 https://download.csdn.net/download/yhf2333/10718778 语言:Octave Tips: 1.记得使用si ...
- 面向对象程序设计——Java语言 第3周编程题 查找里程(10分)
面向对象程序设计--Java语言 第3周编程题 查找里程(10分) 题目内容 下图为国内主要城市之间的公路里程: 你的程序要读入这样的一张表,然后,根据输入的两个城市的名称,给出这两个城市之间的里程. ...
- 哈工大C语言程序设计精髓MOOC 第十三周编程题
第13周--原来内存也可以这么玩,我是指针我怕谁 练兵区--编程题--不计入总分 2寻找最高分成绩的学生(4分) 题目内容: 下面程序的功能是用动态数组编程输入任意m个班学生(每班n个学生)的某门课的 ...
- XJTU大学计算机基础第七周编程题
XJTU大学计算机基础第二周编程题目 1.题目描述: 编写程序,用户输入任意的3个小数:将这3个小数相加并显示结果:将结果按四舍五入方法转换成整数并显示. 输入输出格式: 输入:3个小数,空格分隔: ...
最新文章
- 2016-2017 ACM-ICPC CHINA-Final(EC-final) 题解(10 / 12)
- 干货|深度!“人工智能+制造”产业发展研究报告
- java基础学完就直接学ssm_java基础学习笔记3(SSM基础)
- 【转】解析.Net框架下的XML编程技术
- 期刊投稿状态_追踪期刊在线系统投稿状态(十七)
- 计算机重应用,装了一大堆应用,iPhone6会变重吗?
- Android 高斯模糊demo
- Python 绘制散点图
- hadoop基本思想与概念
- nginx 改变 缺省banner_Nginx隐藏服务器端各类信息的方法
- VS2019/MFC学习笔记之一(创建对话框工程并实现简单加法运算)
- G502使用计算机配置,罗技G502鼠标驱动调试详解!实战《男友4》设置!
- OFD文件解析流程(转)
- UG NX 12抽取复合曲线
- CAML: FAST CONTEXT ADAPTATION VIA META-LEARNING
- Python爬取堆糖网的表情包(再也不用担心斗图失败了)
- java源程序的运行命令_Java源程序名为Test.java,运行它的Java程序的命令是( )。 (10.0分)_学小易找答案...
- 将图形中线条或者图案坐标点进行提取
- python随机生成小写字母表_用小写字母生成大随机字符串的最快方法
- 数据看板/商业智能分析仪表盘
热门文章
- 10-SpringBoot启动图标修改
- 【基于MATLAB的数字图像处理】第三章·基本图像变换
- P1345 [USACO5.4]奶牛的电信Telecowmunication
- 安装使用Docker
- swift 在linux系统,Linux下搭建Swift语言开发学习环境
- FutureTask源码解析二
- ELRepo软件仓库源 提供的硬件驱动 centos
- 氚云根据后台返回数据写下拉框
- ZeroTierr的moon云服务器搭建和使用
- html 滚动字幕如何设置,如何制作滚动字幕 视频画面加滚动字幕,自己设置滚动字幕的显示时间(滚动次数)...