天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

當(dāng)前位置:主頁 > 論文百科 > 英文數(shù)據(jù)庫 >

拼數(shù)字游戲C#課程設(shè)計(jì)

發(fā)布時(shí)間:2017-01-13 18:37

  本文關(guān)鍵詞:VisualC#.NET程序設(shè)計(jì)教程,由筆耕文化傳播整理發(fā)布。


《C#程序設(shè)計(jì)》課程設(shè)計(jì) 題 目:

學(xué) 號:姓 名:指導(dǎo)老師: 拼數(shù)字游戲 邵曉艷

目 錄

1 前言 ....................................................... 1

2 課題介紹 ................................................... 1

2.1功能要求 .............................................. 1

2.2主要任務(wù) .............................................. 1

2.3運(yùn)行環(huán)境 .............................................. 1

2.4開發(fā)語言 .............................................. 1

3 概要設(shè)計(jì)與詳細(xì)設(shè)計(jì) ......................................... 1

3.1系統(tǒng)流程圖 ............................................ 3

3.2詳細(xì)設(shè)計(jì) .............................................. 3

4 關(guān)鍵代碼與全部代碼 ......................................... 4

4.1關(guān)鍵代碼 .............................................. 4

4.2全部代碼欣賞 .......................................... 5

5 課程設(shè)計(jì)總結(jié) ............................................... 9

參考文獻(xiàn) ..................................................... 9

評語及成績 .................................................. 10

1 前言

拼數(shù)字游戲是一種很簡單但也是很有趣味性的游戲。編寫一個(gè)拼數(shù)字游戲,通過把9個(gè)label控件綁定起來共用一個(gè)事件,來實(shí)現(xiàn)label控件的移動進(jìn)而在后續(xù)的判斷中確定是否通關(guān)。

2 課題介紹

拼數(shù)字游戲通過把1—9這9個(gè)數(shù)在游戲開始后上隨機(jī)排序,用到數(shù)組和隨機(jī)函數(shù)的知識!

2.1功能要求

(1)用C#語言實(shí)現(xiàn)程序設(shè)計(jì);

(2)利用二維數(shù)組進(jìn)行相關(guān)信息處理;

(3)畫出查詢模塊的流程圖;

(4)系統(tǒng)的各個(gè)功能模塊二維數(shù)組實(shí)現(xiàn);

(5)界面友好(良好的人機(jī)互交),程序要有注釋。

2.2主要任務(wù)

(1)定義一個(gè)二維數(shù)組,數(shù)組中的每一個(gè)成員代表一張帶數(shù)字的卡片;

(2)畫出所有模塊的流程圖;

(3)編寫代碼;

(4)程序分析與調(diào)試。

2.3運(yùn)行環(huán)境

(1).NET Framework平臺

(2)Visual Studio 2010開發(fā)環(huán)境

2.4開發(fā)語言

C#語言

3 概要設(shè)計(jì)與詳細(xì)設(shè)計(jì)

1

3.1系統(tǒng)流程圖

系統(tǒng)的主要功能包括:定義二維數(shù)組,把二維數(shù)組中的數(shù)據(jù)存到相對應(yīng)的一位數(shù)組中,利用隨機(jī)函數(shù)產(chǎn)生一個(gè)不可見的數(shù)字,通過判斷不可見得數(shù)字和

系統(tǒng)的流程及框架如圖3.1所示。

圖3.1 系統(tǒng)流程圖 3.2詳細(xì)設(shè)計(jì)

【以下為樣例】

(1)功能“快速生成沒有重復(fù)的隨機(jī)數(shù)”的詳細(xì)設(shè)計(jì)

“快速生成沒有重復(fù)的隨機(jī)數(shù)”功能是:先生成0—8的隨機(jī)數(shù),然后找到下標(biāo)為這個(gè)隨機(jī)數(shù)的元素,并與第一個(gè)交換戰(zhàn)后產(chǎn)生1—8的隨機(jī)數(shù)和第二個(gè)交換。如此反復(fù),,一直生成7—8的隨機(jī)數(shù)。

該功能的實(shí)現(xiàn)流程如圖3.2所示。

- 2 -

......

圖3.2 快速生成不重復(fù)的隨機(jī)數(shù)

(2)功能“移動方塊”的詳細(xì)設(shè)

“移動方塊”功能是:先判斷被單擊方塊是不是和空白方塊相鄰的方塊,如果是移動到空白處,并使其原來的位置便為空白。

該功能的實(shí)現(xiàn)流程如圖3.2所示。

- 3 -

圖3.3 移動方塊流程圖 4 關(guān)鍵代碼與全部代碼

4.1關(guān)鍵代碼

【以下為樣例】

【在程序的開頭部分定義二維數(shù)組數(shù)組,用來存放信息,共9條信息。 Label[,] arrLbl = new Label[3, 3];

int unRow = 0, unCol = 0;

bool playing = false;

private void btnPlay_Click(object sender, EventArgs e)

{

arrLbl[0, 0] = label1;

arrLbl[0, 1] = label2;

arrLbl[0, 2] = label3;

arrLbl[1, 0] = label4;

arrLbl[1, 1] = label5;

arrLbl[1, 2] = label6;

arrLbl[2, 0] = label7;

arrLbl[2, 1] = label8;

arrLbl[2, 2] = label9;

- 4 -

arrLbl[unRow, unCol].Visible = true;

int[] arrNum = { 1,2,3,4,5,6,7,8,9};

Random rm = new Random();

for (int i = 0; i < 8; i++)

{

int rmNum = rm.Next(i, 9);

int temp=arrNum [i];

arrNum [i ]=arrNum [rmNum ];

arrNum[rmNum] = temp;

}

for (int i = 0; i < 9; i++)

{

arrLbl[i / 3, i % 3].Text = arrNum[i].ToString(); }

int cover = rm.Next(0, 9);

unRow = cover / 3;

unCol = cover % 3;

arrLbl[unRow, unCol].Visible = false;

playing = true;

}

4.2全部代碼及運(yùn)行結(jié)果

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Media;

namespace WindowsFormsApplication1

{

public partial class MainFrom : Form

{

public MainFrom()

{

InitializeComponent();

}

Label[,] arrLbl = new Label[3, 3];

- 5 -

int unRow = 0, unCol = 0;

bool playing = false;

private void btnPlay_Click(object sender, EventArgs e) {

arrLbl[0, 0] = label1;

arrLbl[0, 1] = label2;

arrLbl[0, 2] = label3;

arrLbl[1, 0] = label4;

arrLbl[1, 1] = label5;

arrLbl[1, 2] = label6;

arrLbl[2, 0] = label7;

arrLbl[2, 1] = label8;

arrLbl[2, 2] = label9;

arrLbl[unRow, unCol].Visible = true;

int[] arrNum = { 1,2,3,4,5,6,7,8,9};

Random rm = new Random();

for (int i = 0; i < 8; i++)

{

int rmNum = rm.Next(i, 9);

int temp=arrNum [i];

arrNum [i ]=arrNum [rmNum ];

arrNum[rmNum] = temp;

}

for (int i = 0; i < 9; i++)

{

arrLbl[i / 3, i % 3].Text = arrNum[i].ToString(); }

int cover = rm.Next(0, 9);

unRow = cover / 3;

unCol = cover % 3;

arrLbl[unRow, unCol].Visible = false;

playing = true;

}

private void label1_Click(object sender, EventArgs e) {

if (!playing)

{

return;

}

int row = ((Label)sender).Top / 80;

int col = ((Label)sender).Left / 80;

- 6 -

if (Math.Abs(row - unRow) + Math.Abs(col - unCol) == 1) {

string temp = arrLbl[unRow, unCol].Text;

arrLbl[unRow, unCol].Text = arrLbl[row, col].Text; arrLbl[row, col].Text = temp;

arrLbl[unRow, unCol].Visible = true;

arrLbl[row, col].Visible = false;

unRow = row;

unCol = col;

}

for (int i = 0; i < 9; i++)

{

if (arrLbl[i / 3, i % 3].Text != Convert.ToString (i + 1)) {

break;

}

if (i == 8)

{

arrLbl[unRow, unCol].Visible = true;

playing = false;

MessageBox .Show("恭§喜2你?

}

}

}

}

}

?過y了?游?戲·","消?息¢對?話°框ò",MessageBoxButtons .OK ,MessageBoxIcon .Information );

- 7 -

圖3.4 開始游戲界面

圖3.4 完成游戲界面

5 課程設(shè)計(jì)總結(jié)

- 8 -

在做這個(gè)小程序期間在生成Click事件時(shí)由于沒有把所有的九個(gè)控件選中所以必可避免的出了些問題,我也曾嘗試做個(gè)4*4的拼數(shù)字游戲但是遇到了我所解決不了的問題,所以就停止了。通過這次的課程設(shè)計(jì)我發(fā)現(xiàn)我們學(xué)習(xí)的課本知識遠(yuǎn)遠(yuǎn)不夠,可惜啊仍需要我們,繼續(xù)努力!

參考文獻(xiàn)

[1] 羅福強(qiáng),VisualC#.NET程序設(shè)計(jì)教程[M].人民郵電出版社,2012.

[2] 牛莉,劉遠(yuǎn)軍等.計(jì)算機(jī)等級考試輔導(dǎo)教程[M].北京:中國鐵道出版社,2008.

[3] 張福祥.C語言程序設(shè)計(jì)實(shí)驗(yàn)實(shí)訓(xùn)與習(xí)題解答 [M].沈陽:遼寧大學(xué)出版社,2010.1

- 9 -

成績評定

- 10 -

11


  本文關(guān)鍵詞:VisualC#.NET程序設(shè)計(jì)教程,由筆耕文化傳播整理發(fā)布。



本文編號:237269

資料下載
論文發(fā)表

本文鏈接:http://sikaile.net/wenshubaike/mishujinen/237269.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶b94db***提供,本站僅收錄摘要或目錄,作者需要刪除請E-mail郵箱bigeng88@qq.com
日韩1区二区三区麻豆| 九九热在线视频观看最新| 久久99国产精品果冻传媒| 午夜精品一区二区三区国产| 国产精品亚洲综合色区韩国 | 激情内射亚洲一区二区三区| 亚洲熟妇熟女久久精品| 欧美日韩国产成人高潮| 免费大片黄在线观看日本| 国产精品夜色一区二区三区不卡| 九九九热在线免费视频| 大胆裸体写真一区二区| 91精品国产综合久久福利| 国内自拍偷拍福利视频| 国产成人精品一区在线观看| 一区二区福利在线视频| 亚洲高清中文字幕一区二三区| 天堂网中文字幕在线视频| 五月天婷亚洲天婷综合网| 欧美一区二区三区不卡高清视| 高中女厕偷拍一区二区三区| 午夜国产福利在线播放| 久久精品一区二区少妇| 欧美日韩乱码一区二区三区| 在线视频免费看你懂的| 日本亚洲欧美男人的天堂| 99久久精品视频一区二区| 亚洲中文字幕日韩在线| 国产日韩熟女中文字幕| 免费一区二区三区少妇| 国产又粗又硬又大又爽的视频| 亚洲一区二区久久观看| 国产精品亚洲综合天堂夜夜| 亚洲中文字幕剧情在线播放| 午夜福利92在线观看| 久久99青青精品免费| 国产又长又粗又爽免费视频| 黄片在线观看一区二区三区| 老鸭窝精彩从这里蔓延| 91精品国产品国语在线不卡| 国产精品久久男人的天堂|