问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何在数组中找到最小和次小的数

发布网友 发布时间:2022-05-14 05:07

我来回答

1个回答

热心网友 时间:2024-03-14 15:15

在C语言中,数组就像一辆有很多节的火车,车厢中,装载了很多相同的货物.这里,"车厢"中装满了很多int类型的整数.
火车快进站了,列车长想让我这个小小的列车员清点下哪辆车厢装的货最少(数据最小),哪辆车厢装的货第二少(数据次小)!! 于是我加快了调动我的CPU,计算出了结果.大致思路如下:
首先:先设置两个数 min1, min2. 让他们分别等于INT_MAX;
其次:通过循环,先比较min1与每个数组成员的大小. 然后并且比较min2与每个数组成员的大小.
代码如下:
#include
#include
void ReadData2(int arr[], int num)
{
int i;
for(i = 0; i < 10; i++)
{
scanf("%d", arr + i); //arr退化为指针
}
}
void work2(int arr[], int num)
{
//假设 min1是最小的数, min2是次小的数
int i, min1 = INT_MAX, min2 = INT_MAX;
for(i = 0; i < num; i++)
{
if(min1 > arr[i])
{
min2 = min1;
min1 = arr[i]; //确保 min1为最小的值
}
else if(min1 == arr[i])
{
continue; //结束本次循环(只对循环起作用) 避免min1和min2相同.
}
else if(min2 > arr[i])
{
min2 = arr[i];
}
}
printf("min1 = %d, min2 = %d\n", min1, min2);
}
void main()
{
int arr[10];
ReadData2(arr, 10);
work2(arr, 10);
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
422焊条与427焊条有什么不同? 有什么有一点爱情,有一点校园, 又很搞笑,人物也很美型的动漫? ...的动漫 像SA特优生啊 爱丽丝学院啊 人物要赞的 男生一定要帅有点... 美联储加息,国内却在减息 中美利率差距为什么这么大 蒋介石给夫人种的梧桐树在南京哪里 古代的京城是什么意思 唐朝史书和唐诗中单独出现的“京师”“京城”“京”都是固 请问在百度知道里悬赏的问题没有满意的答案,要怎么样才能关闭我的... 在百度提问无满意答案怎么办 什么布袋最环保啊,是全棉的还是无纺的 云袋的袋子环保吗? 读《十万个为什么》有感 50字作文 十万个为什么作文50字 十万个为什么精彩片段摘抄50字 秦孝公据崤函之固 &quot;之”和“固”怎么讲? 相似的还有“自以为关中之固”的“固”? 文言文翻译书上写的是 十万个为什么内容简介五十字 “求其木之长者,必固其根本”中“固”的用法? 十万个为什么感受50字怎么写? “固”在文言文中有“仍然”的意思吗 固在文言文中的意思 怎样申请微信平台给删除消费账单 梦见同事扛死尸放在自已面前周公觯梦? 社保意外险多久可以赔付 Bottle of 具体怎么发音? 梦见拜山看到别人抬死尸 bottle怎么读英语怎么说 bottle怎么读 这个词到底是读“包头”好一还,还是“八头”好一些. 商丘市邦胜汽车销售有限公司怎么样? 商丘中岩别克4S店怎么样 如何找数组中的最小值和次小值 环保布袋的分类 荣耀哪款手机口碑好 c语言怎样求一个数组的最大最小和平均值 怎么查找一个数组里面最小和次小的两个元素 C++ 怎样求一个二维数组元素之和以及二维数组元素的最小值及下标 国家为了环保开始对塑料袋收费,这种行为真的可以有效环保吗? 用c编程 输出一维数组的最大值和最小值的和 JAVA数组大小与JVM内存的关系 在主函数中调用一个函数,将数组元素按从大到小和从小到大的次序输出 C语言 求数组最小元素和次小元素 只学到数组 指针什么的没学过 谢谢 c语言中如果一个数组的长度是10 则数组元素下标的最小和最大值是多少? 请教c语言高手,关于数组求最小值和次小值 用c语言编写,从15个数据组成的数组找出最大最小和平均数 怎么看电势高低和电流方向 C语言,输入10个数到数组中,求最大值,最小值,和 VB定义动态数组大小和FOR循环 .生成一个排序类,可以对一个数组进行从大到小和从小到大的排序,要求使用委托,将由大到小和由小到大的方 C语言:计算数组中最大数最小数和平均值的问题 c语言编程题。 编程求数组a[10]的最大、最小和平均值。(要求用循环语句和输入函数对数组赋初值)