读书人

求高手指导,该如何解决

发布时间: 2013-10-21 17:03:30 作者: rapoo

求高手指导
#include<stdio.h>
int *fun(int grade[],int n)
{
int i,j,k=0,m=0,t,a,b;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
t=grade[i];
if(grade[i]>grade[j])
{
grade[i]=grade[j];
grade[j]=t;
}
}
}
a=grade[n-1];
for(i=0;i<n-1;i++)
{
if(grade[i]==a)
k+=1;
}
b=grade[n-1-k];
for(i=0;i<n-1-k;i++)
{
if(grade[i]==b)
m+=1;
}
for(i=0;i<n;i++)
{
if(grade[i]==a)
return grade+i;
}
for(i=0;i<n;i++)
{
if(grade[i]==b)
return grade+i;
}
return grade+i;
}
main()
{
int grade[10],i;
for(i=0;i<10;i++)
scanf("%d",&grade[i]);
*fun(grade,10);
}
编写函数 int *fun(int grade[],int n),其功能是:将存储在grade中的n个学生的成绩最高的两个不同成绩的地址返回,包括相同成绩情况。
希望大神帮我改改 存储 指针
[解决办法]
你这个函数如何能返回两个地址
[解决办法]
在参数里返回
[解决办法]

void fun(int grade[],int n,int **g1,int **g2);

读书人网 >C语言

热点推荐