#include <stdio.h>
#define N 20
void fun(int *a, int n)
{
int i, m, t, k;
for (i = 0; i < 2; i++)//a[0],a[1]
{
m = i;
for (k = i; k < n; k++)//遍历数组,找出最大数和次最大数
if (a[k] > a[m])//第一遍从数组第一个元素开始,第二遍从数组的第二个元素开始(因为第一个元素第一遍已经换成最大数)
m = k;
t = a[i];
a[i] = a[m];
a[m] = t;//第一遍完成最大数的交换,第二遍完成次最大数的交换
}
}
int main()
{
int b[N] = {11, 5, 12, 0, 3, 6, 9, 7, 10, 8}, n = 10, i;
for (i = 0; i < n; i++)
printf("%d ", b[i]);
printf("\n");
fun(b, n);
for (i = 0; i < n; i++)
printf("%d ", b[i]);
printf("\n");
return 0;
}
#include &lt;stdio.h&gt;#define N 20void fun(int *a, int n){ int i, m, t, k; for (i = 0; i &lt; 2; i++)//a[0],a[1] { m = i; for (k = i; k &lt; n; k++)//遍历数组,找出最大数和次最大数 ...