PTA 1017 A除以B C語言 分析

2021-09-26 01:39:38 字數 485 閱讀 3668

分析:其實這道題坑的點比較多。首先接收的時候因為a是不超過1000位的整數,所以要用字串來接受。但是分別求出來的每位數是整數,所以q應該用乙個陣列來接受它的每一位數。最後還需要考慮如果接受到陣列q中之後如果第一位是0的話不能輸出來0(被除數的首位小於除數導致存的商的第一位為0)但是如果接收到q中只有一位而且為0,那麼就需要將它輸出來

**如下:

#include#includeint main()

; int div,r=0,b[1001]=,i,j=0;

scanf("%s%d",a,&div);

for(i=0;i0||b[i])

printf("%d",b[i]);

printf(" %d",r);

}

1017 A除以B (c語言)

本題要求計算 a b,其中 a 是不超過 1000 位的正整數,b 是 1 位正整數。你需要輸出商數 q 和餘數 r,使得 a b q r 成立。輸入格式 輸入在一行中依次給出 a 和 b,中間以 1 空格分隔。輸出格式 在一行中依次輸出 q 和 r,中間以 1 空格分隔。輸入樣例 12345678...

1017 A除以B(C語言實現)

本題要求計算 a b,其中 a 是不超過 1000 位的正整數,b 是 1 位正整數。你需要輸出商數 q 和餘數 r,使得 a b q r 成立。輸入在一行中依次給出 a 和 b,中間以 1 空格分隔。在一行中依次輸出 q 和 r,中間以 1 空格分隔。123456789050987654321 7...

(PAT乙級)1017 A除以B(C語言實現)

總結 1 i 0的情況和其他時候不一樣,可以在迴圈體之前就單獨執行,不需要放到迴圈體裡做判斷語句。2 模擬手動除法的過程,每次用第一位去除以b,如果得到的商不是0就輸出,否則就 10 下一位,直到最後的數為餘數。即每得到一位商都直接輸出,不需要存在陣列裡在統一輸出,因為這樣既麻煩又容易出錯。3 有乙...