#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://www.pswp.cn/pingmian/95980.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/95980.shtml

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

相关文章

daily notes[16]

文章目录意大利语单词 **“bello”**一、核心含义二、变形规则&#xff1a;最重要的部分1. 当 “bello” 位于 **名词前面** 时2. 当 “bello” 位于 **名词后面** 或 **动词后面** 时三、用法总结与对比四、其他用法和常见表达references意大利语单词 “bello” 融合了 指示形…

【知识库】计算机二级python操作题(二)

文章目录基本操作题1基本操作题2基本操作题3简单应用题1简单应用题2综合应用题1基本操作题1考生文件夹下存在一个文件PY101.py&#xff0c;请写代码替换横线&#xff0c;不修改其他代码&#xff0c;实现以下功能&#xff0c;随机选择一个手机品牌屏幕输出。 # 请在...处使用一行…

Nginx 服务用户与防盗链配置

目录 Nginx 服务用户与防盗链配置 1. 隐藏版本号 1.1 配置方法 1.2 生效与验证 2. 修改当前程序账号 2.1 操作步骤 3. 缓存时间 3.1 配置方法 3.2 说明 4. 日志分割 4.1 实现方式&#xff08;脚本自动分割&#xff09; 5. 连接超时时间 5.1 核心超时指令&#xff0…

域格4G模块通信协议之HTTP(三):下载大文件的两种方式

域格ASR系列模块支持HTTP下载大文件&#xff0c;本文将提供两种方式。一、直接通过URC上报数据基础操作核心指令说明配置说明响应说明应用示例注意点二、HTTP Range分段下载核心指令说明注意点一、直接通过URC上报数据 若文件体积适中&#xff0c;且需要 MCU 即时处理数据&…

Android 图片 OOM 防护机制设计:大图加载、内存复用与多级缓存

1. 为什么图片加载总让 Android 开发抓狂? 图片是 Android 应用中不可或缺的元素,从用户头像到高清壁纸,从商品详情页到动态表情包,图片无处不在。然而,图片加载是内存管理的雷区,稍不留神就可能触发臭名昭著的 OutOfMemoryError(OOM)。为啥图片这么“吃内存”?原因很…

9月9日

TCP 服务器端#include <myhead.h> #define SER_PORT 8888 //服务器端口号 #define SER_IP "192.168.108.179" //服务器IP地址 int main(int argc, const char *argv[]) {//创建一个用于连接的套接字文件描述符int sfd socket(AF_INET, SOCK_STRE…

Docker生产部署

目录 一、准备工作&#xff1a;理解 Docker 与 Spring Boot 的关系 1. Docker 是什么&#xff1f; 2. Spring Boot 为什么适合 Docker&#xff1f; 二、编写Dockerfile 三、配置管理 挂载外部配置文件 四、用 docker-compose 编排多服务 一、准备工作&#xff1a;理解 Do…

ARM 基础(3)

ARM汇编与C语言函数的相互调用及参数传递汇编调用C函数参数传递规则 前4个参数通过寄存器 R0-R3 传递&#xff0c;超出部分从右向左压栈。32位返回值存于 R0&#xff0c;64位整数用 R0 和 R1&#xff0c;浮点数通过 S0/D0 返回。示例&#xff1a;ARM汇编调用C函数.global _star…

OpenCV计算机视觉笔记合集

参考课程&#xff1a; 【黑马程序员 OpenCV入门教程】 [https://www.bilibili.com/video/BV1Fo4y1d7JL] ZZHow(ZZHow1024) 学习路线 基本的图像处理方法&#xff1a;几何变换&#xff0c;形态学变换&#xff0c;图像平滑&#xff0c;直方图操作&#xff0c;模板匹配&#…

Mybatis-12 第三方缓存-EhCache

配置文档 Ehcache配置文件ehcache.xml Java Ehcache缓存的timeToIdleSeconds和timeToLiveSeconds区别 基本介绍 1.EhCache是一个纯Java的缓存框架&#xff0c;具有快速、精干等特点 2.MyBatis有自己默认的二级缓存&#xff08;前面我们已经使用过了&#xff09;&#xff0c;…

元器件--电容器

文章目录一、技术理论  1、电容定义  2、定义式  3、单位换算  4、电容作用  5、电容特性二、组成结构  1、极板&#xff08;电极&#xff09;​​  ​​2、介质&#xff08;绝缘层&#xff09;​​  3、引线&#xff08;电极引出端&#xff09;​​  4、封装…

【Leetcode hot 100】146.LRU缓存

问题链接 146.LRU缓存 问题描述 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类&#xff1a; LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存int get(int key) 如果关键字 key 存在于缓存中&#xff0c;则返回关…

MySQL超大数据量查询与删除优化

引言 在处理TB级数据时&#xff0c;传统SQL操作可能导致性能崩溃。本文揭示MySQL超大数据量场景下的核心优化策略&#xff0c;通过生产环境案例展示如何将亿级数据删除耗时从8小时压缩至8分钟&#xff0c;并附完整监控方案与容灾措施。 深度剖析海量数据操作痛点 1. 传统删除操…

【内存管理】常用的页表映射函数

1、pgd_addr_end 根据当前虚拟地址 addr 和目标结束地址 end&#xff0c;计算当前 PGD 项 能够覆盖的最大虚拟地址范围的结束地址 next。 如果 addr 和 end 跨越多个 PGD 项&#xff08;即 end 超出当前 PGD 项的地址范围&#xff09;&#xff0c;则返回当前 PGD 项的地址边界。…

XR数字融合工作站赋能新能源汽车专业建设的创新路径

XR数字融合工作站作为集PC、VR、MR技术于一体的软硬件集成平台&#xff0c;凭借其多维交互、虚实融合、智能管理等特性&#xff0c;为新能源汽车专业的教学改革与创新提供了全新解决方案。一、教学场景革新&#xff1a;构建沉浸式、互动化学习环境XR数字融合工作站通过多形态拼…

C语言通用链表终章:优雅的收尾 - 清空与销毁

各类资料学习下载合集 ​https://pan.quark.cn/s/8c91ccb5a474​ 经过前面的学习,我们已经从零构建了一个功能强大的通用链表,它能自如地进行节点的插入和删除。我们的“数据火车”已经可以驰骋在内存的世界里。然而,旅途终有终点,当火车完成任务后,如何安全、彻底地让…

MATLAB R2025a安装配置及使用教程(超详细保姆级教程)

文章目录前言什么是MATLAB&#xff1f;了解这款数据分析利器matlab安装前准备工作MATLAB R2025a下载完整MATLAB R2025a安装步骤MATLAB进阶应用技巧前言 全网最新最全的MATLAB R2025a安装教程来了&#xff01;2025年版本完整图文指南&#xff0c;包含软件下载、详细安装、密钥激…

在Mybatis plus中如何使用自定义Sql

在演示UpdateWrapper的案例中&#xff0c;我们在代码中编写了更新的SQL语句&#xff1a;Test void testUpadateWrapper(){List<Long> ids List.of(1L,2L,4L);//生成SQLUpadateWrapper<User> wrapper new UpdateWrapper<User> ().setSql("balance balan…

Deepoc科技之暖:智能助盲设备如何为视障家人点亮生活

作为一名视障人士的家属&#xff0c;我们或许都经历过这样的时刻&#xff1a;看着亲人在书架前摸索&#xff0c;却无法独自获取文字信息&#xff1b;担心他们外出时遇到障碍物或交通危险&#xff1b;心疼他们因找不到日常物品而不得不一次次求助。这些细微的日常困境&#xff0…