永发信息网

数组元素作函数实参

答案:6  悬赏:0  手机版
解决时间 2021-03-10 23:39
  • 提问者网友:太高姿态
  • 2021-03-10 13:45
#include "stdio.h"
void main()
{
int max(int x);
int i=0,a[5];
for(i=0;i<5;i++)
scanf("%d",&a[i]);
for(i=0;i<5;i++)
max(a[i]);
}
int max(int x)
{
int sum=0;
sum=sum+x;
sum=sum/5;
printf("%d\n",sum);
}

大家帮我看看 是哪里错了
最佳答案
  • 五星知识达人网友:神鬼未生
  • 2021-03-10 15:02
#include "stdio.h"
void max(int x[]);
void main()
{
int i=0,a[5];
for(i=0;i<5;i++)
{
printf("please enter the serious of a:");
scanf("%d",&a[i]);
}
max(a);
}
void max(int x[])
{
int sum=0;
for(int i=0;i<5;i++)
sum=sum+x[i];
sum=sum/5;
printf("%d\n",sum);
}

这个代码求平均值,结果应该符合你的要求了吧?
全部回答
  • 1楼网友:执傲
  • 2021-03-10 21:25
void main() { void max(int x);//把int改为void int i=0,a[5]; for(i=0;i<5;i++) scanf("%d",&a[i]); for(i=0;i<5;i++) max(a[i]); } void max(int x)//把int改为void { int sum=0; sum=sum+x; sum=sum/5; printf("%d\n",sum); } 即可,已经通过VC6.0验证
  • 2楼网友:不甚了了
  • 2021-03-10 19:45
#include "stdio.h" #include"string.h" void main() { void max(int x[]); int i=0,a[5]; for(i=0;i<5;i++) scanf("%d",&a[i]); max(a); } void max(int x[]) { int sum=0; for(int i=0;i<5;i++) sum=sum+x[i]; sum=sum/5; printf("%d\n",sum); } 这个程序能用 你看这样改应该符合你要求把
  • 3楼网友:不想翻身的咸鱼
  • 2021-03-10 19:00
这个当然有问题了。。你是不是想表达。。5个数组的和,和平均值? 这个实参好像只能对数组传。。你试把形参改为数组。。
  • 4楼网友:笑迎怀羞
  • 2021-03-10 17:40
array函数返回的数组是variant型的,而你pstring函数的参数是指定为integer型的,所以就会提示类型不符了。因为variant型是一种特殊的数据类型,它含有附加信息以指定变量的实际类型,所以它是不能和其他显式指定的数据类型共用内存地址的,换句话说就是在传址方式中形参为指定数据类型(如integer、double等)的情况下,实参是不能用variant型的。val()函数把a数组的元素转换为数值型,准确说是double型,而double型和integer型vb会自动转换的,所以这样就没错。
  • 5楼网友:廢物販賣機
  • 2021-03-10 16:14
朋友你好! int max(int x) { int sum=0; sum=sum+x; sum=sum/5; printf("%d\n",sum); } 应该有一个返回值,例如: #include "stdafx.h" void main() { int max(int x); int i=0,a[5]; for(i=0;i<5;i++) scanf("%d",&a[i]); for(i=0;i<5;i++) max(a[i]); } int max(int x) { int sum=0; sum=sum+x; sum=sum/5; printf("%d\n",sum); return sum; }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯