題目描述:spa
輸入兩個非負 10 進制整數 A 和 B (≤2^30 −1),輸出 A+B 的 D (1<D≤10)進制數。 輸入格式: 輸入在一行中依次給出 3 個整數 A、B 和 D。 輸出格式: 輸出 A+B 的 D 進制數。 輸入樣例: 123 456 8 輸出樣例: 1103
本人AC代碼:blog
// PAT乙級 // PAT_1022_System // 對10進制的數據家和結果進行進制轉換 # include <stdio.h> # define Max 32 int main(void) { long A, B, Sum; int i, D; int System[Max+1]; // 記錄轉換以後的數據 // 輸入數據 scanf("%ld",&A); scanf("%ld",&B); scanf("%d",&D); // 計算A+B Sum = A+B; if (Sum == 0) { printf("0"); return 0; } // 進制轉換 for (i=Max; i>=0; i--) { System[i] = -1; } i=0; while (Sum != 0) { System[i++] = Sum%D; Sum /= D; } for (i=Max; i>=0; i--) { if (System[i] != -1) printf("%d",System[i]); } return 0; }
RRRio