【C语言】能过样例,但为啥全是WA
查看原帖
【C语言】能过样例,但为啥全是WA
1563639
Murain楼主2024/12/23 21:12

请忽略一些历史残留..

代码实现

#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>

#define PI 3.141593
#define MIN(a, b) ((a) < (b) ? (a) : (b))
#define MAX(a, b) ((a) > (b) ? (a) : (b))
#define MONTH_DAY {-1, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}

int iseven(int num);
int compare(const void* a, const void* b);
int is_leapyear(int year);
int GCD(int a, int b); 

int main() {
    int num[3];
    scanf("%d%d%d", &num[0], &num[1], &num[2]);
    qsort(num, 3, sizeof(int), compare);
    
    char ch;
    getchar(); // 清理换行符
    int cnt = 0;
    while((ch = getchar()) != '\n') {
        cnt++;
        if (ch == 'A') {
            printf("%d", num[0]);
            if(cnt != 3) {
                printf(" ");
            }
        }
        else if(ch == 'B') {
            printf("%d ", num[1]);
            if(cnt != 3) {
                printf(" ");
            }
        }
        else {
            printf("%d ", num[2]);
            if(cnt != 3) {
                printf(" ");
            }
        }
    }
    
    return 0;
}

int iseven(int num) {
    return !(num % 2);
}

int compare(const void *a, const void *b) {
    return *(int*)a - *(int*)b;
}

int is_leapyear(int year) {
    if(year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
        return 1;
    }
    else {
        return 0;
    }
}

int GCD(int a, int b) {
    while (a % b) {
        int c = b;
        b = a % b;
        a = c;
    }
    return b;
}
2024/12/23 21:12
加载中...