[問題] 遞迴程式

看板C_and_CPP作者 (jimmyoic)時間12年前 (2013/10/14 23:59), 編輯推噓6(6017)
留言23則, 8人參與, 最新討論串1/1
因為需要利用到所有英文字大小寫的各種組合 所以用遞迴寫了一個找出一個單字的所有大小寫組合的FUNCTION( AllWordCase) 然後在終止條件用得到的該字串跑一些功能 (showAllWordCase) code如下 http://codepad.org/8Vj8EPGy 可是不解的是程式會死在遞迴途中 如果我把Data data拿掉 把show加上註解先不用 那遞迴就可以順利執行 結果應該也正確 因為想知道死在哪 所以用printf 在各行 想看一下是當在哪 在if判斷式裡加在任何地方都沒有出現 所以應該是死在if判斷式外 又想知道是死在第幾層遞迴 所以printf(" i== %d ,i")加在宣告完tt1,tt2後 後來發現都是死在i==2的時候 不知道為什麼加回Data data 及show() 以後 就是會死當 或許是小弟有哪些對遞迴不懂的 百思不得其解 希望有高手可以指點一下@@ -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 106.1.244.14 ※ 編輯: jimmyoic 來自: 106.1.244.14 (10/14 23:59)

10/15 00:07, , 1F
ithWordUpperCase跟show在哪裡,我也百思不得其解...
10/15 00:07, 1F

10/15 00:16, , 2F
顯然是錯在你 "先不用" 又沒貼出來的地方
10/15 00:16, 2F

10/15 00:17, , 3F
相信把 warning 打開你就會有所收獲
10/15 00:17, 3F

10/15 00:22, , 4F
問題是我在show()前跟ithxxx前也給過printf 一樣連印都
10/15 00:22, 4F

10/15 00:22, , 5F
出不來 試了很久@@
10/15 00:22, 5F

10/15 00:25, , 6F
你printf加\n換行的話會突然跑出東西來嗎
10/15 00:25, 6F

10/15 00:26, , 7F
信不信隨便你,反正看不見的code我也捏不扁他搓不圓它
10/15 00:26, 7F

10/15 00:27, , 8F
完全不會..
10/15 00:27, 8F

10/15 00:40, , 9F
問題就是加了show()就當 可是卻當在跑到show之前
10/15 00:40, 9F

10/15 00:40, , 10F
所以完全不知道該怎麼辦
10/15 00:40, 10F

10/15 00:48, , 11F
那個...你的遞迴呼叫有在加了 Data 之後相應增加嗎?
10/15 00:48, 11F

10/15 00:48, , 12F
我是指 AllWordCase(data, tt1, i+1); //好像要這樣才對
10/15 00:48, 12F

10/15 00:51, , 13F
有的 可能我貼CODE的時候漏掉 不然連compile都不會過
10/15 00:51, 13F

10/15 00:51, , 14F
你呼叫的AllWordCase跟宣告的AllWordCase似乎不太一樣
10/15 00:51, 14F

10/15 00:56, , 15F
那是我沒貼好 SORRY@@
10/15 00:56, 15F

10/15 15:43, , 16F
請問是cat->cat caT cAt cAT Cat CaT CAt CAT這樣嗎?
10/15 15:43, 16F

10/15 16:42, , 17F
你要不要把你的整支程式貼上來? 這樣實在很難找問題 orz
10/15 16:42, 17F

10/16 00:49, , 18F
矇著眼睛debug XDD
10/16 00:49, 18F

10/16 03:32, , 19F
我把我show裡的code 直接取代show() 就可以了orz
10/16 03:32, 19F

10/16 03:32, , 20F
是bigpig那個意思
10/16 03:32, 20F

10/16 09:46, , 21F
襪 然後沒有給show() 果真要我們矇著眼睛debug
10/16 09:46, 21F

10/16 13:33, , 22F
你需要的是超能力者 http://psychicdebugging.com/
10/16 13:33, 22F

10/17 11:46, , 23F
如果是的話,為何不用power set,根本不需要遞迴啊:(
10/17 11:46, 23F
文章代碼(AID): #1IN1J90f (C_and_CPP)