c++怎么改错cannot convert parameter 1 from 'float' to 'float []'

#include<stdio.h>floataverage(floatarray[10]){inti;floataver,sum=0;for(i=0;i<10;i++)s... #include<stdio.h>
float average(float array[10])
{
int i;
float aver,sum=0;
for(i=0;i<10;i++)
sum+=array[i];
aver=sum/10;
return (aver);
}
void main()
{
float score[10],aver;
int i;
printf("\n input 10 scores:");
for(i=0;i<10;i++)
scanf("%f",&score[i]);
aver=average(score[10]); /*这行怎么改*/
printf("\n average score is %5.2f\n",aver);
}
只改备注那行
展开
 我来答
做一个快乐的茶农
高粉答主

2019-07-10 · 每个回答都超有意思的
知道答主
回答量:1396
采纳率:100%
帮助的人:35万
展开全部

1、要将 1.234567 这个小数转化为字符串"1.234567“。首先,要包含头文件 cstdio(即 stdio.h)。

2、接着,要定义一个字符缓冲区 buffer,大小要足以容纳要转换的 double 变量。

3、再使用sprinf_s进行转换,转换的字符串保存在buffer中。

4、这时,就可以用string类型变量str来接收值了。

5、为了验证结果,我们加句代码输出这个str的值。

6、程序运行的结果。

306712241
2012-04-09 · TA获得超过2512个赞
知道小有建树答主
回答量:890
采纳率:100%
帮助的人:262万
展开全部
数组作为实参的时候,只需要写数组名就可以了 改为:
aver=average(score);
再说那个数组的下表是从0开始的,10个元素就是0~9 ,没有10,你那样肯定错误。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
椎冰
推荐于2017-09-03 · TA获得超过726个赞
知道小有建树答主
回答量:924
采纳率:0%
帮助的人:704万
展开全部
aver=average(score); 就行了....
score是变量名,你score[10]就变成第11个score的数组成员了,
不知这样解释你能不能接受~求采纳
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
情别应13
2012-04-09 · TA获得超过146个赞
知道小有建树答主
回答量:93
采纳率:0%
帮助的人:97.8万
展开全部
这段程序错得有点远,只改这一行是不行的,需要改两行。

首先,average函数的参数格式需要修改,如下,将
float average(float array[10])
{
}
改成
float average(float * array)
{
}

然后,备注那行:
aver=average(score[10]);
改成
aver=average(score);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kaixingui2012
推荐于2017-10-04 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6429万
展开全部
cannot convert parameter 1 from 'float' to 'float []'
中文直译:不能将第一个参数从float类型转换到floa[]类型。
意思就是:函数调用时使用的参数类型与该函数定义的类型不一致。调用时送入的参数是float类型,而定义时的类型是float[]( float数组)。
错误代码:aver=average(score[10]); /*这行怎么改*/
score是个数组名,而score[10]表示数组中的一个元素,数组下标从0开始,score[10]就是第11个元素。
正确代码:aver=average(score); //根据前面介绍,参数直接写成数组名就对了

PS:关于数组认识的误区
当数组名后增加[]前面有数据类型时,是数组定义语句,方括号中的数字是数组的元素个数:
float average(float array[10])
float score[10];
除此之外,带数组名后带[]的形式就是数组元素的引用,方括号中的数字是数组的元素所在位置的下标:
scanf("%f", &score[i] );
sum += array[i];
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式