扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
简单的办法就是遍历啊,第一遍找到最大值,然后将最大值剔除或者做上标记,然后遍历第二遍找剩余数的最大值,那么找到的就是次大值了。
创新互联建站长期为上千多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为凤泉企业提供专业的网站建设、网站设计,凤泉网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
#include stdio.h
void max(int a[],int n,int *pmax1,int *pmax2)
{
int i;
*pmax1=*pmax2=a[0]; // 初始值为第一个元素
for(i=1;in;i++) //循环整个数组
{
if(a[i]*pmax1) {*pmax2= *pmax1;*pmax1=a[i]; } //如果当前数比最大数大,赋给最大数
else if(a[i]*pmax2) *pmax2=a[i]; //如果没有最大数大,比第二大数大,赋给数
}
}
int main (){
int a[6]={2,4,56,23,45},pmax1,pmax2;
max(a,6,pmax1,pmax2);
printf("max1=%d,max2=%d\n",pmax1,pmax2);
return 0;
}
自定义函数实现
int max(int a,int b)
{
return ab?a:b;
}
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流