[問題] acm10141 WA

看板C_and_CPP (C/C++)作者 (逆宇)時間15年前 (2011/06/09 23:59), 編輯推噓0(0020)
留言20則, 3人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Dev-c++ 程式碼(Code):(請善用置底文網頁, 記得排版) http://codepad.org/8l7F0lHJ 補充說明(Supplement): 小弟不才 解個一顆星的題目花了許久 現在有點不知道原因是甚麼@.@ 原本我在抓廠商名字的時候是先 fgets 之後再接 sscanf("%s")... (上面這個邏輯CODE裡面還有 只是被我註解掉了) 這樣送進去的結果是WA 所以後來猜想 可能是廠商的名字裡面會有空白 ' ' 字元 所以用 %s 只抓得到一半的名字 因此 我改用了 直接把整個行用 fgets抓下來的方法 在直接strcpy到 answer那邊 但是問題又來了 因為直接抓整行會把換行符號也抓進來 所以會多印一次換行 因此我就想說把換行符號 改成0x00 NULL 結束自元 結果現在的狀況居然變成 Runtime Error 百思不解 所以才想上來問問板上各位大大 小弟的邏輯哪邊有問題 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.217.31.73

06/10 00:01, , 1F
為什麼我的字都是藍色的啊...我編輯時少做了甚麼嗎@.@
06/10 00:01, 1F
※ 編輯: mingcloud 來自: 61.217.31.73 (06/10 00:10)

06/10 00:23, , 2F
你不小心砍掉結尾的色碼了...
06/10 00:23, 2F

06/10 00:24, , 3F
囧 這個要怎麼改我真的不會...Orz
06/10 00:24, 3F

06/10 00:27, , 4F
你確定你有抓到'\n'嗎?
06/10 00:27, 4F

06/10 00:29, , 5F
改色碼自己ctrl+z看說明...
06/10 00:29, 5F

06/10 00:29, , 6F
那個問題我剛剛有解決掉 但是還是WA...我改一下心的code
06/10 00:29, 6F
※ 編輯: mingcloud 來自: 61.217.31.73 (06/10 00:30)

06/10 00:31, , 7F
我加上判斷strchr得回傳值之後就沒有timeerror的問題
06/10 00:31, 7F

06/10 00:31, , 8F
但還是wa...
06/10 00:31, 8F

06/10 01:26, , 9F
我AC了 可是很不能苟同...把所有的fgets改成gets之後AC.
06/10 01:26, 9F

06/10 01:28, , 10F
因為一個會把 '\n' 抓進來, 另一個不會
06/10 01:28, 10F

06/10 01:30, , 11F
是這樣說沒錯 但是我嘗試過印的時候改成用fputs
06/10 01:30, 11F

06/10 01:30, , 12F
或者是抓到new_name時先用strlen抓長度
06/10 01:30, 12F

06/10 01:30, , 13F
之後載用strncpy(a,b, strlen-1)這兩種方法都會WA
06/10 01:30, 13F

06/10 01:34, , 14F
No null-character is implicitly appended to the en
06/10 01:34, 14F

06/10 01:35, , 15F
06/10 01:35, 15F

06/10 01:36, , 16F
阿 可是strlen抓到算到\n的長度 然後-1就會不是\n了不是
06/10 01:36, 16F

06/10 01:42, , 17F
strlen的方法過了 但是ans_name要先整個set 成0x00
06/10 01:42, 17F

06/10 01:44, , 18F
這整篇感覺像是我自問自答啊...ORz
06/10 01:44, 18F

06/10 01:55, , 19F
你不懂他在做啥事情就冒然呼叫了
06/10 01:55, 19F

06/10 19:04, , 20F
strlen是抓'\0'...
06/10 19:04, 20F
文章代碼(AID): #1DyEtAfT (C_and_CPP)
文章代碼(AID): #1DyEtAfT (C_and_CPP)