之九 查找数组中第二大的数
这个题也是经常会考的题了,
1 int func(int array[], int len) 2 { 3 int first = array[0]; 4 int second = array[1]; 5 if (array[0] > array[1]) 6 { 7 first = array[1]; 8 second = array[0]; 9 } 10 for (int i = 2; i < len; i++) 11 { 12 if (array[i] > first) 13 { 14 second = first; 15 first = array[i]; 16 17 } 18 else if (array[i] > second) 19 second = array[i]; 20 } 21 return second; 22 }
测试一下:
1 int main(int argc, char *argv[]) 2 { 3 int array[10] = {25,23,4,2,654,23,13,45,67,1}; 4 cout << "第二大的数是:" << func(array, 10) << endl; 5 system("PAUSE"); 6 return EXIT_SUCCESS; 7 }

浙公网安备 33010602011771号