欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      五子棋JAVA語言課程設(shè)計報告

      時間:2019-05-12 11:24:18下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《五子棋JAVA語言課程設(shè)計報告》,但愿對你工作學(xué)習(xí)有幫助,當然你在寫寫幫文庫還可以找到更多《五子棋JAVA語言課程設(shè)計報告》。

      第一篇:五子棋JAVA語言課程設(shè)計報告

      《Java語言程序設(shè)計》

      課程設(shè)計報告

      學(xué) 院: 信息科學(xué)技術(shù)學(xué)院 班 級: 軟件技術(shù)2班 姓 名: 王更新 學(xué) 號: 1108900505 指導(dǎo)教師: 郭韶升 課設(shè)時間: 2014-03-17 至2014-03-26

      二O一四 年 三月 二十六 日

      目 錄

      一、設(shè)計要求…………………………………………....2

      二、設(shè)計步驟…………………………………………....2 2.1程序流程圖………………………….…………...2 2.2程序的功能分配……………………….………...3

      三、設(shè)計正文…………………………………………....6 3.1創(chuàng)建棋盤類……………………………………….6 3.2判斷輸贏功能實現(xiàn)……………………………….9 3.3測試結(jié)果……………………………………….....9

      四、心得體會…………………………………………...12

      五、參考文獻…………………………………………...12 附錄(源代碼)……………………………………….13

      一、課程設(shè)計要求

      設(shè)計一個15╳15圍棋棋盤,由兩玩家交替進行對戰(zhàn),并可以實現(xiàn)以下功能: 1.選擇落子的先后順序 2.重置棋盤 3.刷新重新開始 4.退出提示

      并且規(guī)定退出者判為負,但退出過程中要有提示。以防不小心點錯了。最后判斷某一方是否為五子連珠。

      實現(xiàn)一個簡單的多用戶五子棋的游戲程序,包括如下兩個界面(1)選擇對弈桌(執(zhí)黑、執(zhí)白)。

      (2)在游戲界面,有開始,退出(游戲未結(jié)束、點退出自動判負);

      二、設(shè)計步驟

      2.1程序流程圖

      2.2 程序的功能分配

      a.棋盤的繪制

      public void draw_qipan(Graphics G)//畫棋盤 15*15{

      G.setColor(Color.lightGray);

      G.fill3DRect(10,10,300,300,true);

      G.setColor(Color.black);

      for(int i=1;i<16;i++){

      G.drawLine(20,20*i,300,20*i);

      G.drawLine(20*i,20,20*i,300);

      } } b.添加按鈕

      Button b1=new Button(“開始”);Button b2=new Button(“重置游戲”);Label lblWin=new Label(“ ”);Checkbox ckbHB[]=new Checkbox[3];Button exist = new Button(“退出”);public void init(){

      ckbHB[0]=new Checkbox(“執(zhí)白”,ckgHB,false);

      ckbHB[1]=new Checkbox(“執(zhí)黑”,ckgHB,false);

      ckbHB[2]=new Checkbox(“觀看”,ckgHB, false);}

      c.鼠標棋子的觸發(fā)事件

      public void mouseClicked(MouseEvent e){

      Graphics g=getGraphics();

      int x1,y1;

      x1=e.getX();

      y1=e.getY();

      if(e.getX()<20 || e.getX()>300 || e.getY()<20 || e.getY()>300){

      return;

      }

      if(x1%20>10){

      x1+=10;

      }

      if(y1%20>10){ y1+=10;

      }

      x1=x1/20*20;

      y1=y1/20*20;

      set_Qizi(x1,y1);

      m*=(-1);}

      d.按鈕的觸發(fā)事件

      public void actionPerformed(ActionEvent e){

      Graphics g=getGraphics();

      if(e.getSource()==b1){

      Game_start();

      }

      else{

      Game_re();

      }

      if(e.getSource()==exist){

      Game_re();

      lblWin.setText(Get_qizi_color(color_Qizi)+“輸了!”);

      intGame_Start=0;

      }

      e.判斷落子的位置及畫出相應(yīng)的黑白棋子 public void set_Qizi(int x,int y)//落子{

      if(intGame_Start==0)//判斷游戲未開始{

      return;

      }

      if(intGame_Body[x/20][y/20]!=0){

      return;

      }

      Graphics g=getGraphics();

      if(color_Qizi==1)//判斷黑子還是白子{

      g.setColor(Color.black);

      color_Qizi=0;

      }

      else{

      g.setColor(Color.white);

      color_Qizi=1;

      }

      g.fillOval(x-10,y-10,20,20);

      intGame_Body[x/20][y/20]=color_Qizi+1;}

      f.判斷勝負

      if(Game_win_1(x/20,y/20))//判斷輸贏1{

      lblWin.setText(Get_qizi_color(color_Qizi)+“贏了!”);

      intGame_Start=0;

      }

      if(Game_win_2(x/20,y/20))//判斷輸贏2{

      lblWin.setText(Get_qizi_color(color_Qizi)+“贏了!”);

      intGame_Start=0;} if(Game_win_3(x/20,y/20))//判斷輸贏3{ lblWin.setText(Get_qizi_color(color_Qizi)+“贏了!”);intGame_Start=0;} if(Game_win_4(x/20,y/20))//判斷輸贏4{ lblWin.setText(Get_qizi_color(color_Qizi)+“贏了!”);

      intGame_Start=0;} }

      三、設(shè)計正文

      3.1創(chuàng)建棋盤類

      Public class WcyChess extends Applet ActionListener,MouseListener,MouseMotionListener,ItemListener{ int color_Qizi=0;//旗子的顏色標識 0:白子 1:黑子

      int intGame_Start=0;//游戲開始標志 0未開始 1游戲中

      int intGame_Body[][]=new int[16][16];//設(shè)置棋盤棋子狀態(tài)

      int m=-1;Button b1=new Button(“開始”);Button b2=new Button(“重置游戲”);Label lblWin=new Label(“ ”);Checkbox ckbHB[]=new Checkbox[3];Button exist = new Button(“退出”);CheckboxGroup ckgHB=new CheckboxGroup();NetchatClient chat=new NetchatClient();public void init(){

      setLayout(null);

      addMouseListener(this);

      add(b1);

      b1.setBounds(330,50,80,30);

      b1.addActionListener(this);

      add(b2);

      b2.setBounds(330,90,80,30);

      b2.addActionListener(this);

      ckbHB[0]=new Checkbox(“執(zhí)白”,ckgHB,false);

      ckbHB[0].setBounds(320,20,60,30);

      ckbHB[1]=new Checkbox(“執(zhí)黑”,ckgHB,false);

      ckbHB[1].setBounds(380,20,60,30);

      ckbHB[2]=new Checkbox(“觀看”,ckgHB, false);

      add(ckbHB[0]);

      add(ckbHB[1]);

      add(ckbHB[2]);

      ckbHB[0].addItemListener(this);

      ckbHB[1].addItemListener(this);

      add(lblWin);

      lblWin.setBounds(330,180,80,30);

      lblWin.setBackground(Color.red);

      lblWin.setText(“勝利者!”);//沒有顯示?

      ckbHB[2].setBounds(440, 20,60, 30);

      add(exist);

      exist.setBounds(330,130,80,30);

      implements

      //

      exist.addActionListener(this);add(chat);chat.setBounds(20, 500, 300, 300);chat.frame();chat.setVisible(true);Game_start_csh();setSize(500,600);setVisible(true);} public void itemStateChanged(ItemEvent e){ if(ckbHB[0].getState())//選擇黑子還是白子{

      color_Qizi=0;} else{

      color_Qizi=1;} } public void mousePressed(MouseEvent e){} public void mouseClicked(MouseEvent e){ Graphics g=getGraphics();int x1,y1;x1=e.getX();y1=e.getY();if(e.getX()<20 || e.getX()>300 || e.getY()<20 || e.getY()>300){

      return;} if(x1%20>10){

      x1+=10;} if(y1%20>10){

      y1+=10;} x1=x1/20*20;y1=y1/20*20;set_Qizi(x1,y1);m*=(-1);} public void actionPerformed(ActionEvent e){ Graphics g=getGraphics();if(e.getSource()==b1){

      Game_start();} else {

      Game_re();}

      } if(e.getSource()==exist){

      Game_re();

      lblWin.setText(Get_qizi_color(color_Qizi)+“輸了!”);

      intGame_Start=0;} } public void mouseEntered(MouseEvent e){} public void mouseExited(MouseEvent e){} public void mouseReleased(MouseEvent e){} public void mouseDragged(MouseEvent e){} public void mouseMoved(MouseEvent e){} public void paint(Graphics g){ draw_qipan(g);

      3.2判斷輸贏功能實現(xiàn)

      if(Game_win_1(x/20,y/20)){ //判斷輸贏1

      lblWin.setText(Get_qizi_color(color_Qizi)+“贏了!”);

      intGame_Start=0;} if(Game_win_2(x/20,y/20)){ //判斷輸贏2

      lblWin.setText(Get_qizi_color(color_Qizi)+“贏了!”);

      intGame_Start=0;}

      if(Game_win_3(x/20,y/20))//判斷輸贏3{

      lblWin.setText(Get_qizi_color(color_Qizi)+“贏了!”);

      intGame_Start=0;}

      if(Game_win_4(x/20,y/20))//判斷輸贏4{

      lblWin.setText(Get_qizi_color(color_Qizi)+“贏了!”);

      intGame_Start=0;}

      3.3 測試結(jié)果

      a.進入游戲界面

      游戲開始的界面有三個選擇項,用戶可以選擇相應(yīng)的角色,選擇 完畢后點擊開始進入游戲。

      b.選擇角色,開始下棋

      首先達到五個棋子連在一塊的贏了,并在紅色區(qū)域顯示誰贏了!c.下完后,重新開始

      下完一盤后游戲停止,點擊重新開始,界面回到初始界面,選擇角色繼續(xù)游戲.d.游戲中點退出,自動判輸

      在下棋的過程當中誰中途退出,即點擊退出,系統(tǒng)自動判斷誰輸

      四、課程設(shè)計心得體會

      通過此次課程設(shè)計,將我本學(xué)期所學(xué)的JAVA知識得到鞏固和應(yīng)用,在設(shè)計的過程中我遇到了很到問題,不過在老師和同學(xué)們的幫助和自己的思考下還是很好的完成了。這此課程設(shè)計還讓我懂得了寫程序不能閉門造車,要努力拓寬知識面,開闊視野,拓展思維。它還讓我學(xué)會了在網(wǎng)上查閱那些無限的資料。由于自己的分析設(shè)計和程序經(jīng)驗不足,該系統(tǒng)設(shè)計和實現(xiàn)過程中,還有許多沒有完善的地方,比如用戶界面設(shè)計不夠美觀,異常出錯處理比較差等多方面問題,這些都有待進一步完善和提高。對于文中出現(xiàn)的不足和系統(tǒng)中出現(xiàn)的問題敬請老師指導(dǎo)。

      五、參考文獻

      1.吳其慶編著.Java程序設(shè)計實例教程.北京:冶金工業(yè)出版社 2.柳西玲.許斌編著.Java語言應(yīng)用開發(fā)基礎(chǔ).北京:清華大學(xué)出版社 3.丁振凡 Java 語言實用教程 :北京郵電大學(xué)出版社

      附錄(源代碼)

      import java.net.*;import java.io.*;import java.applet.*;import java.awt.*;import java.awt.event.*;import java.applet.Applet;import java.awt.Color;Public class wuziqi extends Applet implements ActionListener,MouseListener,MouseMotionListener,ItemListener{ int color_Qizi=0;//旗子的顏色標識 0:白子 1:黑子 int intGame_Start=0;//游戲開始標志 0未開始 1游戲中

      int intGame_Body[][]=new int[16][16];//設(shè)置棋盤棋子狀態(tài)

      int m=-1;Button b1=new Button(“開始”);Button b2=new Button(“重新開始”);Label lblWin=new Label(“ ”);Checkbox ckbHB[]=new Checkbox[3];Button exist = new Button(“退出”);CheckboxGroup ckgHB=new CheckboxGroup();public void init(){

      setLayout(null);

      addMouseListener(this);

      add(b1);

      b1.setBounds(330,50,80,30);

      b1.addActionListener(this);

      add(b2);

      b2.setBounds(330,90,80,30);

      b2.addActionListener(this);

      ckbHB[0]=new Checkbox(“執(zhí)白”,ckgHB,false);

      ckbHB[0].setBounds(320,20,60,30);

      ckbHB[1]=new Checkbox(“執(zhí)黑”,ckgHB,false);

      ckbHB[1].setBounds(380,20,60,30);

      ckbHB[2]=new Checkbox(“觀看”,ckgHB, false);

      add(ckbHB[0]);

      add(ckbHB[1]);

      add(ckbHB[2]);

      ckbHB[0].addItemListener(this);

      ckbHB[1].addItemListener(this);

      add(lblWin);

      lblWin.setBounds(330,180,80,30);

      lblWin.setBackground(Color.red);

      e.getY()<20 || e.getY()>300){

      lblWin.setText(“勝利者!”);//沒有顯示?

      ckbHB[2].setBounds(440, 20,60, 30);add(exist);

      exist.setBounds(330,130,80,30);exist.addActionListener(this);Game_start_csh();setSize(500,600);setVisible(true);}

      public void itemStateChanged(ItemEvent e){ if(ckbHB[0].getState())//選擇黑子還是白子 {

      color_Qizi=0;} else {

      color_Qizi=1;} }

      public void mousePressed(MouseEvent e){} public void mouseClicked(MouseEvent e){ Graphics g=getGraphics();int x1,y1;x1=e.getX();y1=e.getY();

      if(e.getX()<20 || e.getX()>300 ||

      return;}

      if(x1%20>10){

      x1+=10;}

      if(y1%20>10){

      y1+=10;}

      x1=x1/20*20;y1=y1/20*20;set_Qizi(x1,y1);m*=(-1)}

      public void actionPerformed(ActionEvent e){ Graphics g=getGraphics();if(e.getSource()==b1){

      Game_start();

      } else{

      // 輸了!“);

      贏了!”);

      Game_re();}

      if(e.getSource()==exist){

      Game_re();

      color_Qizi=m;

      lblWin.setText(Get_qizi_color(color_Qizi)+“

      intGame_Start=0;

      }

      }

      public void mouseEntered(MouseEvent e){} public void mouseExited(MouseEvent e){} public void mouseReleased(MouseEvent e){} public void mouseDragged(MouseEvent e){} public void mouseMoved(MouseEvent e){} public void paint(Graphics g){ draw_qipan(g);}

      public void set_Qizi(int x,int y){ //落子

      if(intGame_Start==0){//判斷游戲未開始

      return;}

      if(intGame_Body[x/20][y/20]!=0){

      return;}

      Graphics g=getGraphics();

      if(color_Qizi==1){//判斷黑子還是白子

      g.setColor(Color.black);

      color_Qizi=0;} else{

      g.setColor(Color.white);

      color_Qizi=1;}

      g.fillOval(x-10,y-10,20,20);

      intGame_Body[x/20][y/20]=color_Qizi+1;if(Game_win_1(x/20,y/20)){ //判斷輸贏1 lblWin.setText(Get_qizi_color(color_Qizi)+”

      intGame_Start=0;

      了!“);

      贏了!”);

      贏了!“);

      15*15

      }

      if(Game_win_2(x/20,y/20)){ //判斷輸贏2{

      lblWin.setText(Get_qizi_color(color_Qizi)+”贏

      intGame_Start=0;}

      if(Game_win_3(x/20,y/20)){ //判斷輸贏3

      lblWin.setText(Get_qizi_color(color_Qizi)+“

      intGame_Start=0;}

      if(Game_win_4(x/20,y/20)){ //判斷輸贏4

      lblWin.setText(Get_qizi_color(color_Qizi)+”

      intGame_Start=0;} }

      public String Get_qizi_color(int x){

      if(x==0){

      return “黑子”;} else {

      return “白子”;} }

      public void draw_qipan(Graphics G){ //畫棋盤 G.setColor(Color.lightGray);

      G.fill3DRect(10,10,300,300,true);G.setColor(Color.black);for(int i=1;i<16;i++){

      G.drawLine(20,20*i,300,20*i);

      G.drawLine(20*i,20,20*i,300);} }

      public void Game_start(){ //游戲開始

      intGame_Start=1;

      Game_btn_enable(false);

      b2.setEnabled(true);} public void Game_start_csh(){//游戲開始初始化

      intGame_Start=0;

      Game_btn_enable(true);

      b2.setEnabled(false);

      ckbHB[0].setState(true);

      for(int i=0;i<16;i++){

      for(int j=0;j<16;j++){

      intGame_Body[i][j]=0;

      }

      }

      lblWin.setText(“");} public void Game_re(){ //重新開始游戲

      repaint();

      Game_start_csh();} public void Game_btn_enable(boolean e){ //設(shè)置組件狀態(tài)

      b1.setEnabled(e);

      b2.setEnabled(e);

      ckbHB[0].setEnabled(e);

      ckbHB[1].setEnabled(e);} public boolean Game_win_1(int x,int y){ //橫向判斷輸贏

      int x1,y1,t=1;

      x1=x;

      y1=y;

      for(int i=1;i<5;i++){

      if(x1>15){

      break;

      }

      if(intGame_Body[x1+i][y1]==intGame_Body[x][y]){

      t+=1;

      }

      else{

      break;

      }

      }

      for(int i=1;i<5;i++){

      if(x1<1){){

      t+=1;

      }

      else{

      break;

      }

      }

      if(t>4){

      return true;

      }

      else{

      return false;

      } } public boolean Game_win_2(int x,int y){ //縱向判斷輸贏

      int x1,y1,t=1;

      x1=x;

      y1=y;

      for(int i=1;i<5;i++){

      if(x1>15){

      break;

      }

      if(intGame_Body[x1][y1+i]==intGame_Body[x][y]){

      t+=1;

      }

      else{

      break;

      }

      }

      for(int i=1;i<5;i++){

      if(x1<1){

      break;

      }

      if(intGame_Body[x1][y1-i]==intGame_Body[x][y]){

      t+=1;

      }

      break;

      }

      if(intGame_Body[x1-i][y1]==intGame_Body[x][y]

      else{

      break;

      }

      }

      if(t>4){

      return true;

      }

      else{

      return false;

      } } public boolean Game_win_3(int x,int y){ //左斜判斷輸贏

      int x1,y1,t=1;

      x1=x;

      y1=y;

      for(int i=1;i<5;i++){

      if(x1>15){

      break;

      }

      if(intGame_Body[x1+i][y1-i]==intGame_Body[x][y]){

      t+=1;

      }

      else{

      break;

      }

      }

      for(int i=1;i<5;i++){

      if(x1<1){

      break;

      }

      if(intGame_Body[x1-i][y1+i]==intGame_Body[x][y]){

      t+=1;

      }

      else{

      break;

      }

      }

      if(t>4){

      return true;

      }

      else{

      return false;

      } } public boolean Game_win_4(int x,int y){ //左斜判斷輸贏

      int x1,y1,t=1;

      x1=x;

      y1=y;

      for(int i=1;i<5;i++){

      if(x1>15){

      break;

      }

      if(intGame_Body[x1+i][y1+i]==intGame_Body[x][y]){

      t+=1;

      }

      else{

      break;

      }

      }

      for(int i=1;i<5;i++){

      if(x1<1){

      break;

      } if(intGame_Body[x1-i][y1-i]==intGame_Body[x][y]){

      t+=1;

      }

      else{

      break;

      }

      }

      if(t>4){

      return true;

      }

      else{

      return false;

      } } }

      第二篇:Java五子棋實現(xiàn)報告

      一、實驗?zāi)康?/p>

      (1)使用Java編寫五子棋程序

      (2)掌握編寫過程的一些類和類成員的使用,并且了解五子棋制作過程的一些步驟和了解一些算法。

      二、實驗環(huán)境

      在電子樓2樓,裝有My Eclipse 的計算機上進行

      三、實驗內(nèi)容

      編寫一個五子棋程序。程序主要實現(xiàn)以下功能:

      1.實現(xiàn)五子棋界面,要求人性化界面簡潔美觀; 2.實現(xiàn)黑白色輪流下棋功能,能提示下棋方; 3.實現(xiàn)連成五子自動判斷功能; 4.實現(xiàn)時間設(shè)置功能,認輸功能;

      核心代碼如下:

      1.我的第一步是設(shè)計界面。在這個過程的要使用到以下的步驟:

      1.使用MyEclipse 創(chuàng)建一個Project關(guān)于這個工程,加入兩個類,分別是ChessFrame和Chess,而ChessFrame是這個工程中最重要的一個部分。創(chuàng)建過程中要繼承JFrame類,并且要繼承Runnable 和 MouseListener 這兩個接口,分別是用來監(jiān)聽鼠標的移動和時間的變化。2.在給這個JFrame設(shè)置大小和顏色等一些東西。這里最主要的是使用了兩個函數(shù),是以前沒見過的:

      1.這個是用來設(shè)置默認的窗口關(guān)閉事件的

      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);2.這兩個是用來獲得屏幕的大小的

      Toolkit.getDefaultToolkit().getScreenSize().height;Toolkit.getDefaultToolkit().getScreenSize().width;

      3.把本地的背景圖片加到這個窗口中,作為這個窗口的背景圖:

      使用的到的類有BufferedImage和 ImageIO這兩個類,這兩個類是專門用來處理這種功能的。主要的代碼如下:

      BufferedImage bg = null;bg = ImageIO.read(new File(“e:/background.jpg”));g.drawImage(bg,0,0,this);這樣這個圖片就加到了這個窗口的背景去了。

      這里有一個改進就是雙緩沖技術(shù),可以防止閃屏。這個技術(shù)就是在界面和內(nèi)存都有一幅圖,我們的改動不是直接畫界面,而是內(nèi)存中先畫好然后把內(nèi)存中直接顯示出來,那樣就沒有了一前一后的,那就沒有了閃屏的事情發(fā)生了。

      4.就是畫棋盤和寫一些游戲信息:

      這步比較簡單,也沒什么可以說的,用到的一些畫線的函數(shù),和寫String的一些函數(shù)。

      以上做完以后就可以出現(xiàn)以下的界面:

      1.我的第二步就是增加對mouse的點擊和移動的處理,這樣以后就可以用來下棋。在這個過程的要使用到以下的步驟: 1.增加對mouse的監(jiān)視,然后重寫它的一些函數(shù):

      1.我們在ChessFrame的構(gòu)造函數(shù)中加入了addMouseListener()函數(shù),然后重寫關(guān)于這個的四個函數(shù),我們這這里不重寫所有的函數(shù),就改寫一個MousePress函數(shù)就可以了。改寫的代碼如下:

      public void mousePress(MouseEvent arg0){

      this.x = arg0.getX();this.y = arg0.getY();if(this.canplay)

      } this.repaint();現(xiàn)在要處理的就是加上棋子了,我在這個做了一下小改動可以更加準確的定位下棋的位置:

      if(x >= 10 && x <= 374 && y >= 72 && y <= 450){

      int sx1 =(this.x72)/ 20;int yx1 =(this.x72)% 20;if(yx1 >= 10){ } if(yy2 >= 10){ } sy2++;sx1++;就是這個,我們通過監(jiān)控鼠標的就可以得到點擊的X,Y坐標,我在這里通過對它求余,假如余數(shù)大于10(就是一個格子的一半)那就給+1,不然不變。后面的畫棋子是很簡單的一個過程,使用的是現(xiàn)成的函數(shù)(drawoval)

      2.這部要做的就是記錄棋子和五子連的判斷:

      1.我們通過一個數(shù)組int給保存棋子,如果是0就是沒子,1表示是黑子,2表示白子。在每次重繪的時候遍歷這個數(shù)組顯示,這樣就可以保存棋子了。2.判斷五子連起來然后獲勝的算法: 這個算法是鑒戒例子上的:

      private boolean isline(int x, int y, int xchange, int ychange, int color){

      int tempx = xchange;int tempy = ychange;int count = 1;while(x + xchange >= 0 && y + ychange >= 0

      && color == chess1[x + xchange][y + ychange]){ count++;if(xchange!= 0){ } if(ychange!= 0){ if(ychange < 0){ xchange++;

      }

      }

      }

      } ychange--;ychange++;} else { xchange = tempx;ychange = tempy;while(xychange >= 0

      } if(count >= 5){

      } return true;return false;} else { && color == chess1[xychange]){ count++;if(xchange!= 0){ } if(ychange!= 0){

      } if(ychange < 0){

      } ychange--;ychange++;} else { xchange++;中心思想就是要判斷就要判斷8個方向,其中有的只是相反的方向,我們使用關(guān)于X,Y的相對的變化來判斷,并且使用count來計數(shù),如果到了5個就可以判斷勝利啦。

      1.我的第三步就是時間的變化和一些鍵的設(shè)置

      1.關(guān)于時間的變化主要是在于線程的使用,這里我們這個JFrame它繼承了Runnable 這個接口,不過我們要重寫Run函數(shù),這個run函數(shù)的代碼如下: public void run(){

      if(this.second > 0){

      while(true){

      this.repaint();if(this.isblack){

      this.ss1--;

      if(this.ss1 == 0){

      JOptionPane

      .showMessageDialog(this, “黑方超時~~~~?¤游戲結(jié)束”);

      this.message1=“0:0:0”;

      {

      “白方超時~~~~?¤?¤游戲結(jié)束”);this.message2=“0:0:0”;this.canplay = false;

      {

      { }

      this.ss2--;

      if(this.ss2 == 0){

      this.message1 = this.ss

      1/ 3600 + “ : ”

      +(this.ss1 / 60this.ss1 / 60 *

      this.ss1=-1;

      this.canplay = false;

      }else if(this.ss1>0)3600 * 60)60this.ss2 / 3600 + “ : ”

      +(this.ss2this.ss2 / 3600 * 60 * 60);

      this.repaint();}else { }

      try {

      }

      Thread.sleep(1000);e.printStackTrace();} catch(InterruptedException e){ 這個函數(shù)是用來事時間的變化,所以每操作以后就讓線程sleep(1000)就可以了,那樣就是一秒鐘。這樣就可以倒計時了。2.現(xiàn)在我們要點擊一個按鈕要它有響應(yīng)。

      這里我們其實就沒用到什么button,那為什么會有反應(yīng)呢,因為我們通過鼠標的點擊范圍來確定要響應(yīng)什么函數(shù),這就是這里面的秘密.在public void mouseClicked(MouseEvent arg0)函數(shù)里有下面這些if的判斷

      if(x1 >= 404 && x1 <= 473 && y1 >= 74 && y1 <= 103)if(x1 >= 404 && x1 <= 473 && y1 >= 127 && y1 <= 155)if(x1 >= 404 && x1 <= 473 && y1 >= 179 && y1 <= 208)if(x1 >= 404 && x1 <= 473 && y1 >= 286 && y1 <= 316)if(x1 >= 404 && x1 <= 473 && y1 >= 338 && y1 <= 367)if(x1 >= 404 && x1 <= 473 && y1 >= 390 && y1 <= 419)這就是為了確定鼠標的范圍,然后相對調(diào)用函數(shù)。

      其他還有就是一些Debug處理,在程序已經(jīng)處理了,結(jié)果的還是蠻可以處理的,不過只能是人人對戰(zhàn)。

      四、實驗心得與小結(jié)

      這次試驗總的來說沒有想像中那么難,還有視屏的幫助,感覺起還是很容易動手的,不過由于自己沒上心,沒有做比較大的改動,最主要的人機的對戰(zhàn)沒做出來是滿遺憾的,不過通過這個試驗,讓我學(xué)習(xí)了不少的知識,比如雙緩沖,mouselistener 等許多許多的知識,還有關(guān)于五子棋算法的設(shè)計也是一部分。不管怎么說還是有學(xué)到知識的,沒什么改動,但對現(xiàn)有的知識的掌握還是很可以的。

      五、指導(dǎo)教師評議

      成績評定:

      指導(dǎo)教師簽名:

      第三篇:《JAVA語言》課程設(shè)計設(shè)計

      《面向?qū)ο蟪绦蛟O(shè)計JAVA》課程設(shè)計大綱

      課程名稱:面向?qū)ο蟪绦蛟O(shè)計JAVA 適用專業(yè):計算機及計算機相關(guān)專業(yè)

      學(xué)時數(shù):20(上機實驗)學(xué) 分: 1 配套教材:《JAVA語言與面向?qū)ο蟪绦蛟O(shè)計》印旻 編著 清華大學(xué)出版社 大綱編寫者:周斌 編寫日期:2008.2

      一、課程設(shè)計目的

      1、課程設(shè)計的教學(xué)任務(wù)是讓學(xué)生通過動手動腦解決實際問題,是學(xué)生學(xué)完課程后進行 的一次全面的綜合訓(xùn)練,是一個非常重要的教學(xué)環(huán)節(jié),通過課程設(shè)計,使學(xué)生經(jīng)受一次綜合動用所學(xué)知識,解決實際問題的方法。

      2、使學(xué)生掌握使用各種計算機資料和有關(guān)參考資料,提高學(xué)生的基本設(shè)計能力。

      3、培養(yǎng)學(xué)生理論聯(lián)系實際和獨立思考的能力,并激發(fā)學(xué)生的實際開發(fā)創(chuàng)造的意識和能力。

      二、課程設(shè)計要求

      1、利用JAVA進行應(yīng)用程序的設(shè)計。

      2、必須熟悉課程設(shè)計的各項內(nèi)容和要求,明確課程設(shè)計的目的、方法和步驟;

      3、設(shè)計中必須獨立地地完成每一階段的設(shè)計任務(wù),禁止抄襲他人的設(shè)計成果;

      4、所設(shè)計的程序必須滿足實際使用要求,編譯出可執(zhí)行的程序。

      5、要求程序結(jié)構(gòu)簡單,功能齊全,使用方便。

      三、課程設(shè)計內(nèi)容

      課程設(shè)計題目:

      1、已知銀行整存整取存款不同期限的年息利率分別為: 0.63% 期限一年

      0.66% 期限二年

      年息利率= 0.69% 期限三年 0.75% 期限五年

      0.84% 期限八年

      要求輸入存錢的本金和期限,求到期時能從銀行的到的利息與本金的合計。

      程序如下:

      import java.io.*;public class myWork1 { public static void main(String args[]){ try { int m,n;BufferedReader br=new BufferedReader(new InputStreamReader(System.in));System.out.print(“請輸入金額: ”);m=Integer.parseInt(br.readLine());System.out.print(“請輸入年限: ”);n=Integer.parseInt(br.readLine());System.out.println();switch(n){ case 1: System.out.println(“得到的總額為 ”+m*(1+n*0.0063));break;case 2: System.out.println(“得到的總額為 ”+m*(1+0.0066*n));break;case 3: System.out.println(“得到的總額為 ”+m*(1+0.0069*n));break;case 5: System.out.println(“得到的總額為 ”+m*(1+0.0075*n));break;case 8: System.out.println(“得到的總額為 ”+m*(1+0.0084*n));break;} } catch(IOException e){ System.out.println(e);} } } 截圖如下:

      2、輸入n值,打印邊長為n的空心正六邊形,其邊由“*”組成。

      3、編寫一個類,這個類同時求出n個學(xué)生成績的最高分、最低分、平均分以及超過平均分的人數(shù),并編寫主類完成:(1)輸入n個學(xué)生的成績;(2)調(diào)用此類進行統(tǒng)計;(3)輸出統(tǒng)計結(jié)果。

      4、編程實現(xiàn)實時動態(tài)運行的模擬時鐘。以下題目選做:

      5、編程實現(xiàn)約瑟夫問題。8個人站成一圈,從第1個人開始報數(shù),報到5的人出圈,第6個人再從1開始報。依次類推,求出圈的序列。

      6、編程實現(xiàn)俄羅斯方塊游戲。

      說明:可以自行選擇其他設(shè)計題目

      四、編寫課程設(shè)計報告書

      課程設(shè)計報告書要求:

      1、文字敘述清楚,結(jié)構(gòu)結(jié)構(gòu)簡潔明了,理論正確,程序功能完備。

      2、設(shè)計說明書要求文字工整,書寫整齊。

      3、附參考資料名稱說明。

      4、課程設(shè)計報告主要內(nèi)容: 1)題目 2)問題需求分析 3)總體設(shè)計 4)詳細設(shè)計

      5)測試數(shù)據(jù)和調(diào)試報告 6)小結(jié)

      五、成績評定方式

      根據(jù)平時設(shè)計完成質(zhì)量和課程設(shè)計報告確定成績。分優(yōu)秀、良好、中等、及格、不及格五檔。

      第四篇:Java課程設(shè)計報告

      課 程 設(shè) 計

      課程名稱 Java語言課程設(shè)計 題目名稱 人事管理系統(tǒng)的設(shè)計與實現(xiàn) 學(xué)生學(xué)院 應(yīng)用數(shù)學(xué)學(xué)院 專業(yè)班級 學(xué) 號 學(xué)生姓名 指導(dǎo)教師 劉科峰

      2014 年 10 月 29

      日 一.設(shè)計內(nèi)容

      自學(xué)Swing圖形界面設(shè)計和數(shù)據(jù)庫程序設(shè)計。開發(fā)用于某單位的人事管理系統(tǒng)。該系統(tǒng)要求實現(xiàn)以下功能:

      1.員工信息管理包括:員工信息一覽表、新員工的建立、修改 2.薪資福利管理:考勤與薪資的連動計算、薪資與福利的設(shè)置

      3.考勤假期管理:考勤項目錄入, 實現(xiàn)考勤信息的查詢、統(tǒng)計、匯總 4.人事報表管理:按照員工性別,數(shù)目,薪酬自動生成相關(guān)報表, 可自定義統(tǒng)計分析條件并可對歷史報表進行管理。

      設(shè)計亮點

      1.null布局方式

      Swing圖形界面設(shè)計中有很多布局方式,通過本次學(xué)習(xí)了解到了FlowLayout,BorderLayout,GridLayout以及null布局,就這四種布局方式而言,null布局的優(yōu)點在于可以將組建的位置精準到坐標值,可以把組件放到任意想放置的位置,另外可以通過null去設(shè)置組件的大小,相較于其他布局方式來說是一個很大的優(yōu)勢。但同時它的缺點在于不能根據(jù)Frame的大小變化而改變位置。

      2.組件部分屬性的設(shè)計

      Swing中有很多方法是用來實現(xiàn)組件屬性設(shè)置的,比如button.setVisible(false);按鈕通過調(diào)用這個方法實現(xiàn)不可見,這是我此次課程設(shè)計中的一個亮點,因為組件是沒有設(shè)置大小的方法的,只有依靠于相應(yīng)的布局方式才能改變它的大小,通過設(shè)置多幾個按鈕設(shè)為不可見,將所要可見按鈕實現(xiàn)大小以及位置的控制是一種很好的方法。

      二、設(shè)計方案

      1主界面(只列出界面設(shè)計方面的代碼)

      JPanel panel=new JPanel();JTable table=null;JButton ibtn=new JButton(“員工信息”);JButton cbtn=new JButton(“考勤管理”);JButton mbtn=new JButton(“薪資管理”);JButton tbtn=new JButton(“人事報表”);ImageIcon rtou = new ImageIcon(“rentou.jpg”);

      JLabel imgLabel=new JLabel(rtou);

      //上面代碼定義了一個面板與四個標簽,并引入了一個圖片

      panel.setLayout(new FlowLayout());//設(shè)置面板為流布局

      panel.add(ibtn);panel.add(cbtn);panel.add(mbtn);panel.add(tbtn);panel.setBackground(Color.GRAY);

      //將按鈕加到面板中,設(shè)置面板為灰色

      this.add(imgLabel,BorderLayout.CENTER);this.add(panel,BorderLayout.SOUTH);this.setBounds(300, 180, 600, 350);this.setVisible(true);this.getContentPane().setBackground(Color.GRAY);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/*圖片標簽以邊框布局放置在中間,將面板也以邊框布局放置在下面,可見,灰色,點擊關(guān)閉程序*/

      (2)查詢員工界面(只列出界面設(shè)計方面的代碼)

      Label idlabel = new JLabel(“ID”);JLabel namelabel = new JLabel(“姓名”);JLabel bumenlabel = new JLabel(“部門”);JLabel zhiweilabel = new JLabel(“職位”);

      JTextField idfiled = new JTextField(8);JTextField namefield = new JTextField(8);JComboBox bumenbox =new JComboBox();JComboBox zhiweubox = new JComboBox();

      JButton btn=new JButton(“查詢”);JButton ibtn=new JButton(“添加”)

      JPanel spanel=new JPanel();JPanel vpanel=new JPanel();

      /*定義和各個組件,4個標簽,兩個文本框,兩個復(fù)選框,兩個按鈕,兩個面板容器*/ spanel.setLayout(new FlowLayout());

      vpanel.setLayout(new FlowLayout(FlowLayout.CENTER,45,25));

      bumenbox.addItem(“");

      bumenbox.addItem(”管理部“);

      bumenbox.addItem(”生產(chǎn)部“);

      bumenbox.addItem(”業(yè)務(wù)部“);

      zhiweubox.addItem(”“);

      zhiweubox.addItem(”部長“);

      zhiweubox.addItem(”副部長“);

      zhiweubox.addItem(”普工“);

      spanel.add(idlabel);

      spanel.add(idfiled);

      spanel.add(namelabel);

      spanel.add(namefield);

      spanel.add(bumenlabel);

      spanel.add(bumenbox);

      spanel.add(zhiweilabel);

      spanel.add(zhiweubox);

      spanel.add(btn);

      vpanel.add(ibtn);

      spanel.setBackground(Color.GRAY);

      vpanel.setBackground(Color.GRAY);

      //將各個組件放進對應(yīng)面板,設(shè)置相關(guān)屬性

      this.add(spanel,BorderLayout.NORTH);

      this.add(vpanel,BorderLayout.SOUTH);

      this.setBounds(300, 180, 600, 350);

      this.setVisible(true);

      this.getContentPane().setBackground(Color.GRAY);

      //將面板以邊框布局放入框架中,設(shè)置屬性(3)增加員工信息界面

      JPanel panel=new JPanel();

      JLabel timeLabel=new JLabel(”時間“);JLabel allnumLabel=new JLabel(”員工總數(shù)“);

      JLabel staffMoLabel=new JLabel(”考勤“);JLabel entryLabel=new JLabel(”全勤“);

      JLabel quitLabel=new JLabel(”缺勤“);JLabel mwLabel=new JLabel(”性別比例“);

      JLabel manLabel=new JLabel(”男“);

      JLabel womanLabel=new JLabel(”女“);JLabel proportionLabel=new JLabel(”男女比例“);JLabel distributionLabel=new JLabel(”人員部門分布“);JLabel mdpLabel=new JLabel(”管理部“);

      JLabel pdpLabel=new JLabel(”生產(chǎn)部“);JLabel bdpLabel=new JLabel(”業(yè)務(wù)部“);JLabel xmLabel=new JLabel(”項目“);JLabel xzLabel=new JLabel(”細則“);JLabel stLabel=new JLabel(”數(shù)據(jù)統(tǒng)計“);

      JTextField timeFiled = new JTextField(8);

      JTextField allnumFiled = new JTextField(8);JTextField entryFiled = new JTextField(8);JTextField quitFiled = new JTextField(8);JTextField manFiled = new JTextField(8);JTextField womanFiled = new JTextField(8);JTextField proportionFiled = new JTextField(8);JTextField mdpFiled = new JTextField(8);JTextField pdpFiled = new JTextField(8);JTextField bdpFiled = new JTextField(8);// 定義所需組件

      public Selectrenshi(String tablename){

      super(”人事管理“);

      panel.setLayout(null);

      panel.setBackground(Color.GRAY);

      panel.add(xmLabel);

      panel.add(xzLabel);

      panel.add(stLabel);

      panel.add(timeLabel);

      panel.add(timeFiled);

      panel.add(allnumLabel);

      panel.add(allnumFiled);

      panel.add(staffMoLabel);

      panel.add(entryLabel);

      panel.add(entryFiled);

      panel.add(quitLabel);

      panel.add(quitFiled);

      panel.add(mwLabel);

      panel.add(manLabel);

      panel.add(manFiled);

      panel.add(womanLabel);

      panel.add(womanFiled);

      panel.add(proportionLabel);

      panel.add(proportionFiled);

      panel.add(distributionLabel);

      panel.add(mdpLabel);

      panel.add(mdpFiled);

      panel.add(pdpLabel);

      panel.add(pdpFiled);

      panel.add(bdpLabel);

      panel.add(bdpFiled);

      //將組件加到相應(yīng)面板中

      xmLabel.setBounds(120,20,100,30);

      xzLabel.setBounds(240,20,100,30);

      stLabel.setBounds(360,20,100,30);

      timeLabel.setBounds(120,50,100,30);

      timeFiled.setBounds(360,50,100,30);

      allnumLabel.setBounds(120,100,100,30);

      allnumFiled.setBounds(360,100,100,30);

      staffMoLabel.setBounds(120,150,100,30);

      entryLabel.setBounds(240,150,100,30);

      entryFiled.setBounds(360,150,100,30);

      quitLabel.setBounds(240,200,100,30);

      quitFiled.setBounds(360,200,100,30);

      mwLabel.setBounds(120,250,100,30);

      manLabel.setBounds(240,250,100,30);

      manFiled.setBounds(360,250,100,30);

      womanLabel.setBounds(240,300,100,30);

      womanFiled.setBounds(360,300,100,30);

      proportionLabel.setBounds(240,350,100,30);

      proportionFiled.setBounds(360,350,100,30);

      distributionLabel.setBounds(120,400,100,30);

      mdpLabel.setBounds(240,400,100,30);

      mdpFiled.setBounds(360,400,100,30);

      pdpLabel.setBounds(240,450,100,30);

      pdpFiled.setBounds(360,450,100,30);

      bdpLabel.setBounds(240,500,100,30);

      bdpFiled.setBounds(360,500,100,30);

      //采用null布局,設(shè)置組建坐標值

      this.add(panel,BorderLayout.CENTER);

      this.setBounds(300, 100, 600, 600);

      this.setVisible(true);

      this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

      this.getContentPane().setBackground(Color.GRAY);

      //將面板放入框架,設(shè)置相應(yīng)屬性(4)員工考勤界面

      JLabel idlabel = new JLabel(”ID“);JComboBox idbox =new JComboBox();CheckTable model = null;

      JButton wbtn=new JButton(”修改“);

      JButton cbtn=new JButton(”查詢“);JButton mbtn=new JButton(”創(chuàng)建薪資表“);JButton rbtn=new JButton(”創(chuàng)建人事表“);

      JScrollPane scrollpane = null;JPanel spanel=new JPanel();JPanel vpanel=new JPanel();JTable table=null;spanel.add(idbox);panel.add(wbtn);spanel.add(cbtn);vpanel.add(mbtn);vpanel.add(rbtn);spanel.setBackground(Color.GRAY);vpanel.setBackground(Color.GRAY);this.add(spanel,BorderLayout.NORTH);this.add(vpanel,BorderLayout.SOUTH);this.setBounds(300, 180, 600, 350);this.setVisible(true);this.getContentPane().setBackground(Color.GRAY);

      (5)選擇考勤表界面

      JLabel checklabel = new JLabel(”選擇考勤表“);JLabel newlabel = new JLabel(”創(chuàng)建考勤表“);JComboBox timebox =new JComboBox();JTextField newfield = new JTextField();JButton btn=new JButton(”確認“);JButton nbtn=new JButton(”創(chuàng)建");JPanel spanel=new JPanel();spanel.add(checklabel);

      spanel.add(timebox);

      spanel.add(btn);

      spanel.add(newlabel);

      spanel.add(newfield);

      spanel.add(nbtn);

      checklabel.setBounds(30,90,100,30);

      timebox.setBounds(180,90,100,30);

      btn.setBounds(360,90,100,30);

      newlabel.setBounds(30,200,100,30);

      newfield.setBounds(180,200,100,30);

      nbtn.setBounds(360,200,100,30);

      this.add(spanel);

      this.setBounds(300, 180, 600, 350);

      this.setVisible(true);

      三、結(jié)果和數(shù)據(jù)處理

      四、結(jié)論

      1.Swing圖形界面

      圖形用戶界面(GUI)是程序不可或缺的一部分,它便于用戶和程序的交互。在Swing界面中是以Frame為框架,采用合理的布局方式(FlowLayout,BorderLayout,GridLayout,null),將Panel加入框架之中,而實現(xiàn)界面的各個組件將調(diào)用各種方法設(shè)置自身屬性實行可視化界面以及加入到面板之中。再通過事件監(jiān)聽器實現(xiàn)事件的監(jiān)聽預(yù)處理機制。

      2.數(shù)據(jù)庫

      在這次課程設(shè)計中哦我主要負責Swing圖像界面,對于數(shù)據(jù)庫只做了最簡單的了解。程序中采用了最流行的關(guān)系型數(shù)據(jù)庫mysql,雪化了mysql的建立,刪除,與修改以及使用sql語言對數(shù)據(jù)庫進行一些簡單的操作,將按鈕等設(shè)置的監(jiān)聽事件與數(shù)據(jù)庫相連接。

      五、問題與討論

      1.組件的方法調(diào)用

      在這次課程設(shè)計中,用到了很多的組件,例如Button,Jlabel,TextField,ComBox,等。Swing圖形界面也確實提供了很多方法去設(shè)置相關(guān)組件的屬性,例如label.setVisible(false);設(shè)置標簽不可見等很多方法,只要查看API文檔幾乎就能實現(xiàn)很多功能,但是對于按鈕等最常見的組件來說設(shè)置大小如果不依靠相關(guān)布局方式很難設(shè)置,我在程序中之所以運用了很多的bull布局方式就是為了實現(xiàn)組件大小的設(shè)置,如果說能有一個方法直接設(shè)置組件大小而不受其他組件或容器影響就能使代碼很簡潔了。2.相對布局

      在編寫圖像界面的程序的時候,我用了很多的布局方式,有FlowLayout,BorderLayout,GrirLayout,null等,其中null布局用的最多。null布局的優(yōu)點在于可以將組建的位置精準到坐標值,可以把組件放到任意想放置的位置,另外可以通過null去設(shè)置組件的大小,相較于其他布局方式來說是一個很大的優(yōu)勢。但同時它的缺點在于不能根據(jù)Frame的大小變化而改變位置。其他三種布局方式雖然實現(xiàn)了歲Frame大小變動而改變組件大小及位置但是不容易控制,如果null布局能實現(xiàn)相對布局就是很好的一種布局方式了。

      第五篇:java課程設(shè)計報告

      《Java語言程序設(shè)計》

      題 目:指導(dǎo)老師:姓 名:專 業(yè):班 級:日 期:課程設(shè)計報告

      目 錄

      一、系統(tǒng)總體設(shè)計.......................................1

      (一)設(shè)計目標及完成功能..............................1

      (二)系統(tǒng)結(jié)構(gòu)設(shè)計...................................1

      二、數(shù)據(jù)庫設(shè)計........................................1

      三、詳細設(shè)計..........................................1(一)界面設(shè)計........................................1(二)系統(tǒng)設(shè)計........................................2(三)關(guān)鍵技術(shù)及算法..................................2

      四、測試..............................................2

      五、安裝使用說明.......................................2 總結(jié)(體會)..........................................2 參考文獻:............................................2

      《Java語言程序設(shè)計》課程設(shè)計報告

      一、系統(tǒng)總體設(shè)計

      (一)設(shè)計目標及完成功能

      此部分可以包括如下內(nèi)容:

      1.窗口功能說明:設(shè)計了幾個窗口,分別實現(xiàn)什么功能.2.菜單欄或工具欄說明:如果設(shè)計了菜單或工具欄,分別說明包括哪些項及其各自實現(xiàn)什么操作.……

      (二)系統(tǒng)結(jié)構(gòu)設(shè)計

      說明:要繪出系統(tǒng)結(jié)構(gòu)圖

      二、數(shù)據(jù)庫設(shè)計

      必須包含以下內(nèi)容:E-R圖(說明所有實體及其屬性)、表結(jié)構(gòu)列表(字段名、類型、主鍵、備注等)。

      沒有用到數(shù)據(jù)庫的不用寫此部分

      三、詳細設(shè)計

      (一)界面設(shè)計

      界面抓圖,圖要有編號和標題(格式:圖1 主界面圖),位于圖的下方居中對齊。

      《Java語言程序設(shè)計》課程設(shè)計報告

      (二)系統(tǒng)設(shè)計

      1.共設(shè)計了幾個類或接口,是否有繼承關(guān)系,各實現(xiàn)什么功能,繪圖(列表)說明。

      2.列表說明各類的方法及其功能。

      (三)關(guān)鍵技術(shù)及算法

      使用的主要算法分析、關(guān)鍵技術(shù)說明。如數(shù)據(jù)庫連接技術(shù)、加密解密算法等。

      四、測試

      五、安裝使用說明

      1.系統(tǒng)配置說明。是否需要配置數(shù)據(jù)源或安裝補丁包、導(dǎo)入數(shù)據(jù)庫等。

      2.登錄的用戶名、密碼。3.其他特殊說明。

      總結(jié)(體會)

      (談?wù)劚敬握n程設(shè)計的心得體會)

      參考文獻:

      [1] 竇萬峰.軟件工程方法與實踐[M].機械工業(yè)出版社,2009 [2] 李兆鋒,張得生.Java Web項目開發(fā)案例精粹[M].電子工業(yè)出版社,2010 [3] 沈澤剛,秦玉平.Java Web編程技術(shù)[M].清華大學(xué)出版社,2009

      《Java語言程序設(shè)計》課程設(shè)計報告

      包括書籍、網(wǎng)站、論壇等。

      說明:(以下內(nèi)容作為要求)

      正文部分一律用小四號字,宋體,1.5倍行距。一級大標題黑體四號字靠左,加粗。二級大標題黑體四號靠左,不加粗。

      參考文獻:

      (要求:五號字,宋體,左對齊,懸掛縮進,單倍行距。按作者、書名、出版社、出版時間格式逐一列出)

      下載五子棋JAVA語言課程設(shè)計報告word格式文檔
      下載五子棋JAVA語言課程設(shè)計報告.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔相關(guān)法律責任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        Java課程設(shè)計報告

        《Java課程實習(xí)》報告 題目 學(xué)號 學(xué)生姓名 音樂播放器 201011621335 201011621329 200811621320 朱劍峰 薛文博 劉彬 聯(lián)系方式 *** *** *** 所在......

        Java語言課程設(shè)計題目(五篇模版)

        Java語言課程設(shè)計 設(shè)計目的: 1、復(fù)習(xí)、鞏固Java語言的基礎(chǔ)知識,進一步加深對Java語言的理解和掌握; 2、課程設(shè)計為學(xué)生提供了一個既動手又動腦,獨立實踐的機會,將課本上的理論知......

        《Java語言程序設(shè)計》課程設(shè)計指導(dǎo)書

        《Java語言程序設(shè)計》課程設(shè)計指導(dǎo)書 一、教學(xué)目標 《Java語言程序設(shè)計》是計算機類專業(yè)和信息安全專業(yè)的專業(yè)課。Java語言是目前廣為流行的面向?qū)ο蟪绦蛟O(shè)計語言,適用于網(wǎng)絡(luò)......

        數(shù)據(jù)結(jié)構(gòu)課程設(shè)計-五子棋[★]

        姓 名: 劉旭 學(xué) 院: 計算機與通信學(xué)院班 級: 通信工程101班指導(dǎo)老師: 文志誠 目錄 一、需求分析 ..............................................................................

        JAVA課程設(shè)計報告_完整版

        《JAVA面向?qū)ο蟪绦蛟O(shè)計》 課 程 設(shè) 計 報 告 (2011-2012學(xué)年第2學(xué)期)系 別: 專業(yè)名稱: 廈門理工學(xué)院計算機科學(xué)與技術(shù)系 10級網(wǎng)絡(luò)工程1班 課程設(shè)計科目: 《JAVA面向?qū)ο蟪绦蛟O(shè)計......

        java課程設(shè)計報告—計算器

        1 --計算器 Java實習(xí)報告目錄一、課程設(shè)計目的 ................................................................................................................. 2......

        Java聊天室課程設(shè)計報告[最終定稿]

        UML課程設(shè)計 題 目網(wǎng)絡(luò)聊天程序開發(fā)設(shè)計與實現(xiàn) 學(xué) 號:201515614376 姓 名: 衛(wèi)國輝 指導(dǎo)教師: 完成時間:2017年 12月 0 目錄 1.摘要...............................................

        java聊天室課程設(shè)計報告

        課程設(shè)計報告 2011 ~ 2012 學(xué)年 第 一 學(xué)期 學(xué) 號 20104053020 姓 名 胡勇昌 院 系 信息工程與技術(shù) 專 業(yè) 計算機工程系 課 程 名 稱 JAVA程序設(shè)計 課程設(shè)計名稱 局域網(wǎng)內(nèi)的......