C_Sharp 板


LINE

最近在看書自學 用迴圈一口氣列出九九乘法表我會 2 x 1 = 2 2 x 2 = 4 2 x 3 = 6 ... .. . 不過書上出的題目是要列成下面那樣 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 2 4 6 8 10 12 14 16 18 3 3 6 9 12 15 18 21 24 27 4 4 8 12 16 20 24 28 32 36 ... .. . 我的想法是 int x = 1, y = 1; //宣告X軸跟Y軸 string str = Convert.ToString(x); Console.Write(str.PadLeft(4)); x++; while (x < 10) { str = Convert.ToString(x); Console.Write(str.PadLeft(3)); x++; if (x == 10) { Console.Write("\n"); x = 1; break; } }//先列出第一行 while (y < 10) { Console.Write(y); //印出每行的第一個表示"Y軸"的數字 if (x < 10) { str = Convert.ToString(x * y); Console.Write(str.PadLeft(2)); x++; } //這個if一次印一行XY相乘的結果 else { Console.Write("\n"); y++; x = 1; } // x > 9 跳下一行 } Console.ReadLine(); 執行出來的結果是 1 2 3 4 5 6 7 8 9 1 11 21 31 41 51 61 71 81 91 2 22 42 62 82102122142162182 3 33 63 93123153183213243273 ... .. . 後面那個非預期的數字我看不出來是哪邊跑出來的 有沒有前輩可以指點一下是哪個環節出錯呢? 我猜是str = Convert.ToString(x * y);這段的問題? -- ╔═ ═╦╦═════╦═════╗ ◤◤◤ ╠╣飛鳥ももこ╠═╗ ║ ║╚═════╝ ╚═╦═╣ ║╔══════╗╔═╩═╣ █◤ ╠╣Momoko Asuka╠╝ ║ ◣◢◣◢╩╩══════╩════╝ --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.132.150.222
1F:推 LaPass:錯在 Console.Write(y);沒判斷吧? 05/04 15:07
2F:推 LaPass:你每跑一次迴圈都會執行次那一行,你看你乘出來的數字的後 05/04 15:09
3F:→ LaPass:面都多個y 05/04 15:09
4F:→ gasbomb:我剛剛也抓到了,現在正在想辦法修改 謝謝 ^^ 05/04 15:12
5F:→ gasbomb:改好了! 程式真不是腦袋不清楚的人學得來的 orz 05/04 15:24
6F:推 if4:可以請問是哪一本書嗎?謝謝 ^_^ 05/04 15:46
7F:→ gasbomb:visual C# 程式設計16堂課 我感覺這本書講得有點快 05/04 16:00
8F:推 if4:誰寫的啊?哪一個書局?因為我不知道要怎麼找...謝謝 ^_^ 05/04 16:11
9F:→ gasbomb:碁峰 李啟龍 不是google就有答案了...? 05/04 16:19
10F:推 if4:google是一票答案問你不是比較快?XD先不說這個,我有一個疑問 05/04 16:27
11F:→ if4:if (x == 10) { 這一行後面不是不會執行到嗎?因為 05/04 16:29
12F:→ if4:while (x < 10) 不是最多執行到 9 而已...? 05/04 16:30
不會 假設目前x == 9 while (x < 10) { // 9 < 10, 所以下面開始跑 str = Convert.ToString(x); Console.Write(str.PadLeft(3)); x++; // x++, 現在 x == 10 if (x == 10) { // x == 10, 所以下面開始跑 Console.Write("\n"); x = 1; break; 其實while (x < 10)應該寫成while (true)就好了 (x < 10)好像有點畫蛇添足 ;;
13F:→ if4:為什麼還要特別 break 出來?請教一下..我沒學過C#只學過C++/C 05/04 16:33
因為不break的話 x = 1; 然後跳回去while (x < 10) 這樣會跑不完阿 ※ 編輯: gasbomb 來自: 220.132.150.222 (05/04 16:39)
14F:推 if4:我知道了...你將 if 放在 x++ 後面...對不起...XD 05/04 16:37
15F:→ gasbomb:XD 05/04 16:39
16F:推 if4:我習慣迴圈遞增放在最後面,放在中間的,很少見XD 05/04 16:45
17F:→ gasbomb:這樣放算是壞習慣嗎? 我學C#之前只有"玩"過一點Ruby 05/04 16:47
18F:推 if4:因為另外一個迴圈 for (c#有嗎?)是放在最後面... 05/04 16:50
19F:→ gasbomb:有, 可是我不太喜歡用 (跑 05/04 16:52
20F:推 if4:for 的無窮迴圈 for(;;) 很經典,比 while(true) 還經典XD 05/04 16:57
21F:推 optimist9266:你現在的問題只是你不知道怎麼呈現而已啊 05/04 19:49
22F:推 f1234518456:用個二維陣列比較實在 05/04 20:12
23F:→ gasbomb:我還在新手區阿,總不能越級打怪 XD 05/04 20:20
24F:推 if4:『visual C# 程式設計16堂課』範例多嗎?16堂當然快囉^^ XD 05/05 00:57







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BabyMother站內搜尋

TOP