C编程(西安邮电大学MOOC)

1、最大与次大值

题目内容:编写程序,找出给定的n个数中的最大值及次大值。

输入格式:在第一行中输入一个正整数n(1<n10)。第二行输入n个整数,用英文逗号,隔开。

输出格式:在一行中输出最大值及次大值,中间用英文逗号,隔开。

输入样例:7

                 12,1,2,5,4,7,3

输出样例:12,7

 1 /*  
 2 与只求最大值的程序一样吗,
 3 好像是,但是不是,要排序! 
 4 */
 5 #include <stdio.h>
 6 #define N 100
 7 int main()
 8 {    
 9     int n, a[N] = {0};
10     scanf("%d",&n);
11     for(int i=0; i<n-1; ++i){
12         scanf("%d,",&a[i]);
13     }
14     scanf("%d",&a[n-1]);
15     /* 插入排序 */
16     for(int i = 0; i<n; ++i){
17         int min = a[i];
18         int index = i;
19         for(int j = i+1; j<n; ++j){
20             if(min>a[j]){ 
21                 min = a[j];
22                 index = j;
23             }                
24         }
25         if(index != i){
26             a[index] = a[i];
27             a[i] = min;
28         }
29     }    
30     printf("%d,%d\n",a[n-1],a[n-2]);
31     return 0;
32 }

2、

猜你喜欢

转载自www.cnblogs.com/GoldenEllipsis/p/11703296.html
今日推荐