要求:给定一个整数数组,编写一个C语言函数,找出并返回数组中的第二大数。 ```c int findSecondLargest(int arr[], int size) { int max = arr[0], secondMax = INT_MIN; for (int i = 1; i < size; i++) { if (arr[i] > max) { ...
这段代码会输出数组中的第二大数。如果数组中没有两个不同的数(例如所有数都相同),则max2将保持为INT_MIN,这表示没有找到第二大数。你可以根据需要对这种情况进行额外的处理。
设置两个变量max1和max2,用来保存最大数和第二大数,然后将数组剩余的数依次与这两个数比较,如果这个数a比max1大,则先将max1赋给max2,使原先最大的数成为第二大的数,再将这个数a赋给max1,如果这个数a比max1小但比max2大,则将这个数a赋值给max2,依次类推,直到数组中的数都比较完。 c语言代码: 1#i...
,可以通过以下步骤实现: 1. 声明五个变量,用于存储五个数值。 2. 通过用户输入或者预设值,将五个数值分别赋给这五个变量。 3. 声明两个变量,用于存储最大数和第二大数的值,初始值可以设为负无穷...
int n,i,max,max2,a[1000];printf("输入数据,以负数结束:\n");for(n=0;1;n++){ scanf("%d",&a[n]);if(a[n++]<0)break;} max=max2=a[0];for(i=1;i<n;i++)if(a[i]>max){max2=max; max=a[i];} else if(a[i]>max2)max2=a[i];printf("第二大的数是 %d...
{ if(num[j]>num[i]) { temp=num[j]; num[j]=num[i]; num[i]=temp; } } printf("第二大的数是:%d\n",num[1]); return 0;}
("第二大数为%d\n", FindSecondMax(array, 4)); return 0; } /*** * * author : RISE_AND_GRIND@163.com * date : 2024/04/07 * function : 找出一个整数数组中,第二大的数 * note : None * * ***/ int FindSecondMax(int *ptr, int n) { int max1 = 0...
下列四个数中,第二大的数是( ) A. 8 B. 9 C. 10 D. 11 相关知识点: 数与代数 数的认识 整数的认识 比一比 试题来源: 解析 C. 10 解题步骤 小学整数是指整数的概念在小学阶段的教学内容。整数是由正整数、负整数和0组成的数集。小学整数的概念包括正整数、负整数、0的概念,以及整数的加减法...
百度试题 结果1 题目下列四个数字中,第二大的数字是( ) A. 8 B. 7 C. 9 D. 6 相关知识点: 试题来源: 解析 A. 8 反馈 收藏
我分析下思路:2轮冒泡,可以找出第二大数。2轮循环。也可以找出第二大的。你要到公司面试,要讲效率的话。可以看看我写的下面这个代码 这是用快速排序,夹逼原则来锁定要找的第K大的元素 void swape(int *p1,int *p2){ int temp;temp=*p1;p1=*p2;p2=temp;} int searchPosition(int a[10...