C_Sharp 板


LINE

小的剛開始學C# (以前完全沒碰過程式...) 是一邊翻書一邊寫的, 這次是要寫一個簡單的通訊錄, 規定是這樣的: 制定手機類別,類別中之欄位與方法符合自己的需求。 讓使用者可以輸入友人電話及姓名。 讓使用者可以查詢友人的電話。 可是寫了之後有兩個比較重要的問題不知道該怎麼解決, 身邊也沒有人可以問ˊˋ 1. 在新增幾個聯絡人之後,如果我想查詢聯絡人, 而要查的人是放在新增陣列裡的話,他會跑出5個查無此人, 然後跑出一個"未處理的例外狀況...索引在陣列的界線外" 2. 如果要查詢的連絡人是在已經有寫資料的陣列裡的話, 他會跑出人名和電話沒錯,可是也會跑出5個查無此人, 也會出現和第一個問題一樣的錯誤 我試著用我所想的到的方式去改了, 可是越用越糟,我實在不知道該怎麼修他 Q Q 關於我設定的class很詭異的問題.... 呃...因為實在想不出要怎麼用上,只好先這樣寫, 好像沒有造成error,所以就只好先暫時讓他長這樣了 ╮(╯__╰)╭ 底下附上完整程式 ˊˋ ---------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class phone { public static string[] Name; public static string[] Num; } class Program { static void Main(string[] args) { for (; ; ) { int j = 0; string[] inN = new string[90]; string[] inNum = new string[90]; Console.WriteLine("==歡迎進入通訊錄==\n"); string[] Name = { "apple", "Ben", "Merry", "John", "lulu" }; String[] Num = { "0945999236", "0912984592", "0928499328", "0929448104", "0948222941" }; Console.WriteLine("姓名\t 電話號碼"); Console.WriteLine("=================="); Array.Sort(Num, Name); int i; for (i = 0; i <= Name.GetUpperBound(0); i++) { Console.WriteLine("{0}\t{1}", Name[i], Num[i]); } string yes = ""; Console.WriteLine("\n是否要繼續新增聯絡人(Y/N)?"); yes = Console.ReadLine(); if (yes == "y" || yes == "Y") { do { Console.WriteLine("\n請輸入姓名"); inN[j] = Console.ReadLine(); Console.WriteLine("請輸入電話"); inNum[j] = Console.ReadLine(); Console.WriteLine(); Console.WriteLine("\n是否要繼續新增聯絡人(Y/N)?"); yes = Console.ReadLine(); } while (yes == "y" || yes == "Y"); } Console.WriteLine("\n請選擇您要的動作"); Console.WriteLine("1.查詢聯絡人 2.撥號 3.離開 (3.)\n"); Console.Write("選擇→\t"); String Ans = Console.ReadLine(); if (Ans == "1") { Console.WriteLine("\n==通訊錄查詢==\n"); Console.WriteLine("姓名\t 電話號碼"); Console.WriteLine("=================="); Console.WriteLine("輸入欲查詢姓名"); string find = Console.ReadLine(); Array.Sort(inNum, inN); for (int k = 0; k <= inN.GetUpperBound(0); k++) { if (find == inN[k]) { Console.WriteLine("{0}\t{1}", inN[k], inNum[k]); } else if (find == Name[k]) { Console.WriteLine("{0}\t{1}", Name[k], Num[k]); } else { Console.WriteLine("查無此人!!"); } } } else if (Ans == "2") { Console.WriteLine("\n請鍵入電話號碼"); String Call = Console.ReadLine(); Console.WriteLine("\n正在撥號給{0}\n", Call); } if (Ans == "3" || Ans != "1" || Ans != "2") { break; } Console.WriteLine("\n正在離開程式\n"); } } } } --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.240.117
1F:推 kw0006667:快速的看了一下前面…新增的地方,一直用j變數,但它一 04/12 01:16
2F:→ kw0006667:直是"0"吧?再怎麼加,應該都只有一筆。你可以用設中斷 04/12 01:17
3F:→ kw0006667:點的方式,看一下陣列裡面的值,是不是都有輸入進去。 04/12 01:18
4F:→ james732:for使用 <= 的話就會多跑一次,改成 < 試試看 04/12 02:11
5F:→ Tevety:j之前有用for迴圈 可是我寫出來的狀態只會讓人一直新增 04/12 08:35
6F:→ Tevety:直到滿足<=條件為止 可是我是希望他每跑一次就問一次要不要 04/12 08:36
7F:→ Tevety:新增 要的話再跑 不要就跳出....ˊˋ 可是不會寫成這樣 04/12 08:37
8F:推 ianfang:for迴圈中間的條件可不是只能<=或>= 可以給一個值= =時 04/12 21:16
9F:→ ianfang:繼續做阿 04/12 21:16
10F:→ Tevety:我剛剛嘗試把j的部分做了for迴圈 04/12 22:41
11F:→ Tevety:可是檢查時發現他不會一個個存資料進去 只會保留最新的~"~ 04/12 22:42
12F:→ Tevety:最前面宣告int j; 再在do..while裡加了for(j=0;j==90;j++); 04/12 22:44
13F:→ Tevety:目前還是一樣ˊˋ 04/12 22:45
14F:→ james732:http://pastie.org/1787283 04/12 23:33
15F:→ james732:這不是很好的寫法 (但應該不難懂) 04/12 23:33
16F:→ Tevety:O.O 哦哦哦哦 原來可以這樣寫 04/13 01:02
17F:→ Tevety:真的好懂! 謝謝大家 我要來研究看看了 :D 04/13 01:04







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燈, 水草

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

TOP