问一个c语言问题啦,我是菜鸟,大家帮忙

函数主题没问题,但提示reserach1返回值无效,为嘛无效嘛#include<stdio.h>intmain(){float*research1(float(*p)[5... 函数主题没问题,但提示reserach1返回值无效,为嘛无效嘛
#include<stdio.h>
int main()
{
float *research1(float (*p)[5]);
float *research2(float (*p)[5],float q);
float a[4][5],b[4],sum;
float *p;
int i,j;
for(i=0;i<4;i++)
for(j=0;j<5;j++)
scanf("%f",&a[i][j]);
for(i=0;i<4;i++)
{p=research1(a+i);
if(p==*(a+i))
{
printf("No.%d score",i);
for(j=0,sum=0;j<5;j++)
{
printf("%5.2f",*(p+j));
sum=sum+*(p+j);
}
b[i]=sum/5;
printf("average=%5.2f\n",b[i]);
}
}
for(i=0;i<4;i++)
{p=research2(a+i,b[i]);
if(p==*(a+i))
{
printf("No.%d.score\n",i);
}
}
return 0;
}
float *research1(float (*p)[5])
{int i;
float *pt;
pt=NULL;
for(i=0;i<5;i++)
{
if(*(*p+i)<60) pt=*p;
return(pt);
}
}
float *research2(float (*p)[5],float q)
{int i;
float *pt;
pt=NULL;
if(q>90)
{pt=*p;}
else{
for(i=0;i<5;i++)
{
if(*(*p+i)<85)
break;
if(i==4)
pt=*p;
}}
return(pt);
}
展开
 我来答
105风轻云淡
2013-05-20 · TA获得超过533个赞
知道小有建树答主
回答量:117
采纳率:0%
帮助的人:127万
展开全部
我运行时没报错啊,不过你main函数的返回类型最好改成float,因为你下面调用的函数返回类型均是float,用int虽然不会报错,但可能损失精度。
追问
可以运行,但research1函数功能无法实现哎,你能把你运行结果截下图么
追答
你把research1函数里的return语句放到for语句里面,这样里面if语句最多实现一次,然后就返回pt了,把return语句放到for语句外面吧
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式