热心市民小刘哈哈 2021-10-10 16:33 采纳率: 87%
浏览 18
已结题

找不到报错原因,大家一起来看看

#include<stdio.h>
int main()
{
int max(int x,int y)
{
int z;
z=x>y?x:y;
return z;
};
int mix(int x;int y)
{
int z;
z=x<y?x:y;
return z;
};
int add(int x,int y)
{
int z;
z=x+y;
return z;
};
int process(int x,int y,int(*fun)(int,int))
{
int z;
if(*fun==max)
{
z=max(int,int);
}
else if(*fun==min)
{
z=min(int,int);
}
else
{
z=add(int,int);
};
return z;
}
int a,b;
printf("请输入俩个数");
scanf("%d %d",&a,&b);
printf("max=");
process(a,b,max);
printf("min=");
process(a,b,min);
printf("add=");
process(a,b,add);
return 0;
}

  • 写回答

1条回答 默认 最新

  • Pliosauroidea 2021-10-10 16:37
    关注

    修改后如下

    #include <stdio.h>
    int max(int x, int y)
    {
        int z;
        z = x > y ? x : y;
        return z;
    };
    int min(int x, int y)
    {
        int z;
        z = x < y ? x : y;
        return z;
    };
    int add(int x, int y)
    {
        int z;
        z = x + y;
        return z;
    };
    int process(int x, int y, int (*fun)(int, int))
    {
        int z;
        if (*fun == max)
        {
            z = max(x, y);
        }
        else if (*fun == min)
        {
            z = min(x, y);
        }
        else
        {
            z = add(x, y);
        };
        return z;
    }
    int main()
    {
    
        int a, b;
        printf("请输入俩个数");
        scanf("%d %d", &a, &b);
        printf("max=");
        process(a, b, max);
        printf("min=");
        process(a, b, min);
        printf("add=");
        process(a, b, add);
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月18日
  • 已采纳回答 10月10日
  • 创建了问题 10月10日

悬赏问题

  • ¥15 如何解决ldsc的这条报错/index error
  • ¥15 VS2022+WDK驱动开发环境
  • ¥30 关于#java#的问题,请各位专家解答!
  • ¥30 vue+element根据数据循环生成多个table,如何实现最后一列 平均分合并
  • ¥20 pcf8563时钟芯片不启振
  • ¥20 pip2.40更新pip2.43时报错
  • ¥15 换yum源但仍然用不了httpd
  • ¥50 C# 使用DEVMOD设置打印机首选项
  • ¥15 麒麟V10 arm安装gdal
  • ¥20 OPENVPN连接问题