C++,这个程序该如何编???

来源:百度知道 编辑:UC知道 时间:2024/05/09 18:37:59
输入一些数,求它们的平均值(不包含最大值与最小值),必须调用一个函数,用它来求平均值!
这是我写的,不对,请高手指教!!
#include<iostream.h>
void age(int p[1024]);
int s=1;
void main(){
int p[1024];
for(int i=0;i<1024;i++)
cin>>p[i];
s++;
cout<<"age=";
age(p);
}
void age(p){
int age,sum=0;
int max=min=p[0];
for(int i=0;i<1024;i++)
{max=max>p[i]?max:p[i];
min=min<p[i]?min:p[i];
sum+=p[i];}
age=(sum-max-min)/(s-2);
cout<<age;}

帮你修改了一下,有两个错误:
1.平均函数的声明和定义不一致
2.min没有定义
3.你的s++,只执行了一次哦!

修改后的代码如下:

#include<iostream.h>
void age(int p[1024]);
int s=1;
void main(){
int p[1024];
for(int i=0;i<1024;i++)
{
cin>>p[i];
s++;
}
cout<<"age=";
age(p);
}
void age(int p[1024])
{
int age,sum=0;
int max,min;
max=min=p[0];
for(int i=0;i<1024;i++)
{
max=max>p[i]?max:p[i];
min=min<p[i]?min:p[i];
sum+=p[i];
}
age=(sum-max-min)/(s-2);
cout<<age;
}

#include<stdio.h>
#include<stdlib.h>

#include<math.h>

#include<iostream>
using namespace std;

void age(int p[1024]);
int s=0;
void main(){
int p[1024];
for(int i=0;i<1024;i++) //循环不要漏掉大括号
{
cin>>p[i];
s++;
}