16. 《C语言》——【牛客网BC124 —— BC130题目讲解】
亲爱的读者,大家好!我是一名正在学习编程的高校生。在这个博客里,我将和大家一起探讨编程技巧、分享实用工具,并交流学习心得。希望通过我的博客,你能学到有用的知识,提高自己的技能,成为一名优秀的程序员。如果你有任何疑问或建议,请随时在评论区留言,让我们一起成长进步!现在,让我们开始这场知识之旅吧!
🌏个人主页: FEN03
📑收入专栏: C语言
文章目录
- 📚前言
- 🐄牛客网题目
- 🥩BC124 序列中删除指定数字
- 🥩BC125 序列中整数去重
- 🥩BC126 小乐乐查找数字
- 🥩BC127 筛选法求素数
- 🥩BC128 班级成绩输入输出
- 🥩BC129 矩阵元素定位
- 🥩BC130 最高身高
- 👋👋🏻👋🏼结束语
📚前言
本章主要内容为,讲解牛客网BC124 ~ BC130题目,如有错误❌,还请指出,本人会虚心接受,感谢~🌹
🐄牛客网题目
🥩BC124 序列中删除指定数字
题目要求:
描述
有一个整数序列(可能有重复的整数),现删除指定的某一个整数,输出删除指定数字之后的序列,序列中未被删除数字的前后位置没有发生改变。
数据范围:序列长度和序列中的值都满足 1≤n≤50
输入描述:
第一行输入一个整数(0≤N≤50)。
第二行输入N个整数,输入用空格分隔的N个整数。
第三行输入想要进行删除的一个整数。
输出描述:
输出为一行,删除指定数字之后的序列。
示例1
⬇️⬇️⬇️讲解:
代码如下:
//BC124 序列中删除指定数字
#include<stdio.h>
void S_arr(int arr[], int n)
{//对数组,输入值for (int i = 0; i < n; i++){scanf("%d", &arr[i]);}
}void Print_arr(int arr[], int n, int k)
{//对数组进行遍历,如果不等于k,就打印for (int i = 0; i < n; i++){if (arr[i] != k){printf("%d ", arr[i]); }}
}int main()
{int n = 0; int arr[100] = { 0 };int k = 0;scanf("%d", &n); S_arr(arr, n); //输入数组scanf("%d", &k); Print_arr(arr, n, k); //判断数组并且打印return 0;
}
运行结果…
🤔🤔分析:
- 按照题目要求, 第一行需要输入一个整数, 则可以创建一个整型变量; 第二行输入N个整数, 输入用空格分隔, 我们可以创建一个arr整型数组, 把N个整数存放在arr里; 第三行是输入要删除的一个整数, 我们直接创建一个整型变量即可。
- 为了完成这一题, 我们可以分为2个函数即可。
- S_arr(arr, n); 实现的是遍历数组,对数组输入值。
- Print_arr(arr, n, k); 完成的是在数组中查找要删除的值,只要不等于删除值的都打印出来。
🥩BC125 序列中整数去重
题目要求:
描述
输入n个整数的序列,要求对这个序列进行去重操作。所谓去重,是指对这个序列中每个重复出现的整数,只保留该数第一次出现的位置,删除其余位置。
输入描述:
输入包含两行,第一行包含一个正整数n(1 ≤ n ≤ 1000),表示第二行序列中数字的个数;第二行包含n个整数(范围1~5000),用空格分隔。
输出描述:
输出为一行,按照输入的顺序输出去重之后的数字,用空格分隔。
示例1
⬇️⬇️⬇️讲解:
代码如下:
//BC125 序列中整数去重
#include<stdio.h>
void Input_arr(int arr[], int n)
{for (int i = 0; i < n; i++){scanf("%d", &arr[i]); }
}void Jud_arr(int arr[], int n)
{int flag = 0; for (int i = 0; i < n; i++){//比较除了本身外其他的元素。for (int j = i+1; j < n; j++){if (arr[i] == arr[j]){arr[j] = -1;}}}
}void Print(int arr[], int n)
{for (int i = 0; i < n; i++){if (arr[i] != -1) {printf("%d ", arr[i]); } }
}int main()
{int n = 0; int arr[1500] = { 0 }; scanf("%d", &n);Input_arr(arr, n); //数组输入Jud_arr(arr, n); //对数组元素判断Print(arr, n); //打印数组元素return 0;
}
运行结果…
🤔🤔分析:
- 在题目要求中,输入包含2行,第一行是输入一个正整数那么我们可以直接创建一个整型变量,第二行是包含着n个整数, 那么我们需要创建一个arr整型数组来接收;
输出为去除重复值之后,数组的元素。 - 为了完成, 我们分装为3个函数。
- Input_arr(arr, n); 完成的是遍历数组,给数组输入值。
- Jud_arr(arr, n); 完成的是每一个数组元素,除了自身外,与其他元素进行比较, 如果2个元素相等,那么把该元素设置为-1。
- Print(arr, n); 完成的是对去除掉重复值后,数组元素的打印。
🥩BC126 小乐乐查找数字
题目要求:
描述
给定n个整数和一个整数x,小乐乐想从n个整数中判断x出现几次,请编程帮他实现。
输入描述:
共3行
第一行,一个整数,表示n(1 <= n <= 100)。
第二行,共输入n个整数,两个整数之间用空格分隔。
第三行,输入一个整数,表示要查找的整数x。
输出描述:
一行,表示整数x出现的次数。
示例1
⬇️⬇️⬇️讲解:
代码如下:
//BC126 小乐乐查找数字
#include<stdio.h>
void Input_arr(int arr[], int n)
{for (int i = 0; i < n; i++){scanf("%d", &arr[i]); }
}void Jud_arr(int arr[], int n, int k)
{int count = 0;//创建一个计数器 for (int i = 0; i < n; i++){//遍历arr中的元素,如果元素与k相等,计数器++if (arr[i] == k)count++; }printf("%d\n", count);
}int main()
{int n = 0;int arr[1000] = { 0 };int k = 0; scanf("%d", &n); Input_arr(arr, n); //输入数组 scanf("%d", &k); Jud_arr(arr, n, k); //判断数组中的元素return 0;
}
运行结果…
🤔🤔🤔分析:
- 题目要求, 输入3行,第一行输入一个整数, 我们可以创建一个整型变量; 第二行一共输入n个整数, 那么为了存储n个整数,我们可以创建一个arr整型数组; 第三行输入一个要查找的整型值,我们可以创建一个整型变量。
- 为了解决该题,我们可以分装成2个函数。
- Input_arr(arr, n); 该函数完成的是遍历数组,给数组输入值。
- Jud_arr(arr, n, k); 该函数完成的是在数组元素中, 对与查找值相同的元素进行统计,最终输出即可。
🥩BC127 筛选法求素数
题目要求:
描述
用筛选法求n以内的素数。筛选法求解过程为:将2~n之间的正整数放在数组内存储,将数组中2之后的所有能被2整除的数清0,再将3之后的所有能被3整除的数清0 ,以此类推,直到n为止。数组中不为0 的数即为素数。
输入描述:
多组输入,每行输入一个正整数(不大于100)。
输出描述:
针对每行输入的整数n,输出两行,第一行,输出n之内(包括n)的素数,用空格分隔,
第二行,输出数组中2之后被清0 的个数。每行输出后换行。
示例1
⬇️⬇️⬇️讲解:
//BC127 筛选法求素数
#include<stdio.h>
int main()
{int n = 0;int count = 0; while (scanf("%d", &n) != EOF){int i = 0; for (i = 2; i < n; i++){int j = 0; for (j = 2; j < i; j++) {if (i % j == 0)break; }if (i == j){printf("%d ", i); count++; //统计素数}}printf("\n"); printf("%d\n", n - count - 1); }return 0;
}
运行结果…
🤔🤔分析:
- 给定一个数n,在2~n之间的正整数,如果是素数,就统计起来并且打印出来,然后用n - 统计值 - 1,输出统计值即可。
🥩BC128 班级成绩输入输出
题目要求:
描述
输入一个班级5个学生各5科成绩,输出5个学生各5科成绩及总分。
输入描述:
五行,每行输入一个学生各5科成绩(浮点数表示,范围0.0~100.0),用空格分隔。
输出描述:
五行,按照输入顺序每行输出一个学生的5科成绩及总分(小数点保留1位),用空格分隔。
示例1
⬇️⬇️⬇️讲解:
代码如下:
//BC128 班级成绩输入输出
#include<stdio.h>
int main()
{double arr[5][5] = { 0 };for (int i = 0; i < 5; i++){for (int j = 0; j < 5; j++){scanf("%lf", &arr[i][j]); }}for (int i = 0; i < 5; i++){double sum = 0.0;for (int j = 0; j < 5; j++) {printf("%.1lf ", arr[i][j]); sum += arr[i][j]; }printf("%.1lf\n", sum); }return 0;
}
运行结果…
🤔🤔🤔分析:
- 题目最终考察的就是二维数组的输入和输出,以及如何限制小数点位。
- 我们主要看输出,每输出一行,都会把总分给输出,那么需要一个变量sum来统计这一行的总分。当到了下一行sum的总值会初始化为0,最终不断的重复,直到循环结束。
- 在%后加一个小数点,就可以控制小数位的输出。
🥩BC129 矩阵元素定位
题目要求:
描述
KiKi得到了一个n行m列的矩阵,现在他想知道第x行第y列的值是多少,请你帮助他完成这个任务。
数据范围:1≤n,m≤5 ,矩阵中的值满足 1≤val≤25
输入描述:
第一行包含两个数n和m,表示这个矩阵包含n行m列。从2到n+1行,每行输入m个整数(范围-231~231-1),用空格分隔,共输入n*m个数,表示矩阵中的元素。接下来一行输入x和y,用空格分隔,表示KiKi想得到的元素的位置。(1≤x≤n≤10,1≤y≤m≤10)
输出描述:
一行,输出一个整数值,为KiKi想知道的值。
示例1
⬇️⬇️⬇️讲解:
#include<stdio.h>
void Input_arr(int arr[][100], int n, int m)
{for (int i = 0; i < n; i++){for (int j = 0; j < m; j++){scanf("%d", &arr[i][j]);}}
}int main()
{int n = 0;int m = 0;int x = 0;int y = 0;int arr[100][100] = { 0 };scanf("%d %d", &n, &m);Input_arr(arr, n, m);scanf("%d %d", &x, &y);printf("%d\n", arr[x - 1][y - 1]);return 0;
}
运行结果…
🤔🤔分析:
- 这个题目其实就是在一个二维数组中,输入要找的值对应的下标-1,最终打印出该值即可。
🥩BC130 最高身高
题目要求:
描述
KiKi想从n行m列的方阵队列中找到身高最高的人的位置,请你帮助他完成这个任务。
输入描述:
第一行包含两个整数n和m,表示这个方阵队列包含n行m列。从2到n+1行,每行输入m个整数(范围-231~231-1),用空格分隔,共输入n*m个数,表示方阵中的所有人的身高(保证输入身高都不相同)。(1≤x≤n≤10,1≤y≤m≤10)
输出描述:
一行,输出两个整数,用空格分隔,表示方阵中身高最高的人所在的行号和列号。
示例1
⬇️⬇️⬇️讲解:
代码如下:
//BC130 最高身高
#include<stdio.h>
void Input_arr(int arr[100][100], int n, int m)
{for (int i = 0; i < n; i++){for (int j = 0; j < m; j++){scanf("%d", &arr[i][j]);}}
}void Find_height_arr(int arr[100][100], int n, int m)
{int h = arr[0][0];for (int i = 0; i < n; i++){for (int j = 0; j < m; j++){if (arr[i][j] > h){h = arr[i][j];}}}for (int i = 0; i < n; i++){for (int j = 0; j < m; j++){if (arr[i][j] == h){printf("%d %d\n", i + 1, j + 1);}}}
}int main()
{int n = 0;int m = 0;int arr[100][100] = { 0 };scanf("%d %d", &n, &m);Input_arr(arr, n, m);Find_height_arr(arr, n, m);return 0;
}
运行结果…
🤔🤔分析:
- 创建2个整型变量,是用来控制二维数组的行和列的。随后,Input_arr(arr, n, m); 完成的是对二维数组输入值 。
- Find_height_arr(arr, n, m); 完成的是对二维数组中元素的比较,也就是用打擂台方法,最终最大值给h,随后遍历二维数组中的元素如果等与h就打印出来,并且对应的下标需要+1。
👋👋🏻👋🏼结束语
非常感谢您花时间阅读我的博客,希望我的分享能为您带来收获。如果您对本文有任何想法或疑问,欢迎在评论区留言交流。如果您喜欢我的博客,请继续关注,我会定期更新更多精彩内容。最后,别忘了行动起来的力量,让我们一起实践这些方法,见证自己的成长和进步!
再见,祝您生活愉快!
相关文章:
16. 《C语言》——【牛客网BC124 —— BC130题目讲解】
亲爱的读者,大家好!我是一名正在学习编程的高校生。在这个博客里,我将和大家一起探讨编程技巧、分享实用工具,并交流学习心得。希望通过我的博客,你能学到有用的知识,提高自己的技能,成为一名优…...
Docker 国内镜像源更换
实现 替换docker 镜像源 前提要求 安装 docker docker-compose 参考创建一键更换docker国内镜像源 Docker 镜像代理DaoCloud 镜像站百度云 https://mirror.baidubce.com南京大学镜像站...
python07
__init__.py from . import p1 from . import p2 # 理解:import p2 先导入 p2 文件, 然后该文件的内容全要 from . # # 告诉调用者,哪些文件需要使用 p1.py def sum(a,b):print(a b) p2.py def max(a,b):if a > b:print(a)else:pri…...
【CTS】android CTS测试
android CTS测试 1.硬件准备2. 软件准备3. 下载 CTS3.1 cts3.2 解压 CTS 包: 4 配置adb fastboot5 检查 Java 版本6 安装aapt26.1 下载并安装 Android SDK6.2 找到 aapt2 工具6.3 配置环境变量 7. 准备测试设备8. 运行 CTS 测试8.1 启动 CTS: 9. 查看测试…...
【雷丰阳-谷粒商城 】【分布式基础篇-全栈开发篇】【08】【商品服务】Object划分_批量删除
持续学习&持续更新中… 守破离 【雷丰阳-谷粒商城 】【分布式基础篇-全栈开发篇】【08】【商品服务】Object划分_批量删除 Object划分批量删除/添加参考 Object划分 数据库中对于一张表的数据,由于拥有隐私字段、多余字段、字段过少等原因,不应该直…...
JAVA开发 PDF文件生成表格,表格根据内容自动调整高度
1、展示效果 2、相关功能实现 JAVA开发 使用Apache PDFBox库生成PDF文件,绘制表格 3、实现代码 import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.PDPage; import org.apache.pdfbox.pdmodel.PDPageContentStream; import org.ap…...
OSINT技术情报精选·2024年6月第1周
OSINT技术情报精选2024年6月第1周 2024.6.11版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 1、经合组织:《2024数字经济展望:第1卷,拥抱技术前沿》 经合组织近日发布《2024数字经济展望》报告第一卷,…...
惊艳的短视频:成都科成博通文化传媒公司
惊艳的短视频:瞬间之美,震撼心灵 在数字化时代,短视频以其短小精悍、内容丰富的特点,迅速占领了我们的屏幕和时间。而在这个浩如烟海的视频海洋中,总有一些短视频能够脱颖而出,以其惊艳的视觉效果、深刻的…...
消费增值模式引领业绩飙升与用户活跃
大家好,我是吴军,致力于为您揭示私域电商领域的独特魅力与机遇。 今日,我很高兴与大家分享一个激动人心的成功案例。我们的客户在短短一个月的时间里,业绩就飙升至上百万级别,其用户活跃度更是居高不下,日…...
二叉树从入门到AC(3)完全二叉树与堆
完全二叉树与堆 前言优先队列:堆向下调整维护堆向上调整维护堆堆的作用 前言 本文算是补充之前的系列,在前文中,讲了二叉树的基本结构与应用 二叉树从入门到AC(1)构建和前中后序遍历 二叉树从入门到AC(2&a…...
AI写作:如何让创作过程更流畅?
写作这件事一直让我们从小学生头痛到打工人,初高中时期800字的作文让我们焦头烂额,一篇作文里用尽了口水话,拼拼凑凑才勉强完成。 大学时期以为可以轻松顺利毕业,结果毕业前的最后一道坎拦住我们的是毕业论文,苦战几个…...
2024中国海洋装备展暨航海装备大会(福州海峡国际会展中心)
关于邀请参加2024中国海洋装备博览会的函 为加快推动海洋强国建设。在福建省人民政府的大力支持下,第二届中国海洋装备博览会将于2024年11月15-18日在福州举办。 博览会将进一步聚焦产业链和供应链协同创新,着力推动现代海洋产业体系建设,促进海洋科技…...
CyberDAO:引领Web3时代的DAO社区文化
致力于Web3研究和孵化 CyberDAO自成立以来,致力于推动Web3研究和孵化,吸引了来自技术、资本、商业、应用与流量等领域的上千名热忱成员。我们为社区提供多元的Web3产品和商业机会,触达行业核心,助力成员捕获Web3.0时代的红利。 目…...
测试面试点
在面试PC端测试人员时,你可以提出以下具体问题来深入了解候选人的技能、经验和思维方式: 1. 技术能力与基础知识 你能解释一下什么是黑盒测试和白盒测试吗?你在过去的工作中是如何应用这两种测试方法的? 答案:黑盒测…...
Nginx配置详细解释:(4)高级配置
目录 1.网页的状态页 2.Nginx第三方模块(echo) 3.变量 4.自定义访问日志 5.Nginx压缩功能 6.https功能 7.自定义图标 Nginx除了一些基本配置外,还有一些高级配置,如网页的状态,第三方模块需要另外安装,支持变量,…...
OceanBase 4.3 特性解析:列存技术
在涉及大规模数据的复杂分析或即时查询时,列式存储是支撑业务负载的关键技术之一。相较于传统的行式存储,列式存储采用了不同的数据文件组织方式,它将表中的数据以列为单位进行物理排列。这种存储模式允许在分析过程中,查询计算仅…...
ARM32开发--PWM与通用定时器
知不足而奋进望远山而前行 目录 文章目录 前言 学习目标 学习内容 PWM pwm原理 需求 开发流程 初始化PWM PWM占空比控制 main函数修改duty 输出通道 关心的内容 重要的关键词 周期 分频 占空比 总结 前言 在微控制器开发中,理解和掌握PWM&#x…...
debugger(七):栈帧(backtrace)
〇、前言 在前面已经详细得介绍了栈帧,这里实现 backtrace。 一、backtrace 思路是遍历 stack,搜索 stack pointer,逐个打印栈帧信息,一直打印到 main 函数。 void Debugger::print_backtrace() {auto output_frame [frame_n…...
kafka-重试和死信主题(SpringBoot整合Kafka)
文章目录 1、重试和死信主题2、死信队列3、代码演示3.1、appication.yml3.2、引入spring-kafka依赖3.3、创建SpringBoot启动类3.4、创建生产者发送消息3.5、创建消费者消费消息 1、重试和死信主题 kafka默认支持重试和死信主题 重试主题:当消费者消费消息异常时&…...
electron-Vue: Module parse failed: Unexpected character ‘ ‘
electron-Vue项目中,我自己写了一个node的C扩展(xx.node),然后在.vue文件里import它,然后运行npm run electron:serve,报错如下: electron-Vue打包默认使用webpack,默认情况下webpack没…...
贪心算法-数组跳跃游戏(mid)
目录 一、问题描述 二、解题思路 1.回溯法 2.贪心算法 三、代码实现 1.回溯法实现 2.贪心算法实现 四、刷题链接 一、问题描述 二、解题思路 1.回溯法 使用递归的方式,找到所有可能的走步方式,并记录递归深度(也就是走步次数&#x…...
C++经典150题
经典150题 数组/字符串 文章目录 经典150题数组/字符串88. 合并两个有序数组27.移除元素26.删除有序数组中的重复项80.删除有序数组重点重复项II169.多数元素189.轮转数组121.买卖股票的最佳时机123.买卖股票的最佳时机 III55.跳跃游戏45.跳跃游戏II 88. 合并两个有序数组 给…...
超详解——Python 序列详解——基础篇
目录 1. 序列的概念 字符串(String) 列表(List) 元组(Tuple) 2. 标准类型操作符 连接操作符() 重复操作符(*) 索引操作符([]) …...
DVWA-DC-6
靶机IP:192.168.20.140 kaliIP:192.168.20.128 网络有问题的可以看下搭建Vulnhub靶机网络问题(获取不到IP) 信息收集 nmap扫描靶机端口及版本信息 dirsearch扫目录 发现是个wordpress建站 我们去访问前端界面 存在重定向,修改hosts文件,加入192.168…...
ubuntu早期版本以及18.04后的版本,通过rc.local配置开机自启
在ubuntu早期版本以及18.04后的版本,还是支持在rc.local中进行操作开机自启。 1、编辑rc.local文件 cat <<EOF >/etc/rc.local #!/bin/sh -e # rc.local # This script is executed at the end of each multiuser runlevel. # Make sure that the script…...
【环境搭建】1.阿里云ECS服务器 安装jdk8
在阿里云服务器上安装 JDK 8 可以通过以下步骤完成。假设你使用的是 CentOS 或者其他基于 Red Hat 的发行版或Alibaba Cloud Linux 3.2104 LTS 64位。 1.更新系统软件包 sudo yum update -y2.安装 OpenJDK 8 使用 yum 包管理器安装 OpenJDK 8 sudo yum install -y java-1.8…...
idea插件开发之定义侧边栏
写在前面 看下如何在侧边栏定义窗口,如下的效果: 1:正戏 先来定义UI,随便拖拽个组件,就看个效果: 接着定义一个工厂类来创建这个UI,需要实现接口com.intellij.openapi.wm.ToolWindowFactor…...
HarmonyOS未来五年的市场展望
一、引言 随着科技的不断进步和消费者对于智能化设备需求的日益增长,操作系统作为连接硬件与软件的核心平台,其重要性愈发凸显。HarmonyOS(鸿蒙系统),作为华为自主研发的分布式操作系统,自诞生以来便备受瞩…...
R语言:什么是向量化操作(Vectorization)?
在R语言中,向量化操作是一个非常重要且强大的概念。它不仅提高了代码的简洁性和可读性,还大大提升了代码的执行效率。本文将详细介绍什么是向量化操作,并通过几个示例来展示其应用。 什么是向量化操作? 向量化操作是指在不使用显…...
Python 机器学习 基础 之 【实战案例】中药数据分析项目实战
Python 机器学习 基础 之 【实战案例】中药数据分析项目实战 目录 Python 机器学习 基础 之 【实战案例】中药数据分析项目实战 一、简单介绍 二、中药数据分析项目实战 三、数据处理与分析实战 1、数据读取 2、中药材数据集的数据处理与分析 2.1数据清洗 2.2、 提取别…...
苏州工业园区两学一做教育网站/百度推广入口官网
题目:随便输入一个数 n 作为猴子总数,当数到7的猴子就会被淘汰。 个人感觉写起来有点复杂,但还算比较好理解。。。 首先要明确这样一个道理,从1数到7,每数一轮就会淘汰一只猴子,所以要选出猴王一共要数n-…...
企业网站建设原则/百度权重是怎么来的
前言面试官:看你写 有参与过数据清洗ETL之类的工作? 讲讲你这个项目中数据质量是怎么做的 :啥数据质量? GG 概念 数据质量是一种通过测量和改善数据综合特征来优化数据价值的过程。是通过数据收集 、数据识别/匹配…...
网站换域名了怎么办seo/重庆企业站seo
/** * 如何仅用递归函数和栈操作逆序一个栈 * 题目: * 一个栈依次压入1,2,3,4,5,那么从栈顶到栈底分别为5,4,3,2,1。 * 将这个栈转置后,从栈顶到栈…...
怎么查看网站的友情链接/现在什么app引流效果好
原因: 数据库table和插入语句的字符编码不匹配或者数据库table的编码不支持中文 解决方案: 修改table中的字符编码为:utf-8(或gbk,gb2312) 在代码中链接数据库时,连接字符串后面加上?characterEncodingutf8,例如jdbc:…...
阿甘网站建设/广告投放公司
git传送门 转载于:https://www.cnblogs.com/syaoyao/p/5463924.html...
抖音排名优化/seo黑帽培训骗局
何时使用领域驱动设计转载自:https://www.cnblogs.com/daxnet/p/15177443.html何时使用领域驱动设计?其实当你的应用程序架构设计是面向业务的时候,你已经开始使用领域驱动设计了。领域驱动设计既不是架构风格(Architecture Style…...