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

用指针函数寻找数组中的最大值与次大值

#include <stdio.h>// 函数用于找出数组中的最大值和次大值
void LargestTow(int a[], int n, int *pfirst, int *psecond) {*pfirst = a[0];*psecond = a[1];if (*psecond > *pfirst) {// 如果初始的次大值大于最大值,交换它们int temp = *pfirst;*pfirst = *psecond;*psecond = temp;}for (int i = 2; i < n; i++) {if (a[i] > *pfirst) {// 如果当前元素大于最大值,更新次大值为原来的最大值,最大值更新为当前元素*psecond = *pfirst;*pfirst = a[i];} else if (a[i] > *psecond) {// 如果当前元素大于次大值但小于最大值,更新次大值为当前元素*psecond = a[i];}}
}int main() {int n;scanf("%d", &n);int a[n];for (int i = 0; i < n; i++) {scanf("%d", &a[i]);}int max, second_max;LargestTow(a, n, &max, &second_max);printf("%d %d\n", max, second_max);return 0;
}

 

以下是按照先遍历数组找出最大值,然后再次遍历数组找出最小值的思路,使用 C 语言编写的代码来解决上述问题(找出n个整数中的最大值和次大值):

#include <stdio.h>// 函数用于找出数组中的最大值和次大值
void LargestTow(int a[], int n, int *pfirst, int *psecond) {int max_value = a[0];int max_index = 0;// 第一次遍历数组,找出最大值及其索引for (int i = 1; i < n; i++) {if (a[i] > max_value) {max_value = a[i];max_index = i;}}*pfirst = max_value;// 将最大值所在位置的元素设为一个很小的值,避免它干扰找次大值a[max_index] = -99999999;int second_max_value = a[0];// 第二次遍历数组,找出次大值for (int i = 1; i < n; i++) {if (a[i] > second_max_value) {second_max_value = a[i];}}*psecond = second_max_value;
}int main() {int n;scanf("%d", &n);int a[n];for (int i = 0; i < n; i++) {scanf("%d", &a[i]);}int max, second_max;LargestTow(a, n, &max, &second_max);printf("%d %d\n", max, second_max);return 0;
}

 

题目描述

求n个整数中的最大值和次大值。要求定义一个函数LargestTow(),求数组a的最大值和次大值两个值,分别存入形参指针pfirst和psecond所指存储单元,函数原型如下:
void LargestTow(int a[],int n,int *pfirst,int *psecond)
{
/*数组a有n个元素,将数组中的最大值存入形参指针pfirst所指内存单元,将数组中第二大的值存入形参指针psecond所指内存单元。 */
}

输入描述

输入有两行,输入第一行是一个整数n,1<n<=1000;第二行是n个整数,由空格隔开。

输出描述

输入两个整数,表示数组中最大的两个值。输出占一行。

样例输入

5
6 3 4 9 8

样例输出

9 8

相关文章:

用指针函数寻找数组中的最大值与次大值

#include <stdio.h>// 函数用于找出数组中的最大值和次大值 void LargestTow(int a[], int n, int *pfirst, int *psecond) {*pfirst a[0];*psecond a[1];if (*psecond > *pfirst) {// 如果初始的次大值大于最大值&#xff0c;交换它们int temp *pfirst;*pfirst *…...

人工智能在金融领域的创新与应用

引言&#xff1a;AI如何重塑金融行业&#xff1f; 金融行业是人工智能&#xff08;AI&#xff09;技术的最佳应用场景之一。通过数据分析、模式识别和自动化处理&#xff0c;AI正为金融行业提供高效、安全和智能化的解决方案。从反欺诈到投资决策&#xff0c;AI正逐步改变金融服…...

shell脚本(4)一文解决比较运算符用户交互

免责声明 学习视频来自B 站up主泷羽sec&#xff0c;如涉及侵权马上删除文章。 笔记的只是方便各位师傅学习知识&#xff0c;以下代码、网站只涉及学习内容&#xff0c;其他的都与本人无关&#xff0c;切莫逾越法律红线&#xff0c;否则后果自负。 比较运算符 在Shell脚本中…...

windows 操作系统下载 Android源码教程

前言 开始我是装了hyber-v 虚拟机ubuntu 的&#xff0c;然而非常的卡顿且难用。因此我尝试在windows上使用repo&#xff0c;因此有了这篇文章 补充 第二天发现编译源码也需要linux命令因为源码中的很多脚本都是.sh的 因此最终通过安装WSL解决&#xff08;在window应用商店就…...

【AIGC】如何使用高价值提示词Prompt提升ChatGPT响应质量

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: AIGC | 提示词Prompt应用实例 文章目录 &#x1f4af;前言&#x1f4af;提示词英文模板&#x1f4af;提示词中文解析1. 明确需求2. 建议额外角色3. 角色确认与修改4. 逐步完善提示5. 确定参考资料6. 生成和优化提示7. 生成最终响…...

vue3-input 搜索框

第一种 实现效果 实现代码 <template><div class="input-box mb20"><input type="text" class="input" /><span class="span">搜</span></div> </template><script setup> import …...

记录eslint报错的情况

这几天在调试vue的eslint&#xff0c;害&#xff0c;我领导说eslint要打开规范代码&#xff0c;顺带看了一下eslint的规则&#xff0c;并且研究一下报错。切记每次修改了.eslintrc配置文件&#xff0c;需要重启项目再查看控制台&#xff0c;否则之前的报错会一直存在。 第一个…...

mongodb多表查询,五个表查询

需求是这样的&#xff0c;而数据是从mysql导入进来的&#xff0c;由于mysql不支持数组类型的数据&#xff0c;所以有很多关联表。药剂里找药物&#xff0c;需要药剂与药物的关联表&#xff0c;然后再找药物表。从药物表里再找药物与成分关联表&#xff0c;最后再找成分表。 这里…...

Git Bash + VS Code + Windows11 Git命令报错莫名奇妙的问题

环境&#xff1a; git version 2.47.0.windows.1 gitbash版本&#xff1a;Git-2.47.0-64-bit windows版本&#xff1a; Windows 11 专业版 版本号 23H2 安装日期 ‎2024/‎11/‎16 操作系统版本 22631.4460 体验 Windows Feature Experience Pack 1000.22700.10…...

湛江市社保卡申领指南:手机获取电子照片回执单号

在湛江市&#xff0c;社保卡的申领流程已经实现了数字化&#xff0c;为市民带来了极大的便利。特别是通过手机获取数码照片回执单号&#xff0c;这一环节更是简化了申领过程。今天&#xff0c;我们将详细介绍如何不去照相馆&#xff0c;利用手机来获取数码照片回执单号&#xf…...

Linux离线安装Docker命令,简单镜像操作

解压安装包 首先&#xff0c;使用 tar 命令解压 docker-27.3.1.tgz 安装包&#xff1a; tar -zxvf docker-27.3.1.tgz 将二进制文件移动到可执行路径上的目录 接着&#xff0c;将解压出来的 Docker 二进制文件复制到系统的可执行路径&#xff08;通常是 /usr/bin/&#xff09…...

【Node.js】Node.js 和浏览器之间的差异

Node.js 是一个强大的运行时环境&#xff0c;它在现代 JavaScript 开发中扮演着重要角色。然而&#xff0c;许多开发者在使用 Node.js 时常常会感到困惑&#xff0c;尤其是与浏览器环境的对比。本文将深入探讨 Node.js 和浏览器之间的差异&#xff0c;帮助你全面理解两者的设计…...

基于MySQL的 CMS(内容管理系统)的表结构设计

目录 1. 用户管理 (Users) 2. 内容管理 (Content/Posts) 3. 分类 (Categories) 4. 标签 (Tags) 5. 内容与分类关系 (Content_Category) 6. 内容与标签关系 (Content_Tag) 7. 媒体库 (Media) 8. 设置 (Settings) 9. 评论 (Comments) 10. 活动日志 (Activity_Log) 11. …...

2.13 转换矩阵

转换矩阵引用了库nalgebra&#xff0c;使用时研究具体实现。 use std::ops;use nalgebra::Perspective3;use crate::Scalar;use super::{Aabb, LineSegment, Point, Triangle, Vector};/// An affine transform #[repr(C)] #[derive(Debug, Clone, Copy, Default)] pub struct…...

【C语言】遗传算法matlab程序

遗传算法matlab程序 遗传算法是一种模拟自然选择过程的优化技术&#xff0c;用于解决复杂问题。在MATLAB中编写遗传算法程序&#xff0c;通常包括以下几个步骤&#xff1a; 初始化种群&#xff1a;创建一个初始解集&#xff08;种群&#xff09;&#xff0c;每个解代表一个问题…...

Java LinkedList 详解

LinkedList 是 Java 集合框架中常用的数据结构之一&#xff0c;位于 java.util 包中。它实现了 List、Deque 和 Queue 接口&#xff0c;是一个双向链表结构&#xff0c;适合频繁的插入和删除操作。 1. LinkedList 的特点 数据结构&#xff1a;基于双向链表实现&#xff0c;每个…...

mac-mini的时间机器,数据备份到alist 中的网盘

苹果的时间机器不能直接将备份存储在 alist 上的网盘&#xff0c;但可以通过一些中间步骤来实现类似的效果&#xff0c;以下是具体介绍&#xff1a; 方法原理 通过将支持 WebDAV 协议的网络存储挂载到本地&#xff0c;再将其设置为时间机器的备份磁盘&#xff0c;从而间接实现…...

【HarmonyOS】鸿蒙应用加载读取csv文件

【HarmonyOS】鸿蒙应用加载读取csv文件 一、问题背景&#xff1a; 1. csv文件是什么&#xff1f; csv是一种文本文件格式&#xff0c;与json类似。会存储一些文本内容&#xff0c;应用需要读取该文件&#xff0c;进行UI内容得填充等。 文件中的数据是以纯文本形式存储的&…...

Java retainAll() 详解

在 Java 中&#xff0c;retainAll() 是 Collection 接口&#xff08;List、Set 等集合类实现该接口&#xff09;的一种方法&#xff0c;用于保留集合中与指定集合交集的元素&#xff0c;删除其他所有元素。 以下是对 retainAll() 方法的详细讲解。 1. 方法定义 方法签名 boo…...

Redis的基本数据类型

初识Redis缓存 Redis缓存&#xff1a; 实际开发中经常使用Redis作为缓存数据库&#xff0c;从而提高数据存取效率&#xff0c;减轻后端数据库的压力。 可以将经常被查询的数据缓存起来&#xff0c;比如热点数据&#xff0c;这样当用户来访问的时候&#xff0c;就不需要到MyS…...

从零开始在Taotoken平台创建管理密钥并获取调用示例代码

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 从零开始在Taotoken平台创建管理密钥并获取调用示例代码 1. 开始前的准备 如果你刚开始接触大模型API&#xff0c;可能会觉得配置…...

对比直接使用官方api与通过taotoken接入后的网络连接稳定性体验

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 对比直接使用官方 API 与通过 Taotoken 接入后的网络连接稳定性体验 1. 引言 在开发基于大语言模型的应用程序时&#xff0c;一个…...

FPGA+DSP异构核心板在工业控制与数据采集中的应用与开发指南

1. 项目概述&#xff1a;为什么选择FPGADSP异构核心板&#xff1f;在工业控制、伺服驱动、光伏逆变这些对实时性和算力要求都极高的领域里&#xff0c;选型一块合适的核心板往往是项目成败的第一步。过去&#xff0c;我们可能需要在“高灵活性的FPGA”和“高主频的通用处理器”…...

抖音批量下载助手:高效构建个人视频素材库的完整解决方案

抖音批量下载助手&#xff1a;高效构建个人视频素材库的完整解决方案 【免费下载链接】douyinhelper 抖音批量下载助手 项目地址: https://gitcode.com/gh_mirrors/do/douyinhelper 在内容创作成为主流表达方式的今天&#xff0c;视频素材的获取和管理成为创作者面临的核…...

SMAPI深度解析:星露谷物语模组生态系统的技术架构与实现原理

SMAPI深度解析&#xff1a;星露谷物语模组生态系统的技术架构与实现原理 【免费下载链接】SMAPI The modding API for Stardew Valley. 项目地址: https://gitcode.com/gh_mirrors/smap/SMAPI SMAPI&#xff08;Stardew Valley Modding API&#xff09;作为星露谷物语模…...

如何选择最佳身份验证技能:Awesome Agent Skills中Auth0、Firebase Auth与Better Auth全面指南

如何选择最佳身份验证技能&#xff1a;Awesome Agent Skills中Auth0、Firebase Auth与Better Auth全面指南 【免费下载链接】awesome-agent-skills A curated collection of 1000 agent skills from official dev teams and the community, compatible with Claude Code, Codex…...

穆斯堡尔谱—固态研究中不可或缺的工具

...

深耕 Harness 工程,解锁 AI Agent 开发之路

2026三掌柜赠书活动第三十一期 Harness工程&#xff1a;从上下文管理到Agent系统构建 目录 前言 详解Harness工程核心价值与独特优势 关于《Harness工程&#xff1a;从上下文管理到Agent系统构建》 编辑推荐 内容简介 作者简介 图书目录 《Harness工程&#xff1a;从上…...

淘特App x-sign参数逆向分析与Python签名生成实战

1. 这不是“破解”&#xff0c;而是一次标准的客户端安全分析实践 “淘特App x-sign参数逆向实战&#xff1a;从抓包到算法定位”——这个标题里藏着三个关键信号&#xff1a; 淘特 &#xff08;阿里巴巴旗下特价电商App&#xff09;、 x-sign &#xff08;一个高频出现在请…...

Chrome无痕模式下BiDi协议断连原因与解决方案

1. 这个问题不是“能不能用”&#xff0c;而是“为什么一开无痕就断连”如果你在用 Selenium 4.11 集成 Chrome DevTools Protocol&#xff08;CDP&#xff09;或更新的 BiDi&#xff08;Browser Interaction&#xff09;协议做自动化时&#xff0c;突然发现&#xff1a;本地调…...