close
標題:

C語言(初學)

發問:

#include#includeint main(){ char num[100],i; int NUM[100],nu; printf("輸入\n"); scanf("%c",&num); for(i=0;i<=5;i++) NUM[i]=num[i]; nu=NUM[2]-NUM[0]; printf("%d",nu); ... 顯示更多 #include #include int main() { char num[100],i; int NUM[100],nu; printf("輸入 "); scanf("%c",&num); for(i=0;i<=5;i++) NUM[i]=num[i]; nu=NUM[2]-NUM[0]; printf("%d",nu); system("pause"); return 0; } 由於最近在解決字串問題,故用最簡單的範例來表達我的問題。假設我輸入628,輸出要2-6=-4,但是我卻還有些問題,用以上程式碼來表達我的問題,希望有人能幫我解答 更新: 二個數字剪掉第一個數字 是這樣沒錯!!

 

此文章來自奇摩知識+如有不便請留言告知

最佳解答:

輸入 6 2 8,輸出要 2 - 6 = -4 是說第二個數字剪掉第一個數字嗎? 2008-10-27 13:52:37 補充: #include #include int main() { char num[100]; printf("請輸入數字(如:628,會輸出 2 - 6 = -4):"); scanf("%s", &num); printf("%d - %d = %d ", (int)num[1]-(int)'0', (int)num[0]-(int)'0' , num[1]-num[0]); system("pause"); return 0; }

其他解答:

首先要先注意的是你在scanf裡用的是%c(讀字元的意思) 所以就是你就算輸入628也只會讀'6' 最好用%s(讀整個字串直到遇到看不到的字元) 另外要注意的是讀進來的東西是ASCII碼 最簡單的寫法就是NUM[i] = (int) num[i] - '0'; 另外就是你的i應該要宣告成int會比較好0DD936AF46DC4FD4
arrow
arrow
    文章標籤
    没有合适的结果
    全站熱搜

    fksnlix 發表在 痞客邦 留言(0) 人氣()