为什么都是错误的。。。

P4414 [COCI2006-2007#2] ABC

ws778 @ 2024-12-07 18:07:16

#include<stdio.h>
int main()
{
    int a,b,c;
    char g,h,j;
    scanf("%d%d%d",&a,&b,&c);
    getchar();
    scanf("%c%c%c",&g,&h,&j);

    int max=a>b?(a>c?a:c):(b>c?b:c);
    int smax=a>b?(a>c?(c>b?c:b):a):(b>c?(c>a?c:a):b);
    int small=a<b?(a<c?a:c):(b<c?b:c);
    if(g=='A'&&h=='B'&&j=='C')
    {
        printf("%d %d %d",small,smax,max);
    }
    if(g=='A'&&h=='C'&&j=='B')
    {
        printf("%d %d %d",small,max,smax);
    }   
    if(g=='B'&&h=='A'&&j=='C')
    {
        printf("%d %d %d",smax,small,max);
    }
    if(g=='B'&&h=='C'&&j=='A')
    {
        printf("%d %d %d",smax,max,small);
    }
    if(g=='C'&&h=='B'&&j=='A')
    {
        printf("%d %d %d",max,smax,small);
    }
    if(g=='C'&&h=='A'&&j=='B')
    {
        printf("%d %d %d",max,small,smax);
    }
}

by are_you_sure @ 2024-12-07 18:10:00

@ws778 sort是个好东西


by ws778 @ 2024-12-07 18:15:18

@are_you_sure 什么东西啊。。。


by are_you_sure @ 2024-12-07 18:20:15

@ws778

这个(可能没用)


by ws778 @ 2024-12-07 18:21:14

@are_you_sure 那你知道不知道我的哪里错了


by are_you_sure @ 2024-12-07 18:30:23

@ws778我学c++的,c我没办法调,对不起。(c++输入我一般用cin,但用scanf也可以


by ws778 @ 2024-12-07 18:39:47

@are_you_sure 我删掉getchar(),然后在%c前面加个空格就对了,不知道为什么不能用getchar()


by KarmaticEnding @ 2024-12-07 18:52:15

@ws778

要是 \texttt{getchar} 读到 \n 之类的东西了呢?


by KarmaticEnding @ 2024-12-07 18:53:16

scanf%c 之前加空格可以过滤 \n (空格)等字符。


|