输入一串数字,寻找其中第三大的数字,如果没有第三大的数,就输出最大的数字
3条回答 默认 最新
- 语言-逆行者 2022-11-03 17:30关注
我把排序封装成一个函数给你,如下
#include<stdio.h> //冒泡排序 void sort(int arr[], int size) { int j,i,temp; for (i = 0; i < size-1;i ++) { int count = 0; for (j = 0; j < size-1 - i; j++)//size-1-i是因为每一趟就会少一个数比较 { if (arr[j] > arr[j+1])//这是升序排法,前一个数和后一个数比较,如果前数大则与后一个数换位置 { temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; count = 1; } } if (count == 0) //如果某一趟没有交换位置,则说明已经排好序,直接退出循环 break; } } int main(){ int N,i; printf("请输入一串数字的个数:\n"); scanf("%d",&N); int a[N]; for(i=0;i<N;i++){ scanf("%d",&a[i]); } //调用sort函数 sort(a,N); if(N<3){printf("没有第三大的值,最大值为:%d",a[N-1]);} else{printf("第三大的数为:%d",a[N-3]);} return 0; }
①没有第三大值的情况:
②有第三大值的情况:
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 基于卷积神经网络的声纹识别
- ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
- ¥100 为什么这个恒流源电路不能恒流?
- ¥15 有偿求跨组件数据流路径图
- ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
- ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
- ¥15 CSAPPattacklab
- ¥15 一直显示正在等待HID—ISP
- ¥15 Python turtle 画图
- ¥15 stm32开发clion时遇到的编译问题