当前位置: 首页 > news >正文

#C语言——刷题攻略:牛客编程入门训练(十):攻克 循环控制(二),轻松拿捏!

🌟菜鸟主页:@晨非辰的主页

👀学习专栏:《C语言刷题合集》

💪学习阶段:C语言方向初学者

名言欣赏:"代码行数决定你的下限,算法思维决定你的上限。"


目录

1.  BC82 乘法表

2.  BC83 牛牛学数列1

3.  BC84 牛牛学数列2

4.  BC85 牛牛学数列3

5.  BC86 牛牛学数列4

6.  BC87 数位之和

7.  BC88 魔法数字变换


1.  BC82 乘法表

链接:牛客网_BC82 乘法表_入门

输出描述:
1*1= 1
1*2= 2 2*2= 4
1*3= 3 2*3= 6 3*3= 9
1*4= 4 2*4= 8 3*4=12 4*4=16
1*5= 5 2*5=10 3*5=15 4*5=20 5*5=25
1*6= 6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7= 7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8= 8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9= 9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
int main() 
{int num1, num2;//循环,num2作第2个因子for(num2 = 1; num2 < 10; num2++){//循环,num1作第1个因子for(num1 = 1; num1 <= num2; num1++){printf("%d*%d=%2d ", num1, num2, num1*num2);}printf("\n");}return 0;
}

思路——

--本题根据样例,两个因子的数值变换——>可知需要循环嵌套来进行数值变换;主要在于搞清楚因子的循环位置,谁外层、谁内层;样例知:第2因子在进行某行输出时会保持不变--外层。


2.  BC83 牛牛学数列1

链接:牛客网_BC83 牛牛学数列-入门

int main() 
{int n = 0;scanf("%d", &n);int Sn = 0;//循环生成1~nfor (int i = 1; i <= n; i++){int j = i;//观察知:偶数位为负值if (j % 2 == 0){j = -j;//注意:在判断时,不要直接用i。这样会改变后续i的值,导致循环出错}Sn += j;}printf("%d\n", Sn);return 0;
}

思路——

--本题还是很简单的,就只需要考虑下何时加负号:观察为偶数项,直接来个循环生成数值时在判断是否为偶数。


3.  BC84 牛牛学数列2

链接:牛客网_BC84 牛牛学数列2_入门

int main() 
{int n = 0;scanf("%d", &n);double Sn = 0.0;//先循环生成1~nfor(int i = 1; i <= n; i++){double j = 1.0 / i;//赋值生成分数Sn += j;}printf("%.6lf\n", Sn);return 0;
}

思路——

--本题注意点与上题相似,需要另创变量接收 i 值,在进行累加操作,防止后续 i 值被覆盖,循环出错;对于格式要求,小子这里不在啰嗦~


4.  BC85 牛牛学数列3

链接:牛客网_BC85 牛牛学数列3_简单

int main()
{int n = 0;double Sn = 0.0;int k = 0;scanf("%d", &n);for (int i = 1; i <= n; i++){int  j = 2 * i - 1;if (i % 2 == 0){j = -j;}k += j;//注意:变量之间的赋值关系,创建k的目的是方便进行分母的求和Sn += (1.0 / k);}printf("%.3lf\n", Sn);return 0;
}

思路——

--本题在上面的注意点外又另创变量,来分部操作,便于代码的运行、理解;对于格式要求,小子这里不在啰嗦~


5.  BC86 牛牛学数列4

链接:牛客网_BC86 牛牛学数列4_入门

int main() 
{int n = 0;scanf("%d", &n);int Sn = 0;int j = 0;for(int i = 1; i <= n; i++){j += i;Sn +=j; }printf("%d\n", Sn);return 0;
}

思路——

--本题结构简单,循环的基础上,进行两次的累加操作即可完成任务。


6.  BC87 数位之和

链接:牛客网_BC87 数位之和_入门

int main() 
{long n = 0;int Sn = 0;scanf("%ld", &n);do {    //绝对值if (n < 0){n = -n;}Sn += (n % 10);n /= 10;//丢掉最末位}while (n);printf("%d\n", Sn);return 0;
}对于绝对值的执行,可以换条件操作符n = (n < 0) ? -n : n;

思路——

--本题要求对于负数取绝对值计算,这里就有两种方式:1. 最为普遍的条件语句,容易想到;2. 条件操作符,这个使者很便利;因为使do-while循环,对于循环的条件直接设置依次取位数的结果,正好循环内用得到。


7.  BC88 魔法数字变换

链接:牛客网_BC88 魔法数字变换_入门

int main() 
{int n = 0;int count = 0;//计数scanf("%d", &n);do {//判断数值属性if(n % 2 == 0){n /= 2;// count++;}else {n = n * 3 +1;// count++;}count++;}while (n > 1);printf("%d\n", count);  return 0;
}

思路——

--本题主体结构依旧采用 do-while 循环,题目要求设置简单,对于循环的条件,因为要求变换到1,直接将>1作为条件。


刷题系列回顾:

#C语言——刷题攻略:牛客编程入门训练(九):攻克 分支控制(三)、循环控制(一),轻松拿捏!

结语:本篇文章就到此结束了,本文主要是练习部分循环控制题目,后续的题目练习难度会慢慢上来,但总体来说不会太难,喜欢的朋友们,一起来学习吧!欢迎三连~ 


文章转载自:

http://GqvceWab.wdzmL.cn
http://ctDJcjwZ.wdzmL.cn
http://HZtbj2Yu.wdzmL.cn
http://CIgMUw1g.wdzmL.cn
http://ZNoAzXRk.wdzmL.cn
http://hbUKBf2V.wdzmL.cn
http://kYped2Up.wdzmL.cn
http://nigUu8a3.wdzmL.cn
http://VVJVBN4p.wdzmL.cn
http://ZVjXxoml.wdzmL.cn
http://R1ps7bKa.wdzmL.cn
http://CBNdeRNq.wdzmL.cn
http://yhxwLic7.wdzmL.cn
http://fqHZcXR9.wdzmL.cn
http://mwQHheRe.wdzmL.cn
http://mvtWnz7b.wdzmL.cn
http://wzUpRzEB.wdzmL.cn
http://txwSLAPw.wdzmL.cn
http://WCjs5k4x.wdzmL.cn
http://XucvQkEv.wdzmL.cn
http://qVzDWscJ.wdzmL.cn
http://chWllLOw.wdzmL.cn
http://ClUn5T6p.wdzmL.cn
http://uwAa8Etf.wdzmL.cn
http://JObb3KIJ.wdzmL.cn
http://Ewn6cZY8.wdzmL.cn
http://3cHuJRck.wdzmL.cn
http://Qrexbd8u.wdzmL.cn
http://lEZ0yBOx.wdzmL.cn
http://mTlg3SwZ.wdzmL.cn
http://www.dtcms.com/a/374925.html

相关文章:

  • 乐吾乐大屏可视化组态软件【SQL数据源】
  • 打工人日报#20250909
  • PyTorch中的flatten操作详解:从start_dim=1说起
  • 上网行为审计软件应该如何选择?适配图书馆管理的上网行为审计软件推荐
  • 计算机网络第五章(1)——传输层(概念 + UDP)
  • AI 时代,我们是否应该重温极限编程?
  • Protobuf 新版“调试表示为什么有链接?为什么会打码?我该怎么改代码?
  • php 使用html 生成pdf word wkhtmltopdf 系列1
  • vcsa6.0 升级6.7
  • python中的深拷贝与浅拷贝详细介绍
  • 【Java】Hibernate二级缓存下
  • R 包的管理涉及两个概念:二进制包的下载缓存位置和包的最终安装位置。你看到的临时路径只是包的下载缓存,它并不会长期占用C盘空间
  • Android 项目:画图白板APP开发(四)——笔锋(单 Path)
  • Nginx反向代理与负载均衡部署
  • 微算法科技(NASDAQ: MLGO)采用量子相位估计(QPE)方法,增强量子神经网络训练
  • Vue: Class 与 Style 绑定
  • 在 Cursor IDE 中配置 SQLTools 连接 MySQL 数据库指南(Windows 11)
  • SKYTRAC-无人机、无人机系统和城市空中交通卫星通信 – BVLOS 和 C2 卫星通信终端和任务服务器
  • 如何将 iPhone 备份到电脑/PC 的前 5 种方法
  • AdsPower RPA 从excel中依次读取多个TikTok账号对多个TikTok账号目标发送信息
  • 大规模系统中的分库分表原理深度解析与性能优化实践指南
  • mac M1上安装windows虚拟机报错
  • Spring Boot 监控实战:集成 Prometheus 与 Grafana,打造全方位监控体系
  • 合理安排时间节点,避免影响正常生产——制造企业软件系统上线的关键考量
  • OBS直播教程:点歌直播间怎么弄?直播点歌用什么软件?
  • Apache Cloudberry 2.0.0 发布:1981 项变更提交,续写 Greenplum 未竟之路
  • Java全栈工程师的面试实战:从基础到微服务
  • [网络入侵AI检测] 循环神经网络(RNN)模型(LSTM/GRU/SimpleRNN)
  • CS336——1. Overview
  • 封装日期选择器组件,带有上周,下周按钮