写点什么

2021-6-1【利用指针方法求数组的最大值和最小值】

  • 2022 年 5 月 06 日
  • 本文字数:601 字

    阅读完需:约 2 分钟

用指针变量指向最大值最小值


编程要求


测试说明


任务描述


本关任务:编写程序,利用指针方法求数组的最大值和最小值。


相关知识


擂台赛算法思想


求最大值的擂台赛算法思想:从数组中任意找一个数组元素作为擂主,默认是最大值,遍历数组,将每个数组元素依次和擂主比较,如果比擂主大就将这个数组元素的值赋给擂主,否则就离开,直至最后一个数组元素,即可得出擂主就是最大值。


为了完成本关任务,需要定义一个指针变量指向任意一个数组元素,擂主是指针变量指向的数组元素,遍历数组,将每个数组元素依次和指针变量指向的数组元素比较。如果大就将这个数组元素的地址赋给指针变量,否则指针变量的值不变,直至最后一个数组元素,即可得出指针变量指向的数组元素为最大。


求最小值的算法思想与求最大值的算法思想一致。


用指针变量指向最大值最小值


定义指针变量 max 保存最大值的地址,指针变量 min 保存最小值的地址。


编程要求


根据提示,在右侧编辑器 Begin-End 区间补充代码,从后台输入 3 个数,使用指针方法找到 3 《一线大厂 Java 面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 个数中最大和最小的数并输出。


测试说明


平台会对你编写的代码进行测试:


测试输入:


4 91 51


预期输出:


min=4


max=91


测试输入:


151 91 1


预期输出:


min=1


max=151


#include<stdio.h>


#define M 3


main()


{


int a[M],i;


int *max,*min;


for(i=0 ;i<M; i++)


{


scanf("%d",&a[i]);

用户头像

还未添加个人签名 2022.04.13 加入

还未添加个人简介

评论

发布
暂无评论
2021-6-1【利用指针方法求数组的最大值和最小值】_Java_爱好编程进阶_InfoQ写作社区