我想请问一下,第一个sum函数中的计算结果可以传入第二个Average函数内吗

img


int Sum(int a,int b,int c,int d);
double Average(int Sum);
int main()
{
    int a,b,c,d;
    scanf("%d %d %d %d",&a,&b,&c,&d);
    Sum(a,b,c,d);
    Average(Sum);
    printf("%d %.1lf",Sum(a,b,c,d),Average(Sum));
    return 0;
}
int Sum(int a,int b,int c,int d)
{
    int Sum = a+b+c+d;
    return Sum;
}
double Average(int Sum)
{
    double Average;
    Average = Sum/4.0;
    return Average;
}

double su = Sum(a,b,c,d);
double av = Average(su);
printf("%d %.1lf",su,av);

另外,不要搞一个和函数同名的变量,容易混淆,建议这么写

int Sum(int a,int b,int c,int d)
{
    return a+b+c+d;
}
double Average(int Sum)
{
    return Sum/4.0;
}

当然可以啊

 
int Sum(int a,int b,int c,int d);
double Average(int Sum);
int main()
{
    int a,b,c,d,s;
    double avg;
    scanf("%d %d %d %d",&a,&b,&c,&d);
    s = Sum(a,b,c,d);
    avg = Average(s);
    printf("%d %.1lf",s,avg);
    return 0;
}
int Sum(int a,int b,int c,int d)
{
    int Sum = a+b+c+d;
    return Sum;
}
double Average(int Sum)
{
    double Average;
    Average = Sum/4.0;
    return Average;
}

  • 这篇博客: 算法竞赛习题整理(一)中的 一、平均数(average) 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 问题描述:输入三个整数, 输出它们的平均值,保留三位小数

    样例输入:

    1 2 3

    样例输出:

    2.000

     

    源代码

    #include<stdio.h>
    int main()
    {
    	int a,b,c;
    	scanf("%d%d%d",&a,&b,&c);
    	printf("%.3f",(a*1.0+b*1.0+c*1.0)/3.0);
    	return 0;
     }