回覆列表
-
1 # 使用者220946525330
-
2 # Tiekt鐵鐵
使用時應注意的問題:要求在程式執行中輸入資料,輸入的資料個數和型別必須與格式說明符一一對應。地址引數形式:&變數名(除陣列或指標變數) 格式控制中有普通字元時,必須照原樣輸入。格式控制中無普通字元時,輸入的數值型資料和字串用空白符分隔,字元型資料不必分隔。 double型資料輸入時,必須用%lf或%le格式實型數輸入時域寬不能用m.n形式的附加說明 為了減少不必要的輸入量,除了逗號、分號、空格符以外,格式控制中儘量不要出現普通字元,也不要使用 "\n" 、"\t" 等跳脫字元
首先說下最大的問題吧,輸入一個字元是用"%c",而不是"%s",
其次輸入%s字串的時候也不用加&,
再是你這個程式如果只是將第一個迴圈裡的scanf函式的%s改成%c也會出現一個回車符的問題,必須在scanf之後再接上一個getchar函式,具體的修改見程式碼吧
然後呢,你的char指標a並沒有申請一個指定大小的空間,然後你就使用了陣列的取值方法a[i]
最後是一點建議吧,這個程式是要把幾個字元逆序輸出,應該是體量比較小的程式,不用設定那麼多狀態變數之類的.另外比較整型會不會更現實點,因為有負數的就考慮的多一點.另外希望你自己再寫一遍
下面是改過的
更優解法