【正文】
拼一個(gè)春夏秋冬!贏一個(gè)無悔人生!早安!—————獻(xiàn)給所有努力的人.學(xué)習(xí)好幫手。不奮斗就是每天都很容易,可一年一年越來越難。是狼就要練好牙,是羊就要練好腿。判斷輸贏并提示 If a(x).Tag = 1 Then = 您 + 輸了! = False End If If a(x).Tag = 0 Then = 您 + 贏了! = False End If End If If = 您 + 輸了! Then 39。電腦會(huì)堵子不讓“人”贏 If a(10 i).Tag 0 And _ a(10 i).Tag = a(5).Tag Then sel = i Exit For End If Select Case i 39。計(jì)算機(jī)會(huì)首先選擇最中間位置落子,若中間已被人落子,計(jì)算機(jī)會(huì)在第一格中落子 If a(5).Tag = 0 Then sel = 5 Else sel = 1 End If Else For i = 1 To 9 If a(i).Tag = 0 Then sel = i Exit For End If Next i For i = 1 To 9 Step 2 If a(i).Tag = 0 Then sel = i Exit For End If Next i For i = 1 To 9 If i = 5 Then 39。記錄走的步數(shù) Call ren 39。使得a(n)的值與點(diǎn)擊的mand按鈕一一對應(yīng) If a(n).Tag = 0 Then a(n).Caption = ● a(n).Tag = 1 39。給a(i)賦值使其有具體含義 Next iEnd SubPrivate Sub Command1_Click(Index As Integer)39。窗口激活 Option1(0).Value = False Option1(1).Value = False = For i = 1 To 9 a(i).Caption = Next i = 0 = 0 End IfEnd SubPrivate Sub Form_Activate() Option1(0).ForeColor = vbBlue Option1(1).ForeColor = vbBlue = True sum = 0 For i = 1 To 9 a(i).Caption = a(i).Tag = 0 39。 課程設(shè)計(jì)最終還是完成了,在這個(gè)炎熱的季節(jié)里,收獲的成果的確讓我感到一陣清涼,有機(jī)會(huì)的話,真心想嘗試更高級一點(diǎn)的程序設(shè)計(jì),雖然vb我掌握的還不夠深不夠多,但是我感興趣,興趣是最好的老師嘛。改的簡單點(diǎn)吧,就沒意思了,但是想改的復(fù)雜點(diǎn),自己也沒有那個(gè)能力。在我眼中,這款程序也顯得很“幼稚”,過于簡單和無聊,但畢竟,它是我親手設(shè)計(jì)出來的?。∽约鹤龅暮蛣e人做的,玩起來柑真的很不一樣,當(dāng)程序完成調(diào)試時(shí),看到電腦和自己下棋的感覺真的很興奮。男孩子都是比較愛玩的,我也不例外。整份報(bào)告看起來也比較有層次、有條理,結(jié)構(gòu)還是比較合理的,不是為了應(yīng)付老師而胡亂的做出來的,整份報(bào)告凝聚的是自己的汗水,就算不是很完美,我也心滿意足了,畢竟是自己勞動(dòng)的成果,是自己辛勤的結(jié)晶。最終報(bào)告完成的時(shí)候,我個(gè)人還是比較滿意的。比較苦難的是在報(bào)告中將自己的這次課程設(shè)計(jì)思路可以很好地表達(dá)出來。除了畫圖,還有一大部分截圖,和程序中一些重要代碼的復(fù)制。三個(gè)流程圖不不是很復(fù)雜,但對我這個(gè)相當(dāng)于從零開始的人來說,也著實(shí)花費(fèi)一番功夫。所以,課程報(bào)告我也很用心的去完成。我從下午三點(diǎn)回到宿舍便開始寫報(bào)告書,連晚飯都沒出去吃一直弄到現(xiàn)在近12點(diǎn),還剩小結(jié)未完成。在起初設(shè)計(jì)階段遇到很多困難,程序代碼出錯(cuò),輸入出錯(cuò),遺漏語句,if語句嵌套邏輯不合理等等,但在自己的不斷檢查和修改下,最終完成了整個(gè)程序的設(shè)計(jì)。我的那幾個(gè)不足之處也在上文具體提到,所以,vb要想再提高,僅僅通過這次課程實(shí)踐是不夠的,這次實(shí)踐只能說是鞏固,而不是提高。測試了各個(gè)模塊的功能,也無錯(cuò)誤出現(xiàn)。而最終成果也實(shí)現(xiàn)了設(shè)計(jì)的目的要求。從開始開發(fā),到最終的調(diào)試完成共用時(shí)兩天時(shí)間,其中大部分時(shí)間是在宿舍。在主體上插入具體的小程序,還是比較容易的,慢工出細(xì)活,尤為重要的是需要投入相當(dāng)一部分精力去精益求精,這樣你的成果才不會(huì)是毛糙的。這次課程設(shè)計(jì),我才明白這一學(xué)期下來自己所學(xué)到的真的只是皮毛,很多語句我都不會(huì)用,更別提那么多函數(shù)了。大體上完成了要求,但是功能、界面都還不是很完善。這段時(shí)間翻的vb書可以跟期末考試之前一學(xué)期翻的vb一樣多了。五、參考文獻(xiàn)1.《VB程序設(shè)計(jì)教程》 第2版 劉瑞新 汪遠(yuǎn)征 等編著 機(jī)械工業(yè)出版社六、課程設(shè)計(jì)小結(jié)這個(gè)程序從難度上講不算太難,但我想說我確實(shí)花費(fèi)了不少時(shí)間琢磨。具體情形如下圖: 從圖中可以看到,“我”先落子,當(dāng)“我”第三步落子在位置8時(shí),電腦已經(jīng)可以落子于位置7從而獲得勝利,但由于程序設(shè)計(jì)的原因,電腦會(huì)首先堵“我”路,從而失去獲得勝利的機(jī)會(huì)。以后再有機(jī)會(huì)的話,可以將這個(gè)小程序在完善一下。若玩家沒有失誤,那么一定是和棋為結(jié)局。從我的設(shè)計(jì)過程中就可以很明顯的看到,在人機(jī)互奕過程中,電腦的計(jì)算判斷前提是不讓玩家先獲得勝利贏。所以我這次課程設(shè)計(jì)的作品也肯定存在不足之處。在我獨(dú)立認(rèn)真思考之后,我想到一個(gè)很好而且很簡便的方法。這樣,不僅僅是寫出了判斷輸贏的程序,而且十分簡潔,別人看的話也是一目了然。若是的話,再判斷這三個(gè)位置中任一個(gè)位置的Tag值為多少,即可判斷出誰輸誰贏。因?yàn)橼A的情況總共只有8種,不算太多,所以可以把這8種情況用坐標(biāo)系的形式具體表現(xiàn)出來后,在進(jìn)行判斷。只到我在資料中看到“五子棋”的代碼后突然領(lǐng)悟。三、設(shè)計(jì)過程中遇到的主要問題與解決方案:輸贏判斷程序的編寫 我在這次設(shè)計(jì)中碰到的最大問題即是當(dāng)勝利的情況出現(xiàn)后該如何判斷出來。一是在游戲已經(jīng)有一方獲得勝利,但玩家試圖繼續(xù)在棋盤下棋時(shí)會(huì)跳出如下警告對話框: