#include <stdio.h>
int main(int argc, char *argv[])
{
int a[] = {169, 22, 323, 515, 618, 297, 1596, 123, 59, 1674};
int i;
int tmp = a[0];//默认数组中第一个成员就是最大的
for(i = 1; i < sizeof(a) / sizeof(a[0]); i++)//最大成员
{
if (a[i] > tmp)
tmp = a[i];
}
printf("max = %d\n", tmp);
int max = 0;//最大的成员
int smax = 0;//第二大成员
//默认数组中第一个和第二个成员分别是最大和第二大
if (a[0] > a[1])
{
max = a[0];
smax = a[1];
}
else
{
max = a[1];
smax = a[0];
}
for(i = 2; i < sizeof(a) / sizeof(a[0]); i++)
{
if (a[i] > max)
{
smax = max;
max = a[i];
}
else if ( a[i] < max && a[i] > smax)//介于最大和第二大之间的数
{
smax = a[i];
}
}
printf("max = %d, smax = %d\n", max, smax);
return 0;
}
C实现打印一个数组的最大数和第二大数
最新推荐文章于 2021-06-22 19:06:22 发布