17C++循环结构-(do-while循环)2

news/2025/2/5 15:56:11/文章来源:https://www.cnblogs.com/citStudy/p/18502153

一、实例

1、模拟法1

在一次风之巅小学文艺汇演中,狐狸老师、尼克、格莱尔同台演出,其中个环节是拍手游戏,狐狸老师每1秒拍一次手,尼克每2秒拍次,格莱尔每4秒拍一次。三人同时开始拍第一次手,每人都拍10次。
试编一程序,算一算观众可听到多少声拿声?
按时间顺序,根据每个人的条件模拟拍手过程。开始时,时间为0秒,每人都拍了1次,这时众听到1声本声,每人剩下9次,然后逐一模拟拍手,直到三人各自拍满9次为止。程序中变量time是时间,cout是观众听到的掌声,fag是有人拍手的标记,teacher、nike、glir分别表示狐狸老师、尼克\格莱尔的手次数。流程图如图:

#include <iostream>
using namespace std;
int main()
{int time, count,teacher,nike, glair;bool flag;	time=0;count=1; teacher=nike=glair=0;do{flag=0;time++;if(teacher<9){flag=1;teacher++;}if(nike<9&&time%2==0){flag=1;nike++;}if(glair<9&&time%4==0){flag=1;	glair++;}if(flag) count++;}while(teacher+nike+glair<9*3);cout<<count<<endl;return 0;
}

2、模拟法2


#include <iostream> 
using namespace std;
int main()
{int n,nike,glair,num=0;nike=glair=0;n=0;do{nike++;if(nike>20) nike=1;glair++;if(glair>30) glair=1;if(nike==glair) num++;n++;}while(n<1000);cout<<num<<endl;return 0;
}

3、纯小数转化为最简分数


#include <iostream>
#include <cmath> //调用求浮点数的绝对值函数fabs() 
using namespace std;
int main()
{double x,y;long long a,b,i,j;cout<<"请输入一个纯小数"<<endl;do{cout<<"x=";cin>>x;}while(x>=1||x<=0);a=1;y=x;while(fabs(y-(int)y)>1e-10)   //纯小数化成整数{a*=10;y=x*a;          //不可以写成  y=y*10;}                 //因误差不停的扩大,会出现死循环b=y;cout<<b<<'/'<<a<<endl;for(i=b;i>=1;i--)  //求出a和b的最大公约if(b%i==0&&a%i==0) {j=i;   //找出最大公约数后,赋值给jbreak; //退出循环}cout<<"最简分数为:";cout<<b/j<<'/'<<a/j<<endl;	 return 0;
}

二、练习:

(一)选择题
1、下列选项中不属于图像格式的是( )。

A.jpeg格式        B.txt格式        C.gif格式          D.png格式

2、计算网络最突比的点是( )

A.计算精度高      B.内存容量大     C.远算速度快      D.可以实现资源共享

3、格莱尔收到一封主题为“这是我最近的照片”的陌生电子邮亡,你认为他最好应该( )

A.直接删除      B.打开看看     C.直接转发给同学    D下臷保存

(二)阅读程序写结果。
1、

#include <iostream>
using namespace std;
int main()
{int n, t,ans;n=l;t=2;ans=0;do{n*=t;ans+=n;}while(n<=le+3);cout << ans << endl;return 0;
}

n,t,ans输出:__________
2、

#include <iostream>
using namespace std;
int main()
{long long n, ans=0, k=1;cin>>n;do
{ans+=2;n-=k;k+=10*ans;}while(k<=n);cout << ans;return 0;
}

输入:100
n,ans,k输出:_________________
3、

#include <iostream>
using namespace std;
int main()
{int m, sum=0;cin>>m;do{sum=sum*10+m%10;m/=10;}wile(m!=0);cout <<sum <<endl;
return 0;
}

输入:123
m,sum输出:_____________
(三)完善程序。
1、用另一种方法算一算观众可听到多少声掌声(时间为0秒时,每人同时拍了1次手,所以狐狸老师拍完10次手用了9秒,尼克用了18秒,格莱尔用了36秒)

#include <iostream>
using namespace std;
int main()
{int ans=10, time=10;bool flag=0;do{flag=0;if(time<=18&&time%2==0)flag=1;if(time<=36&&time%4==0)flag=1;if(flag)ans++;_____________;}while(time<=36);
cout<<_______<<endl;
return 0;
}

2、尼克和格莱尔玩报数游戏,尼克按1x报数,格莱尔按1y报数。两人同时开始,并以同样的速度报数,当两人都报了m个数时,统计出两人同时报相同数的次数。

#include <iostream>
using namespace std;
int main()
{int n, nike, glair, num=0;int x, y, m;cout<<"m=";cin>>m;cout <<"x,y=";______________;nike=glair=0:for(n=1;n<=m;n++){______________;if(nike>x)nike=1:glair++;if(glair>y)glair=1;if(nike==glair) num++;}cout<<______<<endl;return 0;
}

3、把3.14159四舍五入保留n位小数(1≤n≤5).如n=1时输出3.1;n=4时输出3.1416。

#include <iostream>
using namespace std;
int main()
{double x, y;int n, m=1;x=3.14159;cout<<"n="do{___________;}while(n<1||n>5);for(int i=1;i<=n:1++)_________________;y=(int)(x*m+0.5);y=y/mcout<<y<< endl;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/879131.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

智能编码在前端研发的创新应用

今天主要想分享一些关于大模型如何协助我们进行前端编码的实践。首先,让我们以一个前端开发的实例开始。通常,当需要实现一个新的前端功能时,我们会收到相关的背景和需求描述。一、前端开发实例 今天主要想分享一些关于大模型如何协助我们进行前端编码的实践。首先,让我们以…

16C++循环结构-(do-while循环)1

1、do-while 语句; 2、各数位之和; 3、纯小数变整数; 4、数学计算一、do-while 语句 问题:每次测试后狐狸老师总会把成绩输入计算机,进行处理分析。但输入时有时会出错,如当满分为100分时,输入小于0或大于100的数,表示输入有误。试编一程序,输入某一位同学成绩时,自动检查…

MyBatis之日志记录

在mybatis的配置文件中加上1 <settings> 2 <setting name="logImpl" value="STDOUT_LOGGING"/> 3 </settings> 这里value的配置还有很多

杭州开盘数据恢复之希捷移动硬盘突发损坏通电咯吱咯吱敲盘异响

这是一块常见的希捷1T移动硬盘,用户描述说是突然读取异常,呈未响应状态,后来就无法识别了,并发出了嘎嘎的异响声。在当地电脑店检测,判断是磁头坏了,但由于异响声比较大,工程师感觉损坏严重,盘片有划伤,没有太大把握,不敢贸然的去开盘恢复,建议去找更专业的数据恢复…

SAP ABAP 中等待 loading 状态指示函数 SAPGUI_PROGRESS_INDICATOR

函数 SAPGUI_PROGRESS_INDICATOR 用这个函数即可实现左下角图标

Node.js 与 PostgreSQL 集成:深入 pg 模块的应用与实践

title: Node.js 与 PostgreSQL 集成:深入 pg 模块的应用与实践 date: 2025/2/5 updated: 2025/2/5 author: cmdragon excerpt: 随着 JavaScript 在服务器端编程中的兴起,Node.js 已成为构建高性能网络应用程序的重要平台。PostgreSQL 则以其强大的特性以及对复杂数据结构的…

基于阿里云百炼平台RAG智能体应用实现一个简单的Harmony OS开发者文档助手应用

虽然大模型的应用为我们查找资料,学习新的知识提供了很大的帮助。但是通用大模型的能力和知识是有限的,对于一些新的技术以及特定应用的技术领域,通用的模型由于缺乏专业的训练材料,因此往往不能很好地回答用户的特定问题。 创建RAG智能体 对于初步接触且需要快速落地,本项…

【杂学】知识蒸馏原理解读

知识蒸馏技术(Knowledge Distillation,KD)原理解读参考:https://zhuanlan.zhihu.com/p/102038521 ;https://intellabs.github.io/distiller/knowledge_distillation.html 论文:https://arxiv.org/pdf/1503.02531背景 首先我们先了解一下蒸馏的定义:蒸馏(distillation)…

多光谱烟火识别摄像机

多光谱烟火识别摄像机能够捕捉不同波长范围内的信息,包括可见光。当环境中出现烟雾或明亮的火焰时,这些摄像机会实时收集相关数据,并通过图像处理算法进行分析。具体来说,当摄像机检测到异常温度升高或特定波长下的光谱变化时,它将自动触发警报,并将信息发送至控制系统。…

车间生产区域员工闯入报警系统

车间生产区域员工闯入报警系统基于YOLOX+RNN深度学习算法,车间生产区域员工闯入报警系统通过安装在车间生产区域的监测摄像机,实时采集图像信息。这些摄像机覆盖了整个机器人生产区域的周界,形成了一道无形的安全防线。当有人员进入监测范围内时,系统设备会现场联动语音告警…

铁路位移检测识别摄像机

铁路位移检测识别摄像机通过安装在关键位置(如桥梁、隧道及曲线段等),利用高清晰度镜头拍摄轨道图像,并将其传输至中央控制系统。系统采用计算机视觉算法,对图像进行分析,以识别轨道是否存在异常位移或变形。同时,通过与历史数据对比,可以判断出变形趋势,为后续维护提…

使用ollama运行deepseek-r1模型

Ollama是一个功能强大的本地大语言模型的运行框架,用户可以非常简单地运行使用各种LLM。最最主要的是它完全免费,本地可以离线运行; 1. 最简单的安装:curl https://ollama.ai/install.sh | sh 2.也可以访问ollam.com直接点击下载安装3. 安装完成之后,ollama list一下可以看…