码农公社  210.net.cn  210= 1024  10月24日一个重要的节日--码农(程序员)节

第一种方法:

采用排序,进行两趟冒泡排序,当数据基本有序(升序)且不要求按照原有数据中的顺序输出时可选择此方法

void select_1(int a[],int length,int *min1,int *min2){

int i,j;

bool change = true;

for(i = 1;i <= 2 && change;i++){

change = false;

for(j = 0;j

if(a[j] > a[j+1]){

int temp;

temp = a[j];

a[j] = a[j+1];

a[j+1] = temp;

change = true; //如果交换,说明没有排好序

}

}

}

*min1 = a[length - 2];

*min2 = a[length - 1];

}

第二种方法:

输出的数据按照原有数据中的顺序排列

void select_2(int *x1,int *x2,int x){

if(*x1 >= *x2){

if(x > *x2){

*x2 = x;

}

}

else{//x1

if(x >= *x2){

*x1 = *x2;

*x2 = x;

}

else if(x > *x1 && x

*x1 = *x2;

*x2 = x;

}

}

}

测试数据:

懒得输入,就直接初始化了

注意:在第二次使用同一组数据时,需要重新输入或者定义另一个数组赋初值,切不可直接使用,因为冒泡排序已经改变了原有数据的顺序,也不可使用 a[10] = {2,3,1,4,7,3,5,1,6,0}; 这样的赋值语句,因为这种使用方式只有在初始化时可以这样写,在其他地方不可以,会出错,出错的原因是后面使用的不是初始化,并且a[10]表示一个值,而不是一组数,如果数组长度为10,a[10]是一个出界的数组值,也会导致出错。

int main(){

int a[10] = {2,3,1,4,7,3,5,1,6,0};

int b[10] = {2,3,1,4,7,3,5,1,6,0};

int min1,min2;

select_1(a,10,&min1,&min2);

printf("不保证顺序,只是找出最大和次大的值\n");

printf("min1: %d\nmin2: %d\n",min1,min2);

int i,j;

min1 = b[0];

min2 = b[1];

for(i = 2;i

select_2(&min1,&min2,b[i]);

}

printf("大小保持原有顺序不变\n");

printf("min1: %d\nmin2: %d\n",min1,min2);

return 0;

}

输出结果截图:

源自https://www.cnblogs.com/shelly-blog/p/11348496.html

c语言如何输出数组最大值和最小值,C语言输出数组中最大和次大的数相关推荐

  1. 求数组中数的最大值、最小值(C语言)

    求数组中数的最大值.最小值(C语言) #include<stdio.h>void main(void) {int num[10],i,imax,imin,imaxp,iminp;for(i ...

  2. c语言求n个数中最大值和最小值,C语言:从键盘输入n个数,求最大值和最小值(用数组)...

    满意答案 zxyev 2020.07.01 采纳率:51%    等级:7 已帮助:608人 #include #include #define ARR_LEN 255 /*数组长度上限*/ #def ...

  3. 无序数组中找第K大的数

    类快排算法 leetcode215 由于只要求找出第k大的数,没必要将数组中所有值都排序. 典型解法:快速排序分组. 在数组中找到第k大的元素 取基准元素,将元素分为两个集合,一个集合元素比基准小,另 ...

  4. 【LeetCode】快排-无序整数数组中找第k大的数(或者最小的k个数)

    一个有代表性的题目:无序整数数组中找第k大的数,对快排进行优化. 这里先不说这个题目怎么解答,先仔细回顾回顾快排,掰开了揉碎了理解理解这个排序算法:时间复杂度.空间复杂度:什么情况下是复杂度最高的情况 ...

  5. m行n列最大值和最小值C语言,找数组最值 按如下函数原型编程从键盘输入一个m行n列的二维数...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 找数组最值 按如下函数原型编程从键盘输入一个m行n列的二维数组,然后计算数组中元素的最大值及其所在的行列下标值.其中,m和n的值由用户键盘输入.已知m和n ...

  6. 数组最大值和最小值的求法

    作为一名学生,这都是我平时在学习中遇到的一些问题,不清楚不明白的地方,总结给大家的,希望能够帮助到大家 题目:给出10个整数(9,8,27,7,10,98,67,87,4,88),求出最大值和最小值 ...

  7. numpy 数组 最大值、最小值、中位数、均值、标准差、方差、总和、排序、去重

    文章目录 创建数组 最大值 最大值下标 最小值 最小值下标 最大值和最小值之差 中位数 均值 标准差 方差 总和 排序 去重 import numpy as np 创建数组 a1 = np.arang ...

  8. 取得数组最大值与最小值

    public class 取得数组最大值 {public static void main(String[] args) {int[] data= {12,43,8,9,1,46,32,23,65,7 ...

  9. java求数组的最小值_JAVA编程求数组最大值和最小值

    错在最后两段代码是相同的,写了两个"max",就会得到最大值与最小值是一样的结果. 只需要把最后一个"max"改为"min"就可以了,改了之 ...

  10. 两个排序数组中找第k大的数

    一.题目描述 给定两个已经排序好的数组,找到两者所有元素中第k大的元素 二.解法分析 解法一:参照归并排序 将两个有序数组变成一个有序数组:merge两个数组,然后求第k大的数,时间复杂度O(m+n) ...

最新文章

  1. jvm两种方式获取对象所占用的内存
  2. out与ref的区别
  3. NARF(Normal Aligned Radial Feature)关键点
  4. 解决fatal: No remote repository specified. Please, specify either a URL...
  5. 分治法:BFPTR算法找第k小
  6. 【AI视野·今日Robot 机器人论文速览 第十五期】Fri, 25 Jun 2021
  7. tensorflow2.1GPU版本(Windows+conda)的安装过程小结
  8. 【DSP开发】HyperLink 编程和性能考量
  9. 304 ajax,ajax中304缓存处理
  10. SQL模糊查询特殊符号应用及详细案例说明
  11. 【matlab】访问元胞数组
  12. 做减肥产品微商地推用什么做引流?如何选择转化率较高的地推方式
  13. 面试官:如何理解TCP/IP协议?
  14. 基于ArcGIS软件的打开教程
  15. windows下使用XShell上传文件至服务器
  16. 刷题刷题(个人记录)
  17. mysql 如何时间分组,mysql如何按时间分组查询
  18. 小爬虫爬取小猫咪图片并存入本地文件夹
  19. SSL/TLS 通信过程
  20. matlab2017b的破解激活

热门文章

  1. Pycharm 搭建 Django 项目 (非常详细)
  2. 360携手HarmonyOS打造独特的“天气大师”
  3. Linux的NFS(net file systen)
  4. Python语音基础操作--5.4小波分解
  5. MATLAB基本语法介绍(上)
  6. WordPress收费下载插件Erphpdown 免费下载(更新至v9.6.2)
  7. web 网页设计规范介绍
  8. 计算机论文a会c会,参考文献代码大全
  9. linux I2C读写应用程序
  10. java数据库字段中文名称_如何得到数据库中所有表字段及字段中文描述