看板 C_and_CPP 關於我們 聯絡資訊
那就兩個問題一起回吧 ※ 引述《zgmfx2000 (千月星痕)》之銘言: : 推 LPH66:你需要的是遞迴 08/12 02:37 : 推 tropical72:排列 或 組合 ? 08/12 02:40 : : 請問 遞回應該怎麼做呢... : : 然後。。。呃...算組合? 舉例來說 設四個字ABCD 取3個的話 : 他會排出ABC ABD ACD BCD 共四種,其他的就算重複(比方CBA),不需要算進去這樣... 給你一點提示 (以下假設你知道什麼是遞迴) 就拿你舉的四個字取三個 第一個字可以是 A B C D 如果是 A 那後面是 B C D 取兩個 是 B 那後面是 C D 取兩個 是 C...後面只有 D 不能取兩個 D 也一樣 注意到問題規模縮小了 (四取三→三取二或二取二) 這裡就是遞迴上場的時候了 : 另外,我真的很想知道為什麼加了那三行程式會跳出來...~"~ : ※ 編輯: zgmfx2000 來自: 140.123.223.131 (08/12 02:49) 這是困擾很多新手的 scanf 和換行之間的問題 (我覺得這可以放 FAQ 了...) 簡單說就是 你輸入數字後按下的那個 Enter 並沒有被讀進來 留給了之後的程式 在這裡就是你進入讀取字串迴圈的 getchar() 於是第一個字就吃到結束的換行就被你的讀取迴圈理解成輸入空字串 因此什麼都沒印就結束了 -- 実琴:「河野!你真的就這樣被物質慾望給吸引過去了嗎?!」 亨:「只要穿著女裝擺出親切的樣子,所有必要花費就能全免,似乎一點都不壞啊。」 実琴:「難道你沒有男人的尊嚴了嗎?!」 亨:(斷然道)「沒有。在節衣縮食生活吃緊學生面前,沒有那種東西。」 --プリンセス・プリンセス 第二話 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.24.158
zgmfx2000:似乎了解了,感謝L大指教,我會嘗試改寫的^^ 08/12 03:22