之九 查找数组中第二大的数

这个题也是经常会考的题了,

 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 }

posted on 2012-11-21 14:58  乐则行之  阅读(64)  评论(0)    收藏  举报

导航