为什么全部都是错误呢,哪有有问题

img

img

img


#include<stdio.h>
int main()
{
    int a,b,c,t;
    scanf("%d%d%d",&a,&b,&c);
    if(a>b)
    {
        t=a;
        a=b;
        b=t;
    }
    if(a>c)
    {
        t=a;
        a=c;
        c=t;
    }
    if(b>c)
    {
        t=b;
        b=c;
        c=t;
    }
    getchar();
    int i=0;
    char d[3];
    for(i=0;i<3;i++)
    {
        scanf("%c",&d[i]);
        if(d[i]=='A')
        printf("%d",a);
        else if(d[i]=='B')
        printf("%d",b);
        else if(d[i]=='C')
        printf("%d",c);
        if(i+1!=3)
        printf(" ");
    }
    return 0;
}

最后那段这么改下试试:

#include<stdio.h>
int main()
{
    int a, b, c, t;
    scanf("%d%d%d", &a, &b, &c);
    if (a > b)
    {
        t = a;
        a = b;
        b = t;
    }
    if (a > c)
    {
        t = a;
        a = c;
        c = t;
    }
    if (b > c)
    {
        t = b;
        b = c;
        c = t;
    }
    getchar();
    int i = 0;
    char d[4];  //char d[3];
    scanf("%s", d);
    for (i = 0; i < 3; i++)
    {
        if (d[i] == 'A')
            printf("%d", a);
        else if (d[i] == 'B')
            printf("%d", b);
        else if (d[i] == 'C')
            printf("%d", c);
        if (i + 1 != 3)
            printf(" ");
    }
    return 0;
}

第一个scanf代码格式化输出那里用空格隔开在测试一遍

洛谷的换行是\r\n你要两次getchar()