问题标题: 酷町堂:编译错误

0
0
已解决
沈峻宇
沈峻宇
资深天翼
资深天翼
#include<iostream>
#include<cstdio>
#include<bits/stdc++.h>
using namespace std;
int main(){
    int a,b,c,n,d,e;
    d=max(a,b,c);
    e=min(a,b,c);
    cin>>a>>b>>c>>n;
    if(n==d){
        cout<<"max";
    }
    else if(n==e){
        cout<<"min";
    }
    else{
        cout<<"mid";
    }
}

 


1
已采纳
沙宸安
沙宸安
高级启示者
高级启示者

max,min函数不能三者同时出现

沙宸安在2020-12-28 19:16:49追加了内容

可以改为max(?,max(?,?))

0
0
朱优扬
朱优扬
中级天翼
中级天翼

max函数改成:max(a,max(b,c))min也一样

0
张帆
张帆
中级天翼
中级天翼

max函数的编译器格式为

_Tp& max(const _Tp&__a,const _Tp&_b)

只能同时容纳两个参数,所以得改为max(a,max(b,c))

同理,

第8行改为min(a,min(b,c))

 

豆给我吧,

我才高光。

0
0
曹灿阳
曹灿阳
初级天翼
初级天翼

max和min函数只能对两个参数使用,多个参数会编译错误。

你可以写成:

d=max(a,max(b,c));

e=min(a,min(b,c));

曹灿阳在2020-12-29 21:28:57追加了内容

而且,两个参数必须是int类型。

0
荣逸乐
荣逸乐
资深守护
资深守护

max函数中最多只能填两个参数

可以这样写:max(a,max(b,c));

0
黄子澄
黄子澄
中级天翼
中级天翼

max和min只能填两个参数

0
张恩泽
张恩泽
高级天翼
高级天翼

还有, 你没有return 0;

0
李显晨
李显晨
中级启示者
中级启示者

可以写成这样,maxn=max(a,max(b,c));

                        minn=min(a,min(b,c));

我要回答