C语言之求数组中第二大元素的值
核心思路一数组去重移除所有重复出现的元素使数组中每个数值只保留一个。方法双重循环 覆盖删除。外层循环用i固定当前元素。内层用while循环遍历i之后的所有元素。如果发现num[j] num[i]说明j位置是重复元素将j后面的所有元素前移一位覆盖num[j]。数组有效长度len减 1。j不增加因为新的元素移到了j位置需要重新检查。if (num[i] num[j]){ // 删除 num[j] for (int k j; k len - 1; k){ num[k] num[k 1]; } len--; // 缩短长度 // j不增加继续检查当前位置 }如果不相等则j继续检查下一个位置。else{ j; // 只有不相等时才移动 j }关键点删除元素后j要回退确保不会漏掉因前移而进入j位置的新元素。二处理去重后的数组根据去重后的数组长度len分情况讨论情况 1len 1说明数组中所有元素值都相同去重后只剩一个。没有第二大元素直接输出提示并结束。if (len 1){ printf(数组中所有元素相同无第二大元素); return 0; }情况 2len 2初始化最大值和次大值比较num[0]和num[1]较大的赋给max较小的赋给secondMax。这样初始化的好处是如果数组只有两个元素它们就是最终结果无需进入循环。if (num[0] num[1]) { max num[0]; secondMax num[1]; } else { max num[1]; secondMax num[0]; }遍历剩余元素从i 2开始如果num[i] max说明发现了新的最大值原来的max降级为secondMax更新max num[i]。否则如果num[i] secondMax说明当前元素比次大值大但小于最大值直接更新secondMax。注意这里不需要考虑num[i] max的情况因为去重后已保证所有元素值不重复。for (int i 2; i len; i) { if (num[i] max){ // 新最大值旧最大值降级为次大 secondMax max; max num[i]; } else if (num[i] secondMax){ // 比次大大直接更新次大 secondMax num[i]; } }完整代码如下#include stdio.h int main() { int num[8]; int len sizeof(num) / sizeof(num[0]); int max, secondMax; // 1.输入数组 printf(请输入%d个元素:, len); for (int i 0; i len; i){ scanf(%d, num[i]); } // 2.数组去重 for (int i 0; i len - 1; i){ int j i 1; while (j len){ if (num[i] num[j]){ // 删除 num[j] for (int k j; k len - 1; k){ num[k] num[k 1]; } len--; // 缩短长度 // j不增加继续检查当前位置 } else{ j; // 只有不相等时才移动 j } } } printf(去重后长度len%d\n, len); // 3.根据去重后元素个数分开求解 // 如果去重后只有一个元素 if (len 1){ printf(数组中所有元素相同无第二大元素); return 0; } // 去重后有2个及以上 else{ // 先初始化防止两个变量都是最大值 // 如果去重后只有2个元素则下面初始化为最后结果 if (num[0] num[1]) { max num[0]; secondMax num[1]; } else { max num[1]; secondMax num[0]; } // 如果有2个则不满足for循环条件不执行下面循环上面初始化为最后结果 // 如果是2个以上则执行循环更新最大和次大值 for (int i 2; i len; i) { if (num[i] max){ // 新最大值旧最大值降级为次大 secondMax max; max num[i]; } else if (num[i] secondMax){ // 比次大大直接更新次大 secondMax num[i]; } } printf(该数组中第二大元素%d\n, secondMax); return 0; } }

相关新闻

Lambda架构:批流结合的数据处理实践与优化

Lambda架构:批流结合的数据处理实践与优化

1. Lambda架构的核心设计哲学 在数据爆炸的时代,企业每天需要处理来自用户行为日志、IoT设备、交易系统等多个源头的数据流。传统批处理架构无法满足实时性要求,而纯流式架构又难以保证数据准确性。Lambda架构的提出者Nathan Marz在BackType和Twitter的实…

2026/10/7 16:03:43 阅读更多 →
01-Spring AI Alibaba理论概述

01-Spring AI Alibaba理论概述

01-Spring AI Alibaba 为什么出现在Spring AI出现之前呢,我们只有微服务框架,然后外边时长上是大语言模型。随着大语言模型的日益发展,我们就想要在我们的微服务框架里面去调用大语言模型,但是目前的时长上大多数AI框架主要支持Py…

2026/10/9 21:55:39 阅读更多 →
3分钟快速上手qBittorrent搜索插件:一键搜索20+种子网站

3分钟快速上手qBittorrent搜索插件:一键搜索20+种子网站

3分钟快速上手qBittorrent搜索插件:一键搜索20种子网站 【免费下载链接】search-plugins Search plugins for qBittorrent search feature 项目地址: https://gitcode.com/gh_mirrors/se/search-plugins 还在为寻找资源而频繁切换浏览器标签吗?qB…

2026/10/2 13:14:08 阅读更多 →

最新新闻

Oracle 实战速查:表空间、索引与 PL/SQL 避坑指南

Oracle 实战速查:表空间、索引与 PL/SQL 避坑指南

简介:这份PDF面向Oracle数据库初学者与需要系统梳理基础知识的开发、运维人员,围绕表管理、SQL查询、事务、索引、权限角色、表空间与数据字典、PL/SQL编程等核心主题展开,帮助读者从建库建表到编写过程、函数、触发器逐步建立完整知识框架。…

2026/10/13 23:00:15 阅读更多 →
华中杯B题实战指南:拆题建模、代码复现与论文写作全流程

华中杯B题实战指南:拆题建模、代码复现与论文写作全流程

简介:针对2025年华中杯B题(结肠癌基因表达数据分析)的完整论文与代码结果文档,面向数学建模竞赛参赛者、指导教师及生物信息学方向学习者。压缩包内为单个docx文件,大小约4.33MB,内容涵盖论文正文、模型代码…

2026/10/13 23:00:15 阅读更多 →
LiteLLM实战指南:统一大模型API网关,破解多模型接入难题

LiteLLM实战指南:统一大模型API网关,破解多模型接入难题

1. 为什么需要LiteLLM:多模型时代的API调用痛点1.1 各家大模型API带来的集成成本我在公司负责一个内部AI平台,最开始只接了一个模型服务商,一切都很美好:按官方文档写个小demo,跑通对话、总结、翻译几个场景&#xff0…

2026/10/13 23:00:15 阅读更多 →
Windows DLL动态加载:GetProcAddress返回127错误与CALLBACK宏的调用约定陷阱

Windows DLL动态加载:GetProcAddress返回127错误与CALLBACK宏的调用约定陷阱

1. 一个返回值0引发的深夜排查如果你在Windows平台做过动态库加载相关的开发,大概率见过GetProcAddress返回NULL的场景。常规思路无非是函数名拼错了、DLL没加载成功、导出符号被修饰了这几种。但有一种情况特别折磨人:DLL明明加载成功了,函数…

2026/10/13 23:00:15 阅读更多 →
用VS Code精准清理AppData释放磁盘空间

用VS Code精准清理AppData释放磁盘空间

1. 项目概述:当C盘告急,AppData不是“黑箱”,而是可读的诊断报告你有没有在某天打开电脑,突然发现C盘只剩不到5GB可用空间,系统托盘右下角弹出刺眼的红色警告图标?那一刻,手指已经悬在了“此电脑…

2026/10/13 23:00:15 阅读更多 →
GRP-U8行政事业版数据库部署与运维:从选型到备份恢复的实战指南

GRP-U8行政事业版数据库部署与运维:从选型到备份恢复的实战指南

简介:无论是日常余额核对、凭证追溯,还是年末结转时清理数据,面对GRP-U8行政事业版庞大的数据库常常让人无从下手。这份资料面向用友GRP-U8财务软件的运维实施与行政事业单位信息化人员,集中梳理出真正核心的四张业务表——GL_Yeb…

2026/10/13 22:59:15 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →