为了账号安全,请及时绑定邮箱和手机立即绑定

C自定义函数 函数中调用其他函数

C自定义函数 函数中调用其他函数

C
清峯 2017-12-21 00:32:28
#include<stdio.h> #define N 10 //函数计算十个数的最大值最小值 求和 求平均 void sr(int a[]); void findmax(int a[],int *fmax); void findmin(int a[],int *fmin); void findsum(int a[],int *fsum); void findpj(double *fpj); int main() {     int a[N];     int fmax,fmin,fsum;     double fpj;     sr(a);     findmax(a,&fmax);     findmin(a,&fmin);     findsum(a,&fsum);     findpj(&fpj);     return 0; } void sr(int a[]) {     int i;     printf("输入10个数\n");     for(i=0;i<N;i++)     {         scanf("%d",&a[i]);     } } void findmax(int a[],int *fmax) {     int i;     *fmax=a[0];     for(i=0;i<N;i++)     {         if(a[i]>*fmax)         {             *fmax=a[i];         }     }     printf("最大值:%d\n",*fmax); } void findmin(int a[],int *fmin) {     int i;     *fmin=a[0];     for(i=0;i<N;i++)     {         if(a[i]<*fmin)         {             *fmin=a[i];         }     }     printf("最小值:%d\n",*fmin); } void findsum(int a[],int *fsum) {     int i;     *fsum=0;     for(i=0;i<N;i++)     {         *fsum+=a[i];     }     printf("和为:%d\n",*fsum); } void findpj(double *fpj) {     *fpj= /* *findsum(*fsum)*/ /10.0;     printf("平均值为:%.2f\n",*fpj); }在这个位置如何调用上面的函数?
查看完整描述

3 回答

已采纳
?
new_stein

TA贡献3条经验 获得超1个赞

// 函数声明的地方,增加 int a[] 参数
void findpj(int a[],double *fpj);
// 函数调用的地方,传入 int a[]
int main()
{
    int a[N];
    int fmax,fmin,fsum;
    double fpj;
 
    sr(a);
    findmax(a,&fmax);
    findmin(a,&fmin);
    findsum(a,&fsum);
    findpj(a,&fpj);  //   <------ 这里   
    return 0;
}
// 函数实现的地方,需要数组传过来,才能计算和,不然没有计算的原始数据
void findpj(int a[], double *fpj)
{
    int tmp = 0;
    findsum(a, &tmp);  
    *fpj = tmp / 10.0;
    printf("平均值为:%.2f\n",*fpj);
}


查看完整回答
1 反对 回复 2017-12-22
  • 清峯
    清峯
    会出现两次求和结果,在主函数取消findsum(a,&fsum);就好了 感谢
?
慕沐4449596

TA贡献34条经验 获得超15个赞

还是跟在主函数中调用,同种方式

查看完整回答
反对 回复 2017-12-21
  • 3 回答
  • 0 关注
  • 1615 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信