明明没问题,为啥一直是0分啊

P4414 [COCI2006-2007#2] ABC

going_to_HaGongDa @ 2024-09-28 19:16:38

#include<stdio.h>
int main(void){
    int n[3];
    int newn[3]={0};
    char c[3];
    for(int i = 0; i< 3; i++){
        scanf("%d",&n[i]);
    }
    fflush(stdin);
    for(int i = 0; i< 3; i++){
        scanf("%c",&c[i]);
    }
    for(int i = 0; i < 2;i++){
        for(int j = i+1;j < 3;j++){
            if(n[i] > n[j]){
                int temp = 0;
                temp = n[i];
                n[i] = n[j];
                n[j] = temp;
            }
        }
    }
    for(int i = 0; i < 3;i++){
        if(c[i] == 'A'){
            newn[i] = n[0];
        }else if(c[i] == 'B'){
            newn[i] = n[1];
        }else{
            newn[i] = n[2];
        }
    }
    for(int i = 0;i < 3;i++){
       printf("%d ",newn[i]);
    }
}

by huangyige123 @ 2024-09-28 20:12:17

@going_to_HaGongDa

首先是最大的问题;建议改一下字符串的输入()

其次:fflush在你写程序的软件上可以跑,但是在洛谷评测机上跑不了,具体是因为洛谷用gcc来作为c++的评测环境,而fflush在gcc不起作用(当然只是不建议写fflush,只改字符串输入也能对)


by going_to_HaGongDa @ 2024-09-28 20:47:29

@huangyige123 ```c scanf(" %c %c %c", &c[0], &c[1], &c[2]);


感谢大佬,我改成这个后就好使了。

|