#45622: 挺多解法的


galant4456@gmail.com (Ren Tsai)

學校 : 不指定學校
編號 : 305553
來源 : [123.192.244.127]
最後登入時間 :
2025-03-24 22:00:38
a038. 數字翻轉 | From: [123.192.244.127] | 發表日期 : 2025-03-24 23:26

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

int main() {
    char num[100];
    scanf("%s", num);

    int len = strlen(num);
    int* digits = (int*)malloc(len * sizeof(int));

    // 把每個數字轉成 int,倒著存
    for (int i = 0; i < len; i++) {
        digits[i] = num[len - 1 - i] - '0';
    }

    // 找到第一個不是 0 的位置
    int start = 0;
    while (start < len && digits[start] == 0) {
        start++;
    }

    // 如果全部都是 0(例如 0000)
    if (start == len) {
        printf("0\n");
    } else {
        for (int i = start; i < len; i++) {
            printf("%d", digits[i]);
        }
        printf("\n");
    }

    free(digits);
    return 0;
}

 
ZeroJudge Forum