#include
void printarr(double a[],int n);
double maxmun(double a[],int n);
double ave(double a[],int n);
int find(double a[],int n,double x);
int main()
{
int i,j;
double x,m,a[10],average;
for(i=0;i {
scanf("%lf ",&a[i]);
}
printarr(a,10);
m=maxmun(a,10);
printf("%lf",m);
average=ave(a,10);
printf("%lf",average);
scanf("%lf",&x);
j=find(a,10,x);
printf("%lf",a[j]);
return 0;
}
void printarr(double a[],int n)
{
int i;
for(i=0;i printf("%lf ",a[i]);
printf("\n");
}
double maxmun(double a[],int n)
{
int i;
double max;
max=a[0];
for(i=0;i if(a[i]>max)
max=a[i];
return max;
}
double ave(double a[],int n)
{
int i;
double sum=0,average;
for(i=0;i<n;i++)
sum+=a[i];
average=sum/n;
return average;
}
int find(double a[],int n,double x)
{
int i=0;
while(i<n)
{
if(x=a[i])
break;
i++;
}
return i;
}
代码有问题!贴出来的代码不全!用代码块贴出来才能让我们看到的!你重新贴一下 !
能用代码格式重发吗?
for(i=0;i if(a[i]>max) 你这个可以编译过?
注意我是用的vs2015,必须使用scanf_s
来确保安全,如下是我的代码图!
推荐你每次编写的时候,美观点,并且注释一些地方以至于自己可以明白什么是什么。
#include<stdio.h>
void printarr(double a[], int n);
double maxmun(double a[], int n);
double ave(double a[], int n);
int find(double a[], int n, double x);
int main()
{
int i, j;
double x, m, a[10], average;
for (i = 0; i<10;i++)
{
scanf_s("%lf ",&a[i]);
}
printarr(a, 10);//打印
m = maxmun(a, 10);
printf("%lf", m);//打印最大值
average = ave(a, 10);
printf("%lf", average);//打印平均数
scanf_s("%lf", &x);
j = find(a, 10, x);//找到先输入的数,找到的话显示出来,打印出来。
printf("%lf", a[j]);
return 0;
}
void printarr(double a[], int n)
{
int i;
for (i = 0; i<n;i++)
printf("%lf ", a[i]);
printf("\n");
}
double maxmun(double a[], int n)
{
int i;
double max;
max = a[0];
for (i = 1; i < n; i++)
if (a[i] > max)
max = a[i];
return max;
}
double ave(double a[], int n)
{
int i;
double sum = 0, average;
for (i = 0; i<n; i++)
sum += a[i];
average = sum / n;
return average;
}
int find(double a[], int n, double x)
{
int i = 0;
while (i<n)
{
if (x == a[i])//修改了下,=是赋值,==才是对的
return i;//修改了下
i++;
}
return i;
}