数组名做函数参数
#include <stdio.h>int average(int x);
int main()
{
int i,a;
for (i=0;i<10;i++)
{
scanf("%d",&a);
}
average(a);
}
int average(int x)
{
int i,sum=0,average;
for(i=0;i<10;i++)
{
sum=sum+x;
}
average = sum/10;
return average;
}
不知道为啥输入10个数以后直接就结束了,不会出来平均值,请大神指点一下,多谢 #include <stdio.h>
int average(int x);
int main()
{
int i,a;
for (i=0;i<10;i++)
{
scanf("%d",&a);
}
average(a);
}
int average(int x)
{
int i,sum=0,c;
for(i=0;i<10;i++)
{
sum=sum+x;
}
c = sum/10;
printf("%d",c);
return c;
}
自己检查出来了一些错误,加以改正,不过还是不行 本帖最后由 心驰神往 于 2021-1-11 14:02 编辑
阿Cxi 发表于 2021-1-11 13:48
#include
int average(int x);
int main()
我运行你这个可以算出十个数平均数啊,不过好像算的不准确? 本帖最后由 jackz007 于 2021-1-11 14:06 编辑
你只调用了函数,却忘记打印结果
这一句
average(a);
改为
printf("%d\n" , average(a)) ; jackz007 发表于 2021-1-11 14:04
你只调用了函数,却忘记打印结果
这一句
下面那个程序函数里面已经有打印了 心驰神往 发表于 2021-1-11 14:08
下面那个程序函数里面已经有打印了
改过了,那就没有问题了呀
D:\0002.Exercise\C>g++ -o x x.c
D:\0002.Exercise\C>x
2 4 6 8 10 12 14 16 18 20
11
D:\0002.Exercise\C> jackz007 发表于 2021-1-11 14:25
改过了,那就没有问题了呀
int average(int x)
{
int i,sum=0;
double c;
for(i=0;i<10;i++)
{
sum=sum+x;
}
c = sum*1.0/10;
printf("%f",c);
return c;
}
感觉这样改比较准确,不然输入 1 2 3 4 5 6 7 8 9 10,输出的是5 弄好啦,谢谢各位了
页:
[1]