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

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

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

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

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

      C#程序設(shè)計(jì)案例評(píng)語(yǔ)

      時(shí)間:2019-05-12 06:21:02下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫寫幫文庫(kù)小編為你整理了多篇相關(guān)的《C#程序設(shè)計(jì)案例評(píng)語(yǔ)》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫(kù)還可以找到更多《C#程序設(shè)計(jì)案例評(píng)語(yǔ)》。

      第一篇:C#程序設(shè)計(jì)案例評(píng)語(yǔ)

      C#程序設(shè)計(jì)案例評(píng)語(yǔ):

      優(yōu)秀:該生在課程實(shí)習(xí)過程中,能夠按照實(shí)習(xí)任務(wù)書的要求,完整的開發(fā)記事本及計(jì)算器程序,設(shè)計(jì)過程中能主動(dòng)查閱資料,獨(dú)立完成程序開發(fā),軟件設(shè)計(jì)界面良好,功能完整,實(shí)習(xí)報(bào)告內(nèi)容詳細(xì)。實(shí)習(xí)過程中表現(xiàn)突出。

      良好:該生在課程實(shí)習(xí)過程中,能夠按照實(shí)習(xí)任務(wù)書的要求,完整的開發(fā)記事本及計(jì)算器程序,設(shè)計(jì)過程中能獨(dú)立完成程序開發(fā),軟件設(shè)計(jì)界面良好,功能完整,實(shí)習(xí)報(bào)告內(nèi)容詳細(xì)。實(shí)習(xí)過程中表現(xiàn)良好。

      中等:該生在課程實(shí)習(xí)過程中,能夠按照實(shí)習(xí)任務(wù)書的要求,比較完整的開發(fā)記事本及計(jì)算器程序,設(shè)計(jì)過程中能在老師的指導(dǎo)下完成程序開發(fā),功能完整,實(shí)習(xí)報(bào)告內(nèi)容完整。實(shí)習(xí)過程中表現(xiàn)一般。

      及格:該生在課程實(shí)習(xí)過程中,基本能夠按照實(shí)習(xí)任務(wù)書的要求,比較完整的開發(fā)記事本及計(jì)算器程序,設(shè)計(jì)過程中能在老師和同學(xué)的指導(dǎo)下完成程序開發(fā),功能基本完整,實(shí)習(xí)報(bào)告內(nèi)容完整。實(shí)習(xí)過程中表現(xiàn)一般。

      第二篇:C#程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)報(bào)告書寫要求

      實(shí)驗(yàn)報(bào)告原則上要求學(xué)生手寫,要求書寫工整。若因課程特點(diǎn)需打印的,標(biāo)題采用四號(hào)黑體,正文采用小四號(hào)宋體,單倍行距。紙張一律采用A4的紙張。

      實(shí)驗(yàn)報(bào)告書寫說明

      實(shí)驗(yàn)報(bào)告中實(shí)驗(yàn)?zāi)康暮鸵蟆?shí)驗(yàn)儀器和設(shè)備、實(shí)驗(yàn)內(nèi)容與過程、實(shí)驗(yàn)結(jié)果與分析這四項(xiàng)內(nèi)容為必需項(xiàng)。教師可根據(jù)學(xué)科特點(diǎn)和實(shí)驗(yàn)具體要求增加項(xiàng)目。

      填寫注意事項(xiàng)

      (1)細(xì)致觀察,及時(shí)、準(zhǔn)確、如實(shí)記錄。(2)準(zhǔn)確說明,層次清晰。

      (3)盡量采用專用術(shù)語(yǔ)來說明事物。

      (4)外文、符號(hào)、公式要準(zhǔn)確,應(yīng)使用統(tǒng)一規(guī)定的名詞和符號(hào)。(5)應(yīng)獨(dú)立完成實(shí)驗(yàn)報(bào)告的書寫,嚴(yán)禁抄襲、復(fù)印,一經(jīng)發(fā)現(xiàn),以零分論處。

      實(shí)驗(yàn)報(bào)告批改說明

      實(shí)驗(yàn)報(bào)告的批改要及時(shí)、認(rèn)真、仔細(xì),一律用紅色筆批改。實(shí)驗(yàn)報(bào)告的批改成績(jī)采用五級(jí)記分制或百分制,按《金陵科技學(xué)院課堂教學(xué)實(shí)施細(xì)則》中作業(yè)批閱成績(jī)?cè)u(píng)定要求執(zhí)行。

      實(shí)驗(yàn)報(bào)告裝訂要求

      實(shí)驗(yàn)批改完畢后,任課老師將每門課程的每個(gè)實(shí)驗(yàn)項(xiàng)目的實(shí)驗(yàn)報(bào)告以自然班為單位、按學(xué)號(hào)升序排列,裝訂成冊(cè),并附上一份該門課程的實(shí)驗(yàn)大綱。

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)項(xiàng)目名稱: C#基礎(chǔ)編程 實(shí)驗(yàn)學(xué)時(shí): 6 同組學(xué)生姓名: 實(shí)驗(yàn)地點(diǎn): 1318 實(shí)驗(yàn)日期: 10月5日-10月19日 實(shí)驗(yàn)成績(jī): 批改教師: 批改時(shí)間:

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)1 C#基礎(chǔ)編程

      一、實(shí)驗(yàn)?zāi)康?/p>

      1、熟悉Visual Studio.NET開發(fā)環(huán)境。

      2、掌握C#應(yīng)用程序的基本操作過程。

      3、掌握C#的數(shù)據(jù)類型,運(yùn)算符以及表達(dá)式的使用。

      4、掌握分支和循環(huán)語(yǔ)句的使用方法。

      5、掌握一維數(shù)組,二維數(shù)組及數(shù)組型數(shù)組的使用。

      二、實(shí)驗(yàn)要求

      (1)編寫程序要規(guī)范、正確,上機(jī)調(diào)試過程和結(jié)果要有記錄(2)做完實(shí)驗(yàn)后給出本實(shí)驗(yàn)的實(shí)驗(yàn)報(bào)告。

      三、實(shí)驗(yàn)設(shè)備、環(huán)境

      安裝有Visual Studio.NET軟件。

      四、實(shí)驗(yàn)步驟

      1、分析題意。

      2、根據(jù)題目要求,新建項(xiàng)目。

      3、編寫并輸入相關(guān)的程序代碼。

      5、運(yùn)行與調(diào)試項(xiàng)目。

      6、保存項(xiàng)目。

      五、實(shí)驗(yàn)內(nèi)容

      1、編寫一個(gè)簡(jiǎn)單的控制臺(tái)應(yīng)用程序,打印一行文字(如你的姓名)。

      using System;using System.Collections.Generic;using System.Linq;using System.Text;

      namespace one.first {

      class Program

      {

      static void Main(string[] args)

      {

      System.Console.WriteLine(“我叫王蕾!”);

      }

      } }

      2、編寫一個(gè)簡(jiǎn)單的Windows應(yīng)用程序,在窗體Load事件中書寫代碼,標(biāo)簽中顯示你的姓名。

      using System;using System.Collections.Generic;using System.ComponentModel;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;

      namespace one.second {

      public partial class Form1 : Form

      {

      public Form1()

      {

      InitializeComponent();

      }

      private void Form1_Load(object sender, EventArgs e)

      {

      this.Text = “Windows 程序”;

      Label lblShow = new Label();

      lblShow.Location = new Point(20, 30);

      lblShow.AutoSize = true;

      lblShow.Text = “王蕾!”;

      this.Controls.Add(lblShow);

      }

      } }

      3、編寫一個(gè)一個(gè)程序,用來判斷輸入的是大寫字母,小寫字母,數(shù)字還是其他的字符。

      using System;using System.Collections.Generic;using System.Text;

      namespace one.third {

      class Program

      {

      static void Main(string[] args)

      {

      Console.WriteLine(“請(qǐng)輸入一個(gè)字符:”);

      char c = Convert.ToChar(Console.ReadLine());

      if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))

      Console.WriteLine(“這是一個(gè)字母”);

      if(char.IsDigit(c))

      Console.WriteLine(“這是一個(gè)數(shù)字”);

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      }

      } }

      4、分別用while,do-while,for循環(huán)求1到100的和。

      using System;using System.Collections.Generic;using System.Text;

      namespace one.forth.one {

      class Program

      {

      static void Main(string[] args)

      {

      int i = 1, sum = 0;

      while(i <= 100)

      {

      sum = sum + i;

      i++;

      }

      Console.WriteLine(“1到100的自然數(shù)之和為:” + sum);

      }

      } } using System;using System.Collections.Generic;using System.Text;

      namespace one.forth.two {

      class Program

      {

      static void Main(string[] args)

      {

      int i = 1, sum = 0;

      do

      {

      sum = sum + i;

      i++;

      }

      while(i <= 100);

      Console.WriteLine(“1到100的自然數(shù)的和為:” + sum);

      }

      }

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      } using System;using System.Collections.Generic;using System.Text;

      namespace one.forth.three {

      class Program

      {

      static void Main(string[] args)

      {

      int i , sum = 0;

      for(i = 1;i <= 100;i++)

      {

      sum = sum + i;

      }

      Console.WriteLine(“1到100的自然數(shù)的和為:” + sum);

      }

      } }

      5、定義一個(gè)一維數(shù)組,用隨機(jī)數(shù)為此賦值,用foreach循環(huán)輸出其中的內(nèi)容。

      using System;using System.Collections.Generic;using System.Linq;using System.Text;

      namespace first.five {

      class Program

      {

      static void Main(string[] args)

      {

      int[] a = {0,1,2,3,4};

      foreach(int i in a)

      {

      Console.WriteLine(a[i]);

      }

      }

      } }

      6、實(shí)現(xiàn)二維數(shù)組的輸入和輸出。

      using System;using System.Collections.Generic;using System.Linq;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      using System.Text;

      namespace first.six {

      class Program

      {

      static void Main(string[] args)

      {

      int[,] a = new int[2, 3] { { 1, 2, 3 }, { 4, 5, 6 } };

      {

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

      {

      for(int j = 0;j < 3;j++)

      { Console.WriteLine(a[i, j]);}

      }

      }

      }

      } }

      7、實(shí)現(xiàn)數(shù)組型數(shù)組的輸入和輸出。

      using System;using System.Collections.Generic;using System.Linq;using System.Text;

      namespace first.seven {

      class Program

      {

      static void Main(string[] args)

      {

      int[][] a = new int[][] { new int[] { 1, 2, 3 }, new int[] { 4, 5, 6 } };

      for(int i = 0;i < a.Length;i++)

      {

      for(int j = 0;j < a[i].Length;j++)

      {

      Console.WriteLine(a[i][j]);

      }

      }

      }

      } }

      六、實(shí)驗(yàn)體會(huì)(遇到問題及解決辦法,編程后的心得體會(huì))

      剛開始編程的時(shí)候覺得無(wú)從下手,盡管我們已經(jīng)學(xué)了好幾種高級(jí)編程語(yǔ)言,但每個(gè)都

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      有其獨(dú)特的地方,稍不留神就會(huì)混淆。

      通過這次實(shí)驗(yàn),我體會(huì)到課后復(fù)習(xí)鞏固的重要性。在編程的時(shí)候,很多內(nèi)容都不記得,需要去翻書。不得不說,實(shí)驗(yàn)是鞏固課程的好方法!本次實(shí)驗(yàn),我熟悉Visual Studio.NET開發(fā)環(huán)境;掌握了C#應(yīng)用程序的基本操作過程;掌握了C#的數(shù)據(jù)類型,運(yùn)算符以及表達(dá)式的使用;掌握了分支和循環(huán)語(yǔ)句的使用方法以及一維數(shù)組,二維數(shù)組及數(shù)組型數(shù)組的使用。

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)項(xiàng)目名稱: 類與對(duì)象 實(shí)驗(yàn)學(xué)時(shí): 6 同組學(xué)生姓名: 實(shí)驗(yàn)地點(diǎn): 1318 實(shí)驗(yàn)日期: 10月26日-11月9日 實(shí)驗(yàn)成績(jī): 批改教師: 批改時(shí)間:

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)2 類與對(duì)象

      一、實(shí)驗(yàn)?zāi)康?、要?/p>

      (1)掌握類的定義和使用;

      (2)掌握類的數(shù)據(jù)成員,屬性的定義和使用;

      (3)掌握方法的定義,調(diào)用和重載以及方法參數(shù)的傳遞;(4)掌握構(gòu)造函數(shù)的定義和使用。

      二、實(shí)驗(yàn)要求

      (1)編寫程序要規(guī)范、正確,上機(jī)調(diào)試過程和結(jié)果要有記錄;(2)做完實(shí)驗(yàn)后給出本實(shí)驗(yàn)的實(shí)驗(yàn)報(bào)告。

      三、實(shí)驗(yàn)設(shè)備、環(huán)境

      安裝有Visual Studio.NET軟件。

      四、實(shí)驗(yàn)步驟

      1、分析題意;

      2、根據(jù)題目要求,新建項(xiàng)目;

      3、編寫并輸入相關(guān)的程序代碼;

      5、運(yùn)行與調(diào)試項(xiàng)目;

      6、保存項(xiàng)目。

      五、實(shí)驗(yàn)內(nèi)容

      1、定義一個(gè)方法,實(shí)現(xiàn)兩個(gè)數(shù)的交換(分別把參數(shù)按值傳遞和按引用傳遞)。

      using System;using System.Collections.Generic;using System.Text;

      namespace second.one {

      class Program

      {

      static void Main(string[] args)

      {

      Swaper s = new Swaper();

      Console.WriteLine(“輸入x的值:”);

      int a = Convert.ToInt32(Console.ReadLine());

      Console.WriteLine(“輸入y的值:”);

      int b=Convert.ToInt32(Console.ReadLine());

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      Console.WriteLine(s.Swap(a, b));

      Console.WriteLine(s.Swap(ref a,ref b));

      }

      class Swaper

      {

      public string Swap(int x, int y)

      {

      int temp;

      temp = x;

      x = y;

      y = temp;

      return 后:x={0},y={1}“,x,y);

      }

      public string Swap(ref int x, ref int y)

      {

      int temp;

      temp = x;

      x = y;

      y = temp;

      return string.Format(”按引用傳參交換之后:x={0},y={1}“, x, y);

      }

      }

      } }

      2、定義一個(gè)方法,實(shí)現(xiàn)數(shù)組的排序。using System;using System.Collections.Generic;using System.Text;

      namespace second.two {

      class Program

      {

      string.Format(”

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      public class sort

      {

      public void change(int[] a)

      {

      Console.WriteLine(“排序前,數(shù)組順序?yàn)椋骸?;

      show(a);

      int i, j, m;

      for(i = 0;i < 10;i++)

      {

      m = a[i];

      j = ib;

      }

      }

      static void Main(string[] args)

      {

      sum s = new sum();

      int a = 10;

      int b = 3;

      int m, n;

      s.ab(out m, out n, a, b);

      Console.WriteLine(“{0}+{1}={2};{0}-{1}={3}”,a,b,m,n);

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      }

      } }

      5、用構(gòu)造函數(shù)重載,實(shí)現(xiàn)矩形的面積,圓的面積,梯形的面積;

      using System;using System.Collections.Generic;using System.Linq;using System.Text;

      namespace secong.five {

      class Program

      {

      public class square

      {

      public double area;

      public square(){ }

      public square(double a)

      {

      area = a * a * 3.14;

      }

      public square(double a, double b)

      {

      area = a * b;

      }

      public square(double a, double b, double h)

      {

      area =(a + b)/ 2 * h;

      }

      }

      static void Main(string[] args)

      {

      double a, b, h,area;

      a = 2;b = 5;h = 3;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      square s = new square(a,b);

      Console.WriteLine(“求矩形面積,長(zhǎng)為a={0},寬為b={1},面積area={2}”,a,b,s.area);

      square i = new square(a);

      Console.WriteLine(“求圓形面積,半徑a={0},面積area={1}”, a, i.area);

      square j = new square(a, b, h);

      Console.WriteLine(“求梯形面積,上底為a={0},下底為b={1},高為h={2}面積area={3}”, a, b,h, j.area);

      }

      } }

      6、設(shè)計(jì)一個(gè)windows應(yīng)用程序,在該程序中定義一個(gè)學(xué)生類和班級(jí)類,以處理每個(gè)學(xué)生的學(xué)號(hào),姓名,語(yǔ)文,數(shù)學(xué)和英語(yǔ)成績(jī),要求:

      1)能查詢每個(gè)學(xué)生的總成績(jī)。2)能顯示全班前三名的名單。

      3)能顯示單科成績(jī)最高分和不及格的學(xué)生名單。4)能統(tǒng)計(jì)全班學(xué)生的平均成績(jī)。

      5)能顯示各科成績(jī)不同分?jǐn)?shù)段的學(xué)生人數(shù)的百分比。

      Student類: using System;using System.Collections.Generic;using System.Text;namespace Test2_6 {

      public class Student

      {

      public string stuNo;

      public string name;

      public double chinese;

      public double math;

      public double english;

      public double sumScore

      {

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      get { return chinese + math + english;}

      }

      } } StudentList類: using System;using System.Collections.Generic;using System.Text;namespace Test2_6 {

      public class StudentList:Student

      {

      int snums;

      public Student[] stu=new Student[50];

      public StudentList()

      {

      snums = 0;

      }

      public void addstu(Student s)

      {

      stu[snums] = s;

      snums++;

      }

      public int searchstu(string name)

      {

      int i;

      for(i = 0;i < snums;i++)

      {

      if(stu[i].name == name)break;

      }

      if(i == snums)return-1;

      else return i;

      }

      //給所有成績(jī)排序,用后面實(shí)現(xiàn)前三名的排名

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      public void ProThree()

      {

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

      {

      int k = i;

      for(int j = i + 1;j < snums;j++)

      if(stu[j].sumScore > stu[k].sumScore)k = j;

      if(k!= i)

      {

      Student temp;

      temp = stu[k];

      stu[k] = stu[i];

      stu[i] = temp;

      }

      }

      }

      //顯示單科成績(jī)的最高分

      public int HighScore(int k)

      {

      int p = 0;

      if(k == 0)

      {

      for(int i = 1;i < snums;i++)

      if(stu[i].math > stu[p].math)p = i;

      }

      else if(k == 1)

      {

      for(int i = 1;i < snums;i++)

      if(stu[i].chinese > stu[p].chinese)p = i;

      }

      else

      {

      for(int i = 1;i < snums;i++)

      if(stu[i].chinese > stu[p].chinese)p = i;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      }

      return p;

      }

      //顯示不及格名單

      public string BuhgName(int k)

      {

      string name=“ ”;

      if(k == 0)

      {

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

      if(stu[i].math < 60)name +=stu[i].name+“n”;

      }

      else if(k == 1)

      {

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

      if(stu[i].chinese < 60)name += stu[i].name + “n”;

      }

      else

      {

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

      if(stu[i].english < 60)name += stu[i].name + “n”;

      }

      return name;

      }

      public string getHL()

      {

      string Maxer = “ ”, Loser = “ ”;

      Maxer += “單科數(shù)學(xué)最高:” + stu[HighScore(0)].name + “n”;

      Maxer += “ 單科語(yǔ)文最高:” + stu[HighScore(1)].name + “n”;

      Maxer += “ 單科英語(yǔ)最高:” + stu[HighScore(2)].name + “n”;

      Loser += “單科數(shù)學(xué)掛科名單:” +BuhgName(0)+ “n”;

      Loser += “單科語(yǔ)文掛科名單:” + BuhgName(1)+ “n”;

      Loser += “單科英語(yǔ)掛科名單:” + BuhgName(2)+ “n”;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      return Maxer + “n” + Loser;

      }

      //全班的平均成績(jī)

      public string SumScore()

      {

      double sum = 0;

      double avg=0;

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

      {

      sum = sum + stu[i].sumScore;

      }

      avg = sum / snums;

      return “班級(jí)總分平均分:”+avg;

      }

      //各科成績(jī)不同分?jǐn)?shù)段的學(xué)生百分比

      //英語(yǔ)成績(jī)各分?jǐn)?shù)段百分比

      public string PerC()

      {

      double per1, per2, per3, per4, per5;

      double sumC1 = 0, sumC2 = 0, sumC3 = 0, sumC4 = 0, sumC5 = 0;

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

      {

      if((stu[i].chinese > 90)&&(stu[i].chinese <= 100))

      {

      sumC1++;

      }

      else if((80 <= stu[i].chinese)&&(stu[i].chinese < 90))

      {

      sumC2++;

      }

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      else if((70<=stu[i].chinese)&&(stu[i].chinese < 80))

      {

      sumC3++;

      }

      else if((60<=stu[i].chinese)&&(stu[i].chinese < 70))

      {

      sumC4++;

      }

      else

      {sumC5++;}

      }

      per1 = sumC1 / snums;

      per2 = sumC2 / snums;

      per3 = sumC3 / snums;

      per4 = sumC4 / snums;

      per5 = sumC5 / snums;

      return “語(yǔ)文成績(jī)百分比:”+“n”+“90~100:”+per1+“ 80~90:”+per2+“ 80~70:”+per3+“ 70~60:”+per4+“ 60以下的:”+per5;

      }

      //數(shù)學(xué)成績(jī)各分?jǐn)?shù)段百分比

      public string PerM()

      {

      double per1, per2, per3, per4, per5;

      double sumC1 = 0, sumC2 = 0, sumC3 = 0, sumC4 = 0, sumC5 = 0;

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

      {

      if((stu[i].math> 90)&&(stu[i].math <= 100))

      {

      sumC1++;

      }

      else if((80 <= stu[i].math)&&(stu[i].math < 90))

      {

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      sumC2++;

      }

      else if((70 <= stu[i].math)&&(stu[i].math < 80))

      {

      sumC3++;

      }

      else if((60 <= stu[i].math)&&(stu[i].math < 70))

      {

      sumC4++;

      }

      else

      { sumC5++;}

      }

      per1 = sumC1 / snums;

      per2 = sumC2 / snums;

      per3 = sumC3 / snums;

      per4 = sumC4 / snums;

      per5 = sumC5 / snums;

      return string.Format(“數(shù)學(xué)成績(jī)百分比:” + “n” + “90~100:” + per1 + “ 80~90:” + per2 + “ 80~70:” + per3 + “ 70~60:” + per4 + “ 60以下的:” + per5);

      }

      //英語(yǔ)成績(jī)各分?jǐn)?shù)段百分比

      public string PerE()

      {

      double per1, per2, per3, per4, per5;

      double sumC1 = 0, sumC2 = 0, sumC3 = 0, sumC4 = 0, sumC5 = 0;

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

      {

      if((stu[i].english > 90)&&(stu[i].english <= 100))

      {

      sumC1++;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      }

      else if((80 <= stu[i].english)&&(stu[i].english < 90))

      {

      sumC2++;

      }

      else if((70 <= stu[i].english)&&(stu[i].english < 80))

      {

      sumC3++;

      }

      else if((60 <= stu[i].english)&&(stu[i].english < 70))

      {

      sumC4++;

      }

      else

      { sumC5++;}

      }

      per1 = sumC1 / snums;

      per2 = sumC2 / snums;

      per3 = sumC3 / snums;

      per4 = sumC4 / snums;

      per5 = sumC5 / snums;

      return string.Format(“數(shù)學(xué)成績(jī)百分比:” + “n” + “90~100:” + per1 + “ 80~90:” + per2 + “ 80~70:” + per3 + “ 70~60:” + per4 + “ 60以下的:” + per5);

      }

      } } From窗體代碼: using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      using System.Windows.Forms;namespace Test2_6 {

      public partial class Form1 : Form

      {

      public Form1()

      {

      InitializeComponent();

      }

      public StudentList sl = new StudentList();

      private void btnAdd_Click(object sender, EventArgs e)

      {

      Student s = new Student();

      s.stuNo = txtStuNo.Text;

      s.name = txtName.Text;

      s.chinese = Convert.ToDouble(txtChina.Text);

      s.math = Convert.ToDouble(txtMath.Text);

      s.english = Convert.ToDouble(txtEng.Text);

      sl.addstu(s);

      MessageBox.Show(“添加成功”);

      }

      private void btnSearch_Click(object sender, EventArgs e)

      {

      int pos = sl.searchstu(this.textBox1.Text);

      if(pos!=-1)

      {

      label7.Text = this.textBox1.Text + “的總成績(jī):sl.stu[pos].sumScore;

      }

      else { MessageBox.Show(”不存在這個(gè)人!“);}

      }

      private void btnFinish_Click(object sender, EventArgs e)

      {

      label7.Text = ”前3名:“+”n“;

      ” + 金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

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

      {

      sl.ProThree();

      label7.Text+= sl.stu[i].name+“n”;

      }

      label7.Text += sl.getHL()+“n”;

      label7.Text += Convert.ToString(sl.SumScore())+“n”;

      label7.Text += sl.PerC()+“n”;

      label7.Text += sl.PerM()+“n”;

      label7.Text += sl.PerE()+“n”;

      }

      } }

      六、實(shí)驗(yàn)體會(huì)(遇到問題及解決辦法,編程后的心得體會(huì))

      通過本次實(shí)驗(yàn),我掌握了類的定義與使用;掌握了類的數(shù)據(jù)成員,屬性的定義和使用;掌握了方法的定義,調(diào)用和重載以及方法參數(shù)的傳遞以及構(gòu)造函數(shù)的定義和使用。值得注意的是:本次實(shí)驗(yàn)中return的使用以及所在的位置,類型轉(zhuǎn)換時(shí)也經(jīng)常用到

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)項(xiàng)目名稱: 繼承與多態(tài) 實(shí)驗(yàn)學(xué)時(shí): 6 同組學(xué)生姓名: 實(shí)驗(yàn)地點(diǎn): 1318 實(shí)驗(yàn)日期: 11月16日-11月30日 實(shí)驗(yàn)成績(jī): 批改教師: 批改時(shí)間:

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)3 繼承與多態(tài)

      一、實(shí)驗(yàn)?zāi)康?、要?/p>

      (1)掌握類的繼承性與多態(tài)性;

      (2)掌握虛方法的定義以及如何使用虛方法實(shí)現(xiàn)多態(tài);(3)掌握抽象類的定義以及如何使用抽象方法實(shí)現(xiàn)多態(tài);

      二、實(shí)驗(yàn)要求

      (1)編寫程序要規(guī)范、正確,上機(jī)調(diào)試過程和結(jié)果要有記錄;(2)做完實(shí)驗(yàn)后給出本實(shí)驗(yàn)的實(shí)驗(yàn)報(bào)告。

      三、實(shí)驗(yàn)設(shè)備、環(huán)境

      安裝有Visual Studio.NET軟件。

      四、實(shí)驗(yàn)步驟

      1、分析題意;

      2、根據(jù)題目要求,新建項(xiàng)目;

      3、編寫并輸入相關(guān)的程序代碼;

      5、運(yùn)行與調(diào)試項(xiàng)目;

      6、保存項(xiàng)目。

      五、實(shí)驗(yàn)內(nèi)容

      1、設(shè)計(jì)一個(gè)Windows應(yīng)用程序,在該程序中首先構(gòu)造一個(gè)學(xué)生基本類,再分別構(gòu)造小學(xué)生、中學(xué)生、大學(xué)生派生類,當(dāng)輸入相關(guān)數(shù)據(jù),單擊不用的按鈕時(shí),將分別創(chuàng)建不同的學(xué)生類對(duì)象,并輸出當(dāng)前學(xué)生的總?cè)藬?shù),該學(xué)生的姓名,學(xué)生類型,平均成績(jī)。

      Student類: using System;using System.Collections.Generic;using System.Text;namespace Test3_1 {

      public abstract class Student

      {

      protected string name;

      protected int age;

      public static int number;

      public Student(string name, int age)

      {

      this.name = name;

      this.age = age;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      number++;

      }

      public string Name

      {

      get { return name;}

      }

      public abstract double Average();

      }

      public class Pupil : Student

      {

      protected double chinese;

      protected double math;

      public Pupil(string name, int age, double chinese, double math)

      : base(name, age)

      {

      this.chinese = chinese;

      this.math = math;

      }

      public override double Average()

      {

      return(chinese + math)/ 2;

      }

      }

      public class Middle : Student

      {

      protected double chinese;

      protected double math;

      protected double english;

      public Middle(string name, int age, double chinese, double math, double english)

      : base(name, age)

      {

      this.chinese = chinese;

      this.math = math;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      this.english = english;

      }

      public override double Average()

      {

      return(chinese + math + english)/ 3;

      }

      }

      public class College : Student

      {

      protected double required;

      protected double elective;

      public College(string name, int age, double required, double elective)

      : base(name, age)

      {

      this.required = required;

      this.elective = elective;

      }

      public override double Average()

      {

      return(required + elective)/ 2;

      }

      } } Form窗體內(nèi)的代碼:

      using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace Test3_1 {

      public partial class Form1 : Form

      {

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      public Form1()

      {

      InitializeComponent();

      }

      private void btnSmall_Click(object sender, EventArgs e)

      {

      Pupil),Convert.ToDouble(txtMath.Text));

      lblShow.Text += “總?cè)藬?shù):” +Convert.ToString(Student.number)+ “,” + “姓名:” + p.Name + “,” + “小學(xué)生” + “,” + “平均成績(jī)?yōu)椋骸?+ p.Average()+“n”;

      }

      private void btnMiddle_Click(object sender, EventArgs e)

      {

      Middle Convert.ToInt32(txtAge.Text),m

      =

      new

      Middle(txtName.Text,Convert.ToDouble(txtChinese.Text), p

      =

      new Pupil(txtName.Text,Convert.ToInt32(txtAge.Text),Convert.ToDouble(txtChinese.TextConvert.ToDouble(txtMath.Text),Convert.ToDouble(TxtEnglish.Text));

      lblShow.Text += “總?cè)藬?shù):” + Convert.ToString(Student.number)+ “,” + “姓名:” + m.Name + “,” + “中學(xué)生” + “,” + “平均成績(jī)?yōu)椋骸?+ m.Average()+ “n”;

      }

      private void btnBig_Click(object sender, EventArgs e)

      {

      College Convert.ToInt32(txtAge.Text), Convert.ToDouble(txtMath.Text));

      lblShow.Text += “總?cè)藬?shù):” + Convert.ToString(Student.number)+ “,” + “姓名:” + c.Name + “,” + “大學(xué)生” + “,” + “平均成績(jī)?yōu)椋骸?+ c.Average()+ “n”;

      }

      }

      c

      =

      new

      College(txtName.Text,Convert.ToDouble(txtChinese.Text),金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      }

      2、設(shè)計(jì)一個(gè)Windows應(yīng)用程序,在該程序中定義平面圖形抽象類和派生類圓,矩形和三角形。

      Figure類代碼: using System;using System.Collections.Generic;using System.Text;namespace Test3_2 {

      public abstract class Figure

      {

      public abstract double Area();

      }

      public class Circle:Figure

      {

      double radius;

      public Circle(double r)

      {

      radius = r;

      }

      public override double Area()

      {

      return radius * radius * 3.14;

      }

      }

      public class JUxing:Figure

      {

      double chang;

      double kuan;

      public JUxing(double c, double k)

      {

      this.chang = c;

      this.kuan = k;

      }

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      public override double Area()

      {

      return chang * kuan;

      }

      }

      public class San:Figure

      {

      double bian;

      double heigth;

      public San(double b, double h)

      {

      this.bian = b;

      this.heigth = h;

      }

      public override double Area()

      {

      return bian * heigth / 2;

      }

      } } Form窗體代碼: using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace Test3_2 {

      public partial class Form1 : Form

      {

      public Form1()

      {

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      InitializeComponent();

      }

      private void btnCircle_Click(object sender, EventArgs e)

      {

      Circle c=new Circle(Convert.ToInt32(TxtChang.Text));

      lblShow.Text = “圓的面積為:” + c.Area();

      }

      private void btnJu_Click(object sender, EventArgs e)

      {

      JUxing

      j

      =

      new JUxing(Convert.ToInt32(TxtChang.Text),Convert.ToInt32(TxtHigh.Text));

      lblShow.Text = “矩形的面積為:” + j.Area();

      }

      private void btnSan_Click(object sender, EventArgs e)

      {

      San

      s

      =

      new

      San(Convert.ToInt32(TxtChang.Text), Convert.ToInt32(TxtHigh.Text));

      lblShow.Text = “三角形的面積為:” + s.Area();

      }

      } }

      3、定義一個(gè)Person類,包含姓名字段和一個(gè)方法,早上8:30學(xué)生開始上課,教師開始講課。分別用new關(guān)鍵字,虛方法,抽象類實(shí)現(xiàn)多態(tài)性。

      New關(guān)鍵字: using System;using System.Collections.Generic;using System.Text;

      namespace third.three {

      class Program

      {

      static void Main(string[] args)

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      {

      Student s=new Student(“學(xué)生”);

      Teacher t=new Teacher(“教師”);

      Console.WriteLine(s.name+s.work());

      Console.WriteLine(t.name+t.work());

      Console.ReadLine();

      }

      }

      public class Person

      {

      public string name;

      public interface method

      { string work();}

      }

      public class Student:Person

      {

      public Student(string name)

      { this.name = name;}

      public string work()

      { return “早上8:30開始上課”;}

      }

      public class Teacher:Person

      {

      public Teacher(string name)

      { this.name = name;}

      public string work()

      { return “開始講課”;}

      } } 虛方法: using System;using System.Collections.Generic;using System.Text;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      namespace third.three.two {

      class Program

      {

      static void Main(string[] args)

      {

      Student s = new Student(“張三”,“學(xué)生”);

      PersonWork(s);

      Teacher t=new Teacher(“李斯”,“教師”);

      PersonWork(t);

      }

      private static void PersonWork(Person Person)

      { Console.WriteLine(Person.Work());}

      }

      public class Person

      {

      public string name;

      public Person(string name)

      { this.name = name;}

      public virtual string Work()

      { return string.Format(“Person{0}:早上8:30開始”,name);}

      }

      public class Student : Person

      {

      private string type;

      public Student(string name, string type)

      : base(name)

      { this.type = type;}

      public override string Work()

      {

      return string.Format(“Person{0}:早上8:30開始上課”, name);

      }

      }

      public class Teacher : Person

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      {

      private string type;

      public Teacher(string name, string type)

      : base(name)

      { this.type = type;}

      public override string Work()

      {

      return string.Format(“Person{0}:開始講課”, name);

      }

      } }

      抽象類: using System;using System.Collections.Generic;using System.Text;

      namespace third.three.three {

      class Program

      {

      static void Main(string[] args)

      {

      Student s = new Student(“張三”, “學(xué)生”);

      PersonWork(s);

      Teacher t = new Teacher(“李斯”, “教師”);

      PersonWork(t);

      }

      private static void PersonWork(Person person)

      {

      Console.WriteLine(person.Work());

      }

      }

      public abstract class Person

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      {

      public string name;

      public Person(string name)

      { this.name = name;}

      public abstract string Work();

      }

      public class Student : Person

      {

      private string type;

      public Student(string name, string type)

      : base(name)

      {

      this.type = type;

      }

      public override string Work()

      {

      return string.Format(“Person{0}:早上8:30開始上課”, name);

      }

      }

      public class Teacher : Person

      {

      private string type;

      public Teacher(string name, string type)

      : base(name)

      {

      this.type = type;

      }

      public override string Work()

      {

      return string.Format(“Person{0}:開始講課”, name);

      }

      } }

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      六、實(shí)驗(yàn)體會(huì)(遇到問題及解決辦法,編程后的心得體會(huì))

      通過本次實(shí)驗(yàn),我理解了類的繼承性與多態(tài)性;掌握了虛方法的定義以及如何用虛方法來實(shí)現(xiàn)多態(tài);掌握了抽象類的定義以及如何用抽象方法來實(shí)現(xiàn)多態(tài)。這次實(shí)驗(yàn)與前兩次不同,采用Windows應(yīng)用程序,既涉及到代碼段也涉及到界面的設(shè)計(jì)。所以,勉強(qiáng)通過實(shí)驗(yàn)。

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)項(xiàng)目名稱: 接口、文件和流 實(shí)驗(yàn)學(xué)時(shí): 6 同組學(xué)生姓名: 實(shí)驗(yàn)地點(diǎn): A205 實(shí)驗(yàn)日期: 12月7日-12月21日 實(shí)驗(yàn)成績(jī): 批改教師: 批改時(shí)間:

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)4 接口、文件和流

      一、實(shí)驗(yàn)?zāi)康?/p>

      (1)掌握接口的定義及使用方法;

      (2)掌握流,序列化和反序列化的概念和使用方法;(3)掌握流文件的讀寫操作類及其使用方法;

      (4)掌握OpenFileDialog,SaveFileDialog等控件的使用。

      二、實(shí)驗(yàn)要求

      (1)編寫程序要規(guī)范、正確,上機(jī)調(diào)試過程和結(jié)果要有記錄;(2)做完實(shí)驗(yàn)后給出本實(shí)驗(yàn)的實(shí)驗(yàn)報(bào)告。

      三、實(shí)驗(yàn)設(shè)備、環(huán)境

      安裝有Visual Studio.NET軟件。

      四、實(shí)驗(yàn)步驟

      1、分析題意;

      2、根據(jù)題目要求,新建項(xiàng)目;

      3、編寫并輸入相關(guān)的程序代碼;

      5、運(yùn)行與調(diào)試項(xiàng)目;

      6、保存項(xiàng)目。

      五、實(shí)驗(yàn)內(nèi)容

      1、定義一個(gè)Person類,包含姓名字段和一個(gè)方法,早上8:30學(xué)生開始上課,教師開始講課。用接口來實(shí)現(xiàn)。

      using System;using System.Collections.Generic;using System.Text;namespace Test4_1 {

      class Program

      {

      static void Main(string[] args)

      {

      Student s = new Student(“張三”,“學(xué)生”);

      Console.WriteLine(s.Work());

      Teacher t = new Teacher(“李四”,“老師”);

      Console.WriteLine(t.Work());

      }

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      public abstract class Person

      {

      public string name;

      public Person(string name)

      {

      this.name = name;

      }

      }

      interface IPerson

      {

      string type { get;}

      string Work();

      }

      public class Student :Person, IPerson

      {

      public string type

      {

      get { return string.Format(“老師”);}

      }

      public Student(string name, string type)

      : base(name)

      {

      this.name=name;

      }

      public string Work()

      {

      return string.Format(“Person{0}:早上8:30開始上課”, name);

      }

      }

      public class Teacher :Person, IPerson

      {

      public string type

      {

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      get { return string.Format(“學(xué)生”);}

      }

      public Teacher(string name, string type)

      : base(name)

      {

      this.name = name;

      }

      public string Work()

      {

      return string.Format(“Person{0}:早上8:30開始講課”, name);

      }

      }

      } }

      2、聲明一個(gè)接口Iplayer,包含5個(gè)接口方法:播放,停止,暫停,上一首和下一首。在該程序中定義一個(gè)MP3播放器類和一個(gè)AVI播放器類,以實(shí)現(xiàn)該接口。

      MP3類(包含Iplayer接口,AVI類): using System;using System.Collections.Generic;using System.Text;namespace Test4_2 {

      interface IPlayer

      {

      string Play();

      string Stop();

      string Pause();

      string Pre();

      string Next();

      }

      public class MP3:IPlayer

      {

      public string Play()

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      {

      return “正在播放MP3歌曲!”;

      }

      public string Stop()

      {

      return “停止播放MP3歌曲!”;

      }

      public string Pause()

      {

      return “暫停播放MP3歌曲!”;

      }

      public string Pre()

      {

      return “播放上一首MP3歌曲!”;

      }

      public string Next()

      {

      return “播放下一首MP3歌曲!”;

      }

      }

      public class AVI : IPlayer

      {

      public string Play()

      {

      return “正在播放AVI歌曲!”;

      }

      public string Stop()

      {

      return “停止播放AVI歌曲!”;

      }

      public string Pause()

      {

      return “暫停播放AVI歌曲!”;

      }

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      public string Pre()

      {

      return “播放上一首AVI歌曲!”;

      }

      public string Next()

      {

      return “播放下一首AVI歌曲!”;

      }

      } } Form窗體里代碼: using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace Test4_2 {

      public partial class Form1 : Form

      {

      IPlayer iplayer;

      MP3 mp3;

      AVI avi;

      public Form1()

      {

      InitializeComponent();

      }

      private void btnMp3_Click(object sender, EventArgs e)

      {

      mp3 = new MP3();

      iplayer =(IPlayer)mp3;

      }

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      private void btnPlay_Click(object sender, EventArgs e)

      {

      label1.Text = iplayer.Play();

      }

      private void btnUp_Click(object sender, EventArgs e)

      {

      label1.Text = iplayer.Pre();

      }

      private void btnStop_Click(object sender, EventArgs e)

      {

      label1.Text = iplayer.Stop();

      }

      private void btnPause_Click(object sender, EventArgs e)

      {

      label1.Text = iplayer.Pause();

      }

      private void btnNext_Click(object sender, EventArgs e)

      {

      label1.Text = iplayer.Next();

      }

      private void btnAvi_Click(object sender, EventArgs e)

      {

      avi = new AVI();

      iplayer =(IPlayer)avi;

      }

      } }

      3、實(shí)現(xiàn)對(duì)文本文件的讀寫操作,用文件操作控件打開和保存文件。

      using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;namespace Test4_3

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      {

      public partial class Form1 : Form

      {

      public Form1()

      {

      InitializeComponent();

      }

      private void btnSave_Click(object sender, EventArgs e)

      {

      saveFileDialog1.ShowDialog();

      StreamWriter

      sw = StreamWriter(saveFileDialog1.FileName,true);

      sw.WriteLine(DateTime.Now.ToString());

      sw.WriteLine(txtSource.Text);

      sw.Close();

      }

      private void btnShow_Click(object sender, EventArgs e)

      {

      StreamReader sr = StreamReader(saveFileDialog1.FileName);

      txtShow.Text = sr.ReadToEnd();

      sr.Close();

      }

      } }

      4、實(shí)現(xiàn)對(duì)二進(jìn)制文件的讀寫操作。

      using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;

      new

      new

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      namespace Test4_4 {

      public partial class Form1 : Form

      {

      public Form1()

      {

      InitializeComponent();

      }

      private void btnSave_Click(object sender, EventArgs e)

      {

      FileStream

      fs

      = FileStream(@“d:Datastudent.dat”,FileMode.Append,FileAccess.Write);

      BinaryWriter bw = new BinaryWriter(fs);

      bw.Write(Int32.Parse(txtStuNo.Text));

      bw.Write(TxtName.Text);

      bool isMale;

      if(rdoMan.Checked)

      isMale = true;

      else

      isMale = false;

      bw.Write(isMale);

      fs.Close();

      bw.Close();

      }

      private void btnShow_Click(object sender, EventArgs e)

      {

      lstShow.Items.Clear();

      lstShow.Items.Add(“學(xué)號(hào)t姓名t性別”);

      FileStream

      fs

      = FileStream(@“d:Datastudent.dat”,FileMode.Open,FileAccess.Read);

      BinaryReader br = new BinaryReader(fs);

      fs.Position = 0;

      while(fs.Position!= fs.Length)

      {

      new

      new

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      int s_no = br.ReadInt32();

      string name = br.ReadString();

      string sex = “";

      if(br.ReadBoolean())

      sex = ”男“;

      else

      sex = ”女“;

      string

      result String.Format(”{0}t{1}t{2}“,s_no,name,sex);

      lstShow.Items.Add(result);

      }

      br.Close();

      fs.Close();

      }

      } }

      5、實(shí)現(xiàn)對(duì)象序列化和反序化。

      Student類: using System;using System.Collections.Generic;using System.Text;namespace Test4_5 {

      [Serializable]

      public class Student

      {

      public int sno;

      public string name;

      public bool sex;

      public Student(int s_no, string name, bool isMale)

      {

      this.sno = s_no;

      this.name = name;

      this.sex = isMale;

      =

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      }

      } } StudentList類: using System;using System.Collections.Generic;using System.Text;namespace Test4_5 {

      [Serializable]

      public class StudentList

      {

      private Student[] list = new Student[100];

      public Student this[int index]

      {

      get

      {

      if(index < 0 || index >= 100)

      return list[0];

      else

      return list[index];

      }

      set

      {

      if(!(index < 0 || index >=100))

      list[index] = value;

      }

      }

      } } Form下的代碼: using System;using System.Collections.Generic;using System.ComponentModel;

      金陵科技學(xué)院實(shí)驗(yàn)報(bào)告

      using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;using System.Runtime.Serialization.Formatters.Binary;namespace Test4_5 {

      public partial class Test9_32 : Form

      {

      private StudentList list = new StudentList();

      private int i = 0;

      public Test9_32()

      {

      InitializeComponent();

      }

      private void Test9_32_Load(object sender, EventArgs e)

      {

      }

      private void btnSave_Click(object sender, EventArgs e)

      {

      string file = @”d:datastudent.dat";

      Stream

      stream

      = FileStream(file,FileMode.OpenOrCreate,FileAccess.Write);

      BinaryFormatter bf = new BinaryFormatter();

      bf.Serialize(stream,list);

      stream.Close();

      }

      private void btnAdd_Click(object sender, EventArgs e)

      {

      int sno = Int32.Parse(txtStuNo.Text);

      bool isMale;

      if(rdoMan.Checked)

      isMale = true;

      new

      第三篇:C#程序設(shè)計(jì)教程期末復(fù)習(xí)題及答案

      習(xí)題 1

      一、選擇題

      1.在C#中 B 都是對(duì)象。

      A 任何類型 B 任何事物 C 任何代碼 D 任何技術(shù) 2.對(duì)象包含數(shù)據(jù)和 A 的方法。

      A 在該數(shù)據(jù)上工作 B 調(diào)用 C 函數(shù)調(diào)用 D 傳遞參數(shù) 3.一個(gè)類是 D 的藍(lán)本。

      A 數(shù)據(jù)集合 B 函數(shù)集合 C 方法集合 D 給定功能集合 4..NET構(gòu)架包含公用語(yǔ)言運(yùn)行時(shí)期和 B。5..NET的核心是 A。

      A CLR B Windows2000 C DNA D 分解平臺(tái) 6.C#程序以 B 擴(kuò)展名保存編寫的程序。A.CS B.PS C.CSS D.SC 7.System是 B 的命名空間。

      A 存儲(chǔ)系統(tǒng)類 B 控制臺(tái)類 C I/O操作 D 新項(xiàng)目 8.namespace用于聲明 B。

      A 新項(xiàng)目 B 一個(gè)命名空間 C 類與方法 D 指令 9.每個(gè)C#程序必須有一個(gè) D 方法。A 類方法 B 構(gòu)造方法 C Main D 重載方法

      二、問答題

      1.面向?qū)ο缶幊痰娜笤瓌t是什么? 答:封裝、繼承和多態(tài)性。2.封裝是什么?

      答:封裝是用于隱藏對(duì)象實(shí)際的制作細(xì)節(jié)。3.繼承是什么?

      答:繼承是在建立新的特定對(duì)象時(shí),可以使用現(xiàn)有對(duì)象的功能性。4.多態(tài)性是什么?

      答:多態(tài)性是程序代碼能夠依據(jù)實(shí)際對(duì)象所需而進(jìn)行不同的行為。5..NET的核心構(gòu)件包括哪些? 答:(1).NET構(gòu)造塊服務(wù)或有計(jì)劃的訪問某些服務(wù)。

      (2)將在新的Internet設(shè)備上運(yùn)行的.NET設(shè)備軟件。(3).NET用戶經(jīng)驗(yàn)。6.CLR的作用是什么?

      答:CLR是.NET的核心,它是一個(gè)運(yùn)行時(shí)期環(huán)境,在該環(huán)境中,以不同語(yǔ)言編寫的應(yīng)用程序均能始終運(yùn)行。

      三、編程題

      使用.NET代碼編輯器編寫一個(gè)C#應(yīng)用程序,以在屏幕打印出:

      C# is the Component-oriented language in C and C++ family of language.要求:

      (1)使用using System命名空間,即定位System命名空間的Console類。(2)不使用using System命名空間,即System命名空間的Console類。(3)使用using指令的別名,即使用using創(chuàng)建using的別名。答案:(1)

      //Example1.cs Using System;Class Example1 { Public static void Main(){ Console.Write(“C# is the Component-oriented language ”);Console.WriteLine(“in C and C++ family of language.”);} }(2)

      //Example2.cs Class Example1 { Public static void Main(){ System.Console.Write(“C# is component-oriented language”);System.Console.WriteLine(“in C and C++ family language.”);

      } }(3)Example3.cs Using output=System.Console;Class Example1

      Public static void Main(){ Output.Write(“C# is component-oriented language”);}

      習(xí)題2

      一、選擇題

      1.C#的數(shù)據(jù)類型有 A 和 C 兩種。

      A 值類型 B 調(diào)用類型 C 引用類型 D 關(guān)系類型 2.C#的值類型包括 A、B 和 D 三種。A 枚舉 B 基本類型 C 整形 D 結(jié)構(gòu) E浮點(diǎn)型 F 字符型

      3.C#的引用類型包括 A、B、C、F、G 和 H 六種。

      A string B object C 類 D float E char F 數(shù)組G 代表 H 4.裝箱是把值類型轉(zhuǎn)換到 B 類型。

      A 數(shù)組 B 引用 C char D string 5.拆箱是引用類型返回到 C 類型。

      A string B char C 值 D 數(shù)組 6. A 類型是所有類型的根。

      接口 A System.Object B object C string D System.Int32 7.從派生類到基類對(duì)象的轉(zhuǎn)換是 B 類型轉(zhuǎn)換。A 顯示 B 隱式 C 自動(dòng) D 專向 8.從基類到派生類對(duì)象的轉(zhuǎn)換是 D 類型轉(zhuǎn)換。A 隱式 B 自動(dòng) C專向 D 顯示 9.強(qiáng)制轉(zhuǎn)換對(duì)象可以使用 B 關(guān)鍵字實(shí)現(xiàn)。A is B as C this D object 10.命名空間用于定義 A 的作用域。

      A 應(yīng)用程序 B 有關(guān)類型 C 多重源代碼 D 層次結(jié)構(gòu) 11.using關(guān)鍵字用于 B 命名空間中的Console對(duì)象。A Console B System C Object D Int32

      二、填空題

      1.下列程序的運(yùn)行結(jié)果是 99.44。//Exam1.cs using System;class Using { public static void Main(){ int i=918;float f=10.25f;short sh=10;double d=11.19;Console.WriteLine(i+f+sh+d);} } 2.下列程序的運(yùn)行結(jié)果是 25.5。//Exam2.cs using System;class Using { public static void Main(){ int i=5;float f=5.1f;Console.WriteLine(i*f);} }

      二、編程題

      1. 已知a=1,b=2,c=3,x=2,計(jì)算y=ax+bx+c之值。2. 已知圓的半徑Radius=2.5,計(jì)算圓的面積。(PI=3.14159)要求:

      (1)使用基本方法;(2)使用裝箱與拆箱;

      (3)輸出以double,float,int,decimal,short表示;(4)使用object類與類型轉(zhuǎn)換;(5)使用派生類與as。答案: 1. 方案一: //YValue.cs using System;class Using { public static void Main(){ int a=1,b=2,c=3,x=2,y;y=(a*x+b)*x+c;Console.WriteLine(“y={0}”,y);} } 方案二:

      //YValue1.cs using System;class Using { public static void Main(){ int a=1,b=2,c=3,x=2;Console.WriteLine(“y={0}”,(a*x+b)*x+c);} } 2.

      (1)使用基本方法 方案一:

      //CircleAreaApp.cs using System;class CircleAreaApp { public static void Main(){ double Radius=2.5,Area;Area=3.14159*Radius*Radius;Console.WriteLine(“Area={0}”,Area);} } 方案二:

      //CircleAreaApp1.cs using System;class CircleAreaApp { public static void Main(){ double Radius=2.5;Console.WriteLine(“Area={0}”,3.14159*Radius*Radius);} }(2)使用裝箱與拆箱 //CircleAreaApp2.cs using System;class CircleAreaApp { public static void Main(){ double Radius=2.5;double Area=3.14159*Radius*Radius;Console.WriteLine(“Area={0}”,Area);object obj=Area;Console.WriteLine(“Area={0}”,(double)obj);} }(3)輸出以double,float,int,decimal,short表示 //CircleAreaApp3.cs using System;class CircleAreaApp { public static void Main(){ double Radius=2.5;double Area=3.14159*Radius*Radius;Console.WriteLine(“Area={0}”,Area);Console.WriteLine(“Area={0}”,(float)Area);Console.WriteLine(“Area={0}”,(int)Area);Console.WriteLine(“Area={0}”,(decimal)Area);Console.WriteLine(“Area={0}”,(short)Area);} }(4)使用object類與類型轉(zhuǎn)換 //CircleAreaApp4.cs using System;class Circle { public double Radius=2.5;} class CircleAreaAPP { public static void Main(){ Circle cir=new Circle();double Area=3.14159*cir.Radius*cir.Radius;Console.WriteLine(“Area={0}”,Area);Console.WriteLine(“Area={0}”,(float)Area);object obj=(float)Area;Console.WriteLine(“Area={0}”,(float)obj);} }(5)使用派生類與as //CircleAreaApp5.cs using System;class Circle {} class CircleAreaAPP:Circle { public static void Main(){ double Radius=2.5;double Area=3.14159*Radius*Radius;Console.WriteLine(“Area={0}”,Area);Console.WriteLine(“Area={0}”,(float)Area);object obj=(float)Area;Console.WriteLine(“Area={0}”,(float)obj);Circle cir=new Circle();Console.WriteLine(“cir={0}”,cir==null?“null”:cir.ToString());CircleAreaAPP cirA=new CircleAreaAPP();cirA=cir as CircleAreaAPP;Console.WriteLine(“cirA={0}”,cirA==null?“null”:cirA.ToString());} }

      習(xí)題3

      一、選擇題

      1.字符串的輸入使用 B 方法。

      A)Cosole.Read()B)Cosole.ReadLine()C)Cosole.Write()D)Cosole.In.read()2.用于格式化輸出十進(jìn)制數(shù)的符號(hào)是 C。

      A)C B)E C)D D)G E)N F)X 3.用于格式化輸出浮點(diǎn)數(shù)的符號(hào)是 D。A)C B)D C)G D)F E)N F)X 4.用于格式完整日期/時(shí)間模式(長(zhǎng)時(shí)間)的符號(hào)是 A。A)D B)F C)G D)M E)R F)S 5.用于格式完整日期/時(shí)間模式(短時(shí)間)的符號(hào)是 C。A)D B)f C)g D)d E)F F)G

      二、編程題

      1.從鍵盤輸入一個(gè)小寫字母,然后輸出所輸入的小寫字母后其對(duì)應(yīng)單代碼值。2.從鍵盤輸入兩個(gè)浮點(diǎn)數(shù),然后輸出這兩個(gè)數(shù)相加的結(jié)果(要求小數(shù)后取4位)。3.從鍵盤輸入年、月、日的數(shù)值,然后用完整的日期事件格式化輸出。答案: 1.

      //CharValue.cs using System;public class CharValue { public static void Main(){ Console.Write(“Enter an char:”);char ch = char.Parse(Console.ReadLine());//or char ch=(char)Console.Readline();Console.WriteLine(ch);Console.WriteLine((int)ch);} }

      2.//TwoFloatAddition.cs using System;public class TwoFloatAddition { public static void Main(){ Console.Write(“Enter a float:”);float f1= float.Parse(Console.ReadLine());Console.Write(“Enter a float:”);float f2 = float.Parse(Console.ReadLine());Console.WriteLine(“Result of addition for two float is: {0:F4}”,f1+f2);} }

      3.//DateTimeFormat.cs using System;using System.Globalization;public class DateTimeFormat { public static void Main(String[] args){ Console.Write(“Enter year month day: ”);string s = Console.ReadLine();DateTime s1 = DateTime.Parse(s);Console.WriteLine(“d {0:d}”,s1);Console.WriteLine(“D {0:D}”, s1);Console.WriteLine(“f {0:f}”, s1);Console.WriteLine(“F {0:F}”, s1);Console.WriteLine(“g {0:g}”, s1);Console.WriteLine(“G {0:G}”, s1);Console.WriteLine(“m {0:m}”, s1);Console.WriteLine(“M {0:M}”, s1);Console.WriteLine(“r {0:r}”, s1);Console.WriteLine(“R {0:R}”, s1);Console.WriteLine(“s {0:s}”, s1);} }

      習(xí)題4 1.以下運(yùn)算符的運(yùn)算符優(yōu)先級(jí),D 最高,E 最低。A)+ B)<< C)| D)()E)|| F)++ 2.以下運(yùn)算符中,A 是三目運(yùn)算符。

      A)?: B)--C)= D)<= 3.在堆棧上創(chuàng)建對(duì)象和調(diào)用構(gòu)造函數(shù)時(shí),通常使用 B 關(guān)鍵字。A)typeof B)new C)as D)is 4. A 用于獲取系統(tǒng)的System.Type類型。

      A)typeof B)new C)sizeof D)is

      二、寫出下列程序執(zhí)行結(jié)果。1.運(yùn)行結(jié)果。//Increment1.cs using System;public class Increment1 { public static void Main(){ int i1=1993,i2=11,i3=19;Console.WriteLine(“i1={0},i2={1},i2={2}”,i1,i2,i3);i1=i3;Console.WriteLine(“i1={0},i2={1},i2={2}”,i1,i2,i3);i3+=i2;Console.WriteLine(“i1={0},i2={1},i2={2}”,i1,i2,i3);i1=i2+i3;Console.WriteLine(“i1={0},i2={1},i2={2}”,i1,i2,i3);i1++;++i2;i3=i1++ + ++i2;Console.WriteLine(“i1={0},i2={1},i2={2}”,i1,i2,i3);} }

      2.運(yùn)行結(jié)果:。//Increment2.cs using System;public class Increment2 { public static void Main(){ int a,b;a = b = 1;b = a / ++b;Console.WriteLine(“a={0} b={1}”,a,b);b = a++-i1);Console.WriteLine(---i1);Console.WriteLine(i2---i3);Console.WriteLine(i4---i5);Console.WriteLine(-i6---i7);Console.WriteLine(i8++/ ++i9*--i10);Console.WriteLine(++i11/i12++ *--i13);Console.Read();} }

      三、編程題

      1.輸入兩個(gè)整數(shù),輸出它們(實(shí)數(shù)除)的商,并輸出商的第2位小數(shù)位(例如:5/18.0=1.875, 1.875的第二位小數(shù)是7)。

      2.輸入圓球的半徑,計(jì)算圓球的表面積(4πr)和體積(4πr/3),其中π=3.14159。3.輸入秒數(shù),把它轉(zhuǎn)換為用小時(shí)、分、秒表示。例如,輸入7278秒,則輸出2小時(shí)1分18秒。4.計(jì)算x=ab+5ln(1+c)要求:

      (1)輸出結(jié)果以科學(xué)表示法、定點(diǎn)表示法(小數(shù)點(diǎn)后保留兩位)和普通表示法表示。(2)輸出結(jié)果以整數(shù)表示并指明當(dāng)前工作的日期和時(shí)間。

      5.計(jì)算答案: 1.

      //RealDivide.cs using System;public class RealDivide

      3223 { public static void Main(){ Console.WriteLine(“Enter two integers:”);string[] s = Console.ReadLine().Split();;int a = int.Parse(s[0]);int b = int.Parse(s[1]);float f = 1.0f * a / b;int c=(int)(f*100)%10;Console.WriteLine(“Result of real divide is : {0}”,f);Console.WriteLine(“Second place of decimals is : {0}”,c);} }

      2.//SphereA.cs using System;public class Sphere { public static void Main(){ Console.Write(“Enter the radius of sphere: ”);string s = Console.ReadLine();double radius = double.Parse(s);double surfaceArea = 4 * Math.PI * radius * radius;double Volume = 4 * Math.PI * radius * radius * radius / 3;Console.WriteLine(“SurfaceArea={0}”,surfaceArea);Console.WriteLine(“Volume={0}”,Volume);} }

      3.//HourMinuteSecond.cs using System;public class HourMinuteSecond { public static void Main(){ int hour, minute, second;Console.Write(“Enter numbers of second:”);string s = Console.ReadLine();second = int.Parse(s);hour = second / 3600;second %= 3600;minute = second / 60;second = second % 60;Console.WriteLine(“{0} hour {1} minute {2} second”,hour,minute,second);} }

      4. //ValueX.cs using System;using System.Globalization;public class ValueX { public static void Main(){ double a, b, c, x;Console.Write(“Enter three numbers: ”);string[] s = Console.ReadLine().Split();a = double.Parse(s[0]);b = double.Parse(s[1]);c = double.Parse(s[2]);x = a * Math.Pow(b, 3)+ 5 * Math.Log(1 + c * c);Console.WriteLine(“x={0:E}ttx={1:F2}ttx={2:G}”, x, x, x);Console.WriteLine(“x={0:D}”,(int)x);DateTime NowTime = DateTime.Now;Console.WriteLine(“{0:D}”, NowTime);} }

      5.//MathTestA.cs using System;public class MathTestA { public static void Main(){ double alpha, beta, y;Console.Write(“Enter value of alpha: ”);string s = Console.ReadLine();alpha = double.Parse(s);Console.Write(“Enter value of beta: ”);s = Console.ReadLine();beta = double.Parse(s);y = Math.Pow(Math.Abs(Math.Log(Math.Sqrt(1 + alpha * alpha))a)*(sc)));Console.WriteLine(“Area of triangle is :{0:F2}n”, Area);} else { Console.WriteLine(“can't construct triangle!n”);} Console.ReadLine();}

      } 運(yùn)行結(jié)果:

      2.//Prime.cs

      class Prime { public static void Main(){ int a, n, m = 0, i, j;bool flag;for(i = 2;i <= 50;i++){ flag = true;j = 2;a =(int)Math.Sqrt((double)i);while(flag && j <= a){ if(i % j == 0)flag = false;j++;} if(flag){ Console.Write(“{0:D2} ”, i);m++;if(m % 4 == 0)Console.WriteLine();} } Console.WriteLine();Console.ReadKey();} } 運(yùn)行結(jié)果:

      3.//CountDigit.cs class CountDigit { public static void Main(){ int num = 0;char ch;Console.Write(“Enter chars:”);while(true){ if((ch =(char)Console.Read())== 'b')if((ch =(char)Console.Read())== 'y')if((ch =(char)Console.Read())== 'e')break;if(ch >= '0' && ch <= '9')num++;} Console.WriteLine(“Numbers of digit is:{0}n”, num);Console.Read();Console.ReadKey();} } 運(yùn)行結(jié)果:

      4.//ForSinCosTan.cs class ForSinCosTan { public static void Main(){ float sinx, cosx, tanx;double x;Console.WriteLine(“xtsinxtcosxttanx”);for(int i = 2;i <= 10;i += 2){ x = i * Math.PI / 180;sinx =(float)Math.Sin(x);cosx =(float)Math.Cos(x);tanx =(float)Math.Tan(x);Console.WriteLine(“{0}tt{1:F6}tt{2:F6}tt{3:F6}”, i, sinx, cosx, tanx);} Console.Read();Console.ReadKey();} } 運(yùn)行結(jié)果:

      5.//Factorial.cs

      class Factorial { static int n, Fact;public static void Main(){ n = 0;Fact = 1;Console.WriteLine(“Use while loop:”);while(++n <= 5){ Fact *= n;Console.WriteLine(“ {0}!= {1}”, n, Fact);} Console.WriteLine(“Use do-while loop:”);n = 1;Fact = 1;do { Fact *= n;Console.WriteLine(“ {0}!= {1}”, n, Fact);} while(++n <= 5);Console.WriteLine(“Use for loop: ”);Fact = 1;for(n = 1;n <= 5;n++){ Fact *= n;Console.WriteLine(“ {0}!= {1}”, n, Fact);} Console.ReadKey();} } 運(yùn)行界面:

      習(xí)題6

      一、填空題

      1.C#類的成員包括 域、方法、屬性、常量、索引、事件與運(yùn)算符

      2.用于指定類的成員是否可訪問的修飾符有public、protected、private及internal。3.類最常用的方法是Main 4.構(gòu)造方法實(shí)例化對(duì)象的形式是 類名 對(duì)象=new 類名(構(gòu)造方法參數(shù))5.從另一個(gè)類,繼承一個(gè)類的語(yǔ)法是 class 派生類:基類 6.sealed類用于 確保一個(gè)類永不作為基類

      二、編程題

      1輸入一個(gè)數(shù)值作為正方形的邊長(zhǎng),計(jì)算正方形的面積,并輸出到屏幕上。要求:

      (1)定義一個(gè)類,在類中定義無(wú)參的構(gòu)造方法和主方法。(2)定義一個(gè)類,在類中定義帶參的構(gòu)造方法和主方法。

      2、重復(fù)輸入數(shù)據(jù),計(jì)算分段函數(shù)

      ?|x|?r?0y=?

      22|x|?r??r?x要求:

      (1)定義兩個(gè)類,在一個(gè)類中定義無(wú)參的構(gòu)造方法,在另一個(gè)類中定義主方法。(1)定義兩個(gè)類,在一個(gè)類中定義帶參的構(gòu)造方法,在另一個(gè)類中定義主方法。

      3.從鍵盤讀入邊數(shù)(side),然后按輸入的邊數(shù)畫出一組由排列緊湊的星號(hào)組成的正方形。例如,side為4則畫出: * * * * * * * * * * * * 要求:

      (1)定義一個(gè)類,在類中定義無(wú)參的構(gòu)造方法。

      (2)定義有兩個(gè)類,在一個(gè)類中定義帶參的構(gòu)造方法,在另一個(gè)類中定義主方法。4.打印一個(gè)ASCⅡ碼表。

      要求定義兩個(gè)類,在一個(gè)類中定義無(wú)參的構(gòu)造方法,在另一個(gè)類中定義主方法。5.重復(fù)輸入數(shù)據(jù)計(jì)算正方形、長(zhǎng)方形與任意三角形面積(要求使用單一繼承)。

      答案 1.(1)答案

      namespace ConsoleApplication1 { class Square { Square(){ Console.Write(“Enter length of side for square:”);double len = double.Parse(Console.ReadLine());Console.WriteLine(“Area={0}”, len * len);} public static void Main(){ for(;;){ Square obj = new Square();Console.Write(“Do you want to continue?(y/n)”);string s = Console.ReadLine();if(s.Equals(“n”))break;}

      } } }

      運(yùn)行結(jié)果:

      (2)答案 namespace ConsoleApplication1 { class Square { public static readonly int N = 3;public Square(double len){ Console.WriteLine(“Area={0}”, len * len);} public static void Main(){ for(int i=1;i<=N;i++){ Console.Write(“Enter length of side for square: ”);string s=Console.ReadLine();double length=double.Parse(s);Square obj=new Square(length);} Console.ReadKey();} } } 運(yùn)行結(jié)果:

      2.題(1)答案

      namespace ConsoleApplication3 { class Function { public Function(){ Console.Write(“Enter value of x and r;”);string[] s = Console.ReadLine().Split();double x = double.Parse(s[0]);double r = double.Parse(s[1]);double y = Math.Abs(x)>= r ? 0 : Math.Sqrt(r * ry;} } static void Main(string[] args){ int x = 30, y = 50, a, b;fun(x, y out a ,out b)Console.WriteLine(“a=”+a +“b=”+b);} } A)50,30 B)30,50 C)80,—20 D)80,20

      二、填空題

      下面程序的執(zhí)行結(jié)果是()//FunApp2.cs Using System;class FunApp2 { int x = 888, y = 777, z = 666;public FunApp2(){ x++;y++;z++;} public FunApp2(int a, int b, int c){ x = a;y = b;z = c;} } public class FunApp { static void Main();FunApp2 obj1=new FunApp2();Console.Write Line(obj1.x);Console.Write Line(obj1.y);Console.Write Line(obj1.z);FunApp2 obj2=new FunApp2();Console.Write Line(obj2.x);Console.Write Line(obj2.y);Console.Write Line(obj2.z);} }

      二、編程題

      1,重復(fù)輸入任意數(shù)據(jù),計(jì)算y=

      ??0

      ???

      r2?x2

      |x|??r

      |x|?r要求:

      (1)使用值參數(shù)方法:(2)使用ref參數(shù)方法;(3)使用out參數(shù)方法;(4)使用ref與out參數(shù)方法;(5)使用重載方法;(6)使用重載構(gòu)造方法;(7)使用可變參數(shù)方法;(8)使用靜態(tài)方法。

      (1)答案: using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApplication1 { //YestA

      class YTest { public void yMethod(double x, double r){ Console.WriteLine(“y={0}”, Math.Abs(x)> r ? 0 : Math.Sqrt(r * rx * x);} } class YTest {

      第四篇:淺談C#程序設(shè)計(jì)課程的創(chuàng)新教學(xué)方法

      淺談C#程序設(shè)計(jì)課程的創(chuàng)新教學(xué)方法

      【摘要】本文主要討論高職軟件技術(shù)專業(yè)C#程序設(shè)計(jì)課程的教學(xué)方法,擬將創(chuàng)新學(xué)習(xí)的理論和實(shí)踐應(yīng)用于課程教學(xué)中,分析了接受性學(xué)習(xí)和創(chuàng)新學(xué)習(xí)各自的特點(diǎn)和適用知識(shí)的范圍。并對(duì)課堂教學(xué)模式、課后作業(yè)布置模式等教學(xué)環(huán)節(jié)提出了一些創(chuàng)新性的看法。

      【關(guān)鍵詞】教學(xué)方法主動(dòng)學(xué)習(xí)創(chuàng)新學(xué)習(xí)課件開發(fā)教師學(xué)習(xí)

      【中圖分類號(hào)】G71 【文獻(xiàn)標(biāo)識(shí)碼】A 【文章編號(hào)】2095-3089(2014)06-0249-01

      1.序言

      現(xiàn)在很多高職院校的軟件技術(shù)專業(yè)一般都開設(shè)了微軟公司開發(fā)的C#程序設(shè)計(jì)這門課程。學(xué)生對(duì)C#程序設(shè)計(jì)課程的學(xué)習(xí)都存在一定的問題。這門課程和那些傳統(tǒng)的知識(shí)型課程對(duì)比,有很多不一樣的創(chuàng)新思維過程在里面。因此這門課程的教學(xué)肯定不能像其它知識(shí)型課程那樣教學(xué),我們必須另想辦法來解決。筆者先后多次擔(dān)任《C#程序設(shè)計(jì)》課程的教學(xué),在教學(xué)過程中積累了一些實(shí)際的教學(xué)心得體會(huì)。

      2.創(chuàng)新教學(xué)的理論

      對(duì)于C#程序設(shè)計(jì)課程而言,其語(yǔ)法格式、變量、方法、屬性、封裝、繼承、多態(tài)等基本的程序設(shè)計(jì)技巧和方法都屬于可以采用接受性學(xué)習(xí)方式的概念性知識(shí)。而程序設(shè)計(jì)實(shí)例則是一項(xiàng)典型的創(chuàng)新活動(dòng),其主要的知識(shí)內(nèi)涵是如何在現(xiàn)有的知識(shí)和方法論的基礎(chǔ)上設(shè)計(jì)出不存在的知識(shí)作品(程序)。這就需要?jiǎng)?chuàng)新教學(xué)方法來使學(xué)生跟隨你的教學(xué)方式。

      所謂創(chuàng)新教學(xué)并不是與把學(xué)生接受性學(xué)習(xí)絕對(duì)對(duì)立的,它必須以接受性學(xué)習(xí)為基礎(chǔ)和前提。創(chuàng)新教學(xué)的主要特征就是讓學(xué)生以掌握知識(shí)的全部?jī)?nèi)涵為目的,運(yùn)用邏輯思維,通過再創(chuàng)新教學(xué)內(nèi)容的方式進(jìn)行,將知識(shí)的學(xué)習(xí)過程變?yōu)橹R(shí)的創(chuàng)新過程。

      3.創(chuàng)新教學(xué)的實(shí)際應(yīng)用

      筆者在實(shí)際教學(xué)過程中,對(duì)于那些理論性的知識(shí),如語(yǔ)法結(jié)構(gòu)、程序結(jié)構(gòu)、觸發(fā)事件服務(wù)等,筆者采用大量真實(shí)有趣的生活實(shí)例進(jìn)行案例教學(xué)方法。最后用一個(gè)綜合性的簡(jiǎn)單程序?qū)嵗齺砺?lián)系整門課程的大部分理論和實(shí)踐知識(shí),并且將這個(gè)實(shí)例程序的編寫過程錄制成屏幕錄像形式的動(dòng)畫文件,在動(dòng)畫中用注解的方式將教師的講解融入其中,程序設(shè)計(jì)中的注意事項(xiàng),要掌握的組件屬性、方法和事件以及其中蘊(yùn)含的編程技巧、程序的擴(kuò)展思路和思考問題都在動(dòng)畫中得以體現(xiàn)。教師上課時(shí)可以播放動(dòng)畫并作針對(duì)性講解,這樣就完全避免了這類課程在教學(xué)時(shí)教師邊操作、邊講解的手足無(wú)措的現(xiàn)象。更重要的是,有些學(xué)生在上課時(shí)經(jīng)常開小差或請(qǐng)假,下課又搞不懂,他就可以通過下載動(dòng)畫課件文件在課后反復(fù)觀看,就把老師在課堂上的講解重現(xiàn)出來方便學(xué)習(xí)。這樣就可以將課堂教學(xué)直接延伸到了課堂之外,使得教師的知識(shí)教學(xué)和學(xué)生的自主學(xué)習(xí)可以達(dá)到高效而持續(xù)的教學(xué)目的。筆者的演示課件一般是課堂主要實(shí)例的編制全過程錄像加上文字解說,采用的屏幕錄像軟件是由天狼星軟件工作室開發(fā)的《屏幕錄像專家》?!镀聊讳浵駥<摇泛鸵话闫聊讳浵褴浖淖畲髤^(qū)別是給制作者更大的靈活性,可以全過程錄制也可以手動(dòng)選擇重點(diǎn)知識(shí)需要的畫面進(jìn)行錄制,錄制完后還可以很方便地任意剪輯、添加幀以及加入有趣的注解形式,并且在后期還可以適當(dāng)加入部分配音。更難得的是《屏幕錄像專家》可以生成Flash格式的動(dòng)畫文件,使得課件文件存儲(chǔ)空間大大減小,一般一個(gè)45分鐘的屏幕錄像課件不到5MB。而其他AVI格式的屏幕錄像軟件制作出來的動(dòng)畫文件則動(dòng)輒幾十MB甚至一百多BM。

      對(duì)于軟件技術(shù)專業(yè)的當(dāng)代大學(xué)生來說,自學(xué)是獲取知識(shí)的另一次要途徑,它的重要性有時(shí)甚至超過課堂學(xué)習(xí)。筆者指導(dǎo)學(xué)生自學(xué)主要采用的是專業(yè)學(xué)習(xí)網(wǎng)站和圖書館資料。很多專業(yè)教學(xué)網(wǎng)站上都包括教材全部的知識(shí)點(diǎn)和實(shí)例的講解、源代碼甚至習(xí)題,學(xué)生可以通過這個(gè)網(wǎng)站完成初步自學(xué)的過程,這就大大減輕了教師課堂教學(xué)的壓力。另外通過興趣教學(xué)和擴(kuò)展性很強(qiáng)的課后作業(yè)可以督促學(xué)生充分地利用互聯(lián)網(wǎng)和圖書館等多種途徑去學(xué)習(xí)課程中所沒有的知識(shí)點(diǎn)、方法和技巧,使學(xué)生的創(chuàng)新學(xué)習(xí)能力得到很大的培養(yǎng)。

      在最后兩周的實(shí)訓(xùn)教學(xué)中,筆者采用的是一種模塊化的教學(xué)方式,將最后的那個(gè)程序項(xiàng)目分為若干個(gè)有序而獨(dú)立的子模塊讓學(xué)生自己思考,解決了一個(gè)子模塊的同學(xué)可以上講臺(tái)演示和講解,然后在此基礎(chǔ)上進(jìn)入下一個(gè)子模塊,直至問題全部解決,完整的可執(zhí)行的軟件應(yīng)用程序項(xiàng)目也就呈現(xiàn)出來。最后,教師對(duì)整個(gè)過程進(jìn)行點(diǎn)評(píng)。在此過程中,每一個(gè)解決模塊的學(xué)生必須根據(jù)上一個(gè)學(xué)生的思路來進(jìn)行,也可以修正上一個(gè)同學(xué)的不合理的編碼,臺(tái)下的同學(xué)可以自由參與討論或借鑒別人的經(jīng)驗(yàn),最終目的是讓每個(gè)學(xué)生完成一個(gè)完整的程序作品并上交教師,讓學(xué)生覺得心理有很大的滿足感和成就感。

      再探索過程是通過課后作業(yè)環(huán)節(jié)來實(shí)現(xiàn)的。作業(yè)的選題主要包含課程的知識(shí)點(diǎn)且有時(shí)要高于知識(shí)點(diǎn),其中作業(yè)要求也是分層次的,學(xué)生能夠做什么就做什么層次的作業(yè)。這些層次都是循序漸進(jìn)、環(huán)環(huán)相扣的,既體現(xiàn)了程序設(shè)計(jì)的趣味性又將面向?qū)ο蟮木幊趟枷肴谌氲阶鳂I(yè)中,更重要的是學(xué)生從這些作業(yè)的創(chuàng)新編程過程中體會(huì)到編程的樂趣和成就感,加深了他們對(duì)于程序設(shè)計(jì)的熱愛,提高了他們的創(chuàng)新思維能力。在筆者的教學(xué)實(shí)施過程中,課后作業(yè)這一環(huán)節(jié)是非常重要的,它是培養(yǎng)學(xué)生學(xué)習(xí)能力和解決問題能力最主要的教學(xué)環(huán)節(jié)。

      4.教師的創(chuàng)新學(xué)習(xí)

      教師的智能結(jié)構(gòu)包括知識(shí)結(jié)構(gòu)和能力結(jié)構(gòu)兩方面。創(chuàng)造型教師的知識(shí)結(jié)構(gòu)是一種三維立體結(jié)構(gòu)模式,它由知識(shí)的廣度、深度和獲取知識(shí)的方法三個(gè)維度變量組成。知識(shí)的廣度意味著創(chuàng)造型教師要具備廣博的科學(xué)基礎(chǔ)知識(shí),特別是新興的或邊緣學(xué)科知識(shí),能從多角度對(duì)自己的專業(yè)知識(shí)進(jìn)行審視分析、類比演繹,并且能在多學(xué)科交叉的“無(wú)人區(qū)”發(fā)現(xiàn)新問題,開拓新領(lǐng)域。知識(shí)的深度意味著創(chuàng)造型教師要具備精深的專業(yè)知識(shí),對(duì)本專業(yè)的新動(dòng)向和新成果有清晰的了解,并對(duì)本專業(yè)的課題有一定深度的見解,引導(dǎo)學(xué)生進(jìn)行科學(xué)研究與發(fā)明創(chuàng)造。獲取知識(shí)的方法意味著教師不僅教給學(xué)生固定的知識(shí),而且主要的是要教會(huì)學(xué)生獲得知識(shí)的方法。創(chuàng)新型教師就應(yīng)當(dāng)具備科學(xué)的方法論知識(shí),讓學(xué)生更快更有效地學(xué)習(xí)好科學(xué)文化知識(shí)。

      筆者在任課程教學(xué)的之余,經(jīng)常加強(qiáng)學(xué)習(xí),從軟件工程、UML、軟件測(cè)試等到各種程序設(shè)計(jì)語(yǔ)言的各個(gè)領(lǐng)域,除此之外,還多次利用暑假的時(shí)間深入軟件公司進(jìn)行真實(shí)項(xiàng)目開發(fā),有效拓寬了自己的知識(shí)面和研究創(chuàng)新能力,形成扎實(shí)的技術(shù)功底,在課堂面對(duì)學(xué)生時(shí)才能自信而游刃有余,也才有能力帶領(lǐng)學(xué)生進(jìn)入深入的創(chuàng)新學(xué)習(xí)的思維中。同時(shí)在自己的學(xué)習(xí)過程中嘗試運(yùn)用創(chuàng)新方法,使創(chuàng)新方法在課堂的實(shí)踐可以循著一條可行的思路,做到有據(jù)可依。

      5.結(jié)論

      知識(shí)是教師教學(xué)和學(xué)生學(xué)習(xí)的共同載體,將知識(shí)劃分為理論性知識(shí)和程序性知識(shí)而采取不同的學(xué)習(xí)和教學(xué)方法,是創(chuàng)新教學(xué)法在高職教育中的重要應(yīng)用原則。接受性學(xué)習(xí)和創(chuàng)新教學(xué)各自適用于不同的知識(shí)內(nèi)涵,而創(chuàng)新教學(xué)和教師的創(chuàng)造能力是教學(xué)中培養(yǎng)學(xué)生創(chuàng)新能力的重要因素。

      第五篇:《C#程序設(shè)計(jì)基礎(chǔ)教程與實(shí)訓(xùn)》習(xí)題答案

      附錄Ⅰ 各章習(xí)題答案

      第1章 C#語(yǔ)言概述

      一、判斷題

      1、√

      2、×

      3、√

      4、×

      5、√

      6、√

      7、×

      8、×

      二、選擇題

      1、C

      2、B

      3、C

      4、A

      5、A

      6、B

      7、B

      8、B

      三、填空題

      1、最新的;面向?qū)ο?/p>

      2、C和C++;JAVA

      3、先進(jìn)設(shè)計(jì)思想;安全性能

      4、靈活性

      5、集成開發(fā)環(huán)境(IDE)——Visual Studio.NET

      6、Microsoft.NET Framework(微軟.NET框架體系)

      7、最基本的通用語(yǔ)言運(yùn)行時(shí)庫(kù)CLR(Common Language Runtime);一些提供了具體功能的類庫(kù)

      8、需要開發(fā)和設(shè)計(jì)的項(xiàng)目文件;應(yīng)用程序或組件

      四、簡(jiǎn)答題

      1、① 簡(jiǎn)潔易用的語(yǔ)法。② 自動(dòng)的資源回收機(jī)制。③ 與Web的緊密結(jié)合。④ 完整的安全性與錯(cuò)誤處理。⑤ 版本處理技術(shù)。⑥ 靈活性和兼容性。

      2、C#程序必須包含一個(gè)Main方法,Main方法是程序的入口點(diǎn),程序控制在該方法中開始和結(jié)束。該方法用來執(zhí)行任務(wù),并在任務(wù)完成后返回信息。

      第2章 常用標(biāo)準(zhǔn)控件

      一、判斷題

      1、×

      2、×

      3、√

      4、×

      5、√

      6、×

      7、√

      8、√

      二、選擇題

      1、A

      2、C

      3、B

      4、D

      5、A

      6、B

      7、B

      8、D

      三、填空題

      1、輸入/輸出信息

      2、屬性

      3、事件

      4、TextAlign

      5、Click

      6、文本框(TextBox)

      7、保證數(shù)據(jù)標(biāo)準(zhǔn)化

      8、Show

      四、簡(jiǎn)答題

      1、簡(jiǎn)述生成控件的操作過程。

      (1)單擊工具箱中相應(yīng)的工具按鈕,這一按鈕呈現(xiàn)被按下狀態(tài),表明被選定。

      (2)移動(dòng)鼠標(biāo)到窗體上,這時(shí)鼠標(biāo)的指針變成十字形,在需要放置控件的左上角位置按下鼠標(biāo)左鍵。

      (3)在窗體范圍內(nèi)向下向右拖動(dòng)鼠標(biāo),這時(shí)窗體上會(huì)顯示一個(gè)矩形框,當(dāng)其大小合適時(shí),松開鼠標(biāo)左鍵,窗體上就會(huì)顯示一個(gè)相應(yīng)大小的這種控件。

      另外一種快捷的方法是在工具箱中相應(yīng)的工具按鈕上雙擊此按鈕,窗體上就會(huì)出現(xiàn)一個(gè)系統(tǒng)默認(rèn)大小的所選按鈕。

      2、消息框有多少種Button參數(shù)設(shè)置? OK:只顯示“確定”按鈕

      OKCancel:顯示“確定”和“取消”按鈕

      AbortRetryIgnore:顯示“終止”、“重試”和“忽略”按鈕 YesNoCancel:顯示“是”、“否”和“取消” YesNo:顯示“是”和“否”

      RetryCancel:顯示“重試”和“取消”

      第3章 數(shù)據(jù)類型

      一、填空題

      1、-2,147,483,648 到 2,147,483,647

      2、單精度;雙精度 3、16 4、1 5、99 6、2.2

      7、false

      8、隱式轉(zhuǎn)換;顯式轉(zhuǎn)換

      二、判斷題

      1、√

      2、×

      3、×

      4、√

      5、×

      6、×

      7、×

      8、×

      三、選擇題

      1、A

      2、C

      3、D

      4、A

      5、B

      6、B

      7、D

      8、C

      四、簡(jiǎn)答題

      1.請(qǐng)說明C#標(biāo)識(shí)符命名規(guī)則。

      (1)不能跟系統(tǒng)關(guān)鍵字重名。(2)標(biāo)識(shí)符由字母、下劃線“_”、數(shù)字或中文組成。(3)標(biāo)識(shí)符應(yīng)以字母、中文或下劃線開頭。(4)標(biāo)識(shí)符中間不能包含空格。(5)C#標(biāo)識(shí)符大小寫敏感。

      2.請(qǐng)簡(jiǎn)單說明銀行家舍入法。

      銀行家的舍法與四舍五入只有一點(diǎn)不同,對(duì).5的舍入上,采用取偶數(shù)的方式。例:1.25最近的兩個(gè)只有1位小數(shù)的數(shù)字為1.2和1.3,舍入的結(jié)果將選擇最后一位為偶數(shù)的數(shù)字1.2。同理,也可以推斷出1.35舍入后為1.4。

      如果在求和計(jì)算中使用四舍五入,一直算下去,誤差有可能會(huì)越來越大。機(jī)會(huì)均等才公平,也就是向上和向下各占一半才合理。在大量計(jì)算中,從統(tǒng)計(jì)角度來看,高一位分別是偶數(shù)和奇數(shù)的概率正好是50% : 50%。

      第4章 運(yùn)算符和表達(dá)式

      一、填空題

      1、?:

      2、0 3、1.1 4、2 5、2 6、2 7、18

      8、true

      9、false 10、2970

      二、判斷題

      1、×

      2、√

      3、×

      4、√

      5、√

      6、×

      7、×

      8、×

      三、選擇題

      1、B

      2、D

      3、B

      4、A

      5、C

      6、C

      7、D

      8、B

      四、簡(jiǎn)答題

      1.試闡述邏輯運(yùn)算符 & 和條件運(yùn)算符 &&之間的區(qū)別。

      && 運(yùn)算符與 & 運(yùn)算符的區(qū)別在于,&& 運(yùn)算符不能對(duì)整型進(jìn)行計(jì)算。另外,對(duì)于表達(dá)式 x && y 如果 x 為 false,則不計(jì)算 y(因?yàn)椴徽?y 為何值,“與”操作的結(jié)果都為 false)。這被稱作為“短路”計(jì)算。也就是說使用 && 運(yùn)算符進(jìn)行條件計(jì)算,比使用 & 運(yùn)算符速度更快些。

      2.請(qǐng)從高到低排列【&& 和 ||】、【算術(shù)運(yùn)算符】、【賦值運(yùn)算符】、【!(非)】、【關(guān)系運(yùn)算符】的優(yōu)先級(jí)順序。答:由高到低的順序?yàn)椋骸?(非)】?【算術(shù)運(yùn)算符】?【關(guān)系運(yùn)算符】?【&& 和 ||】?【賦值運(yùn)算符】 第5章 條件判斷語(yǔ)句

      一、判斷題

      1、×

      2、√

      3、×

      4、√

      5、√

      6、×

      7、×

      8、√

      二、選擇題

      1、A

      2、C

      3、A

      4、C

      5、B

      6、D

      7、A

      8、C

      三、填空題

      1、條件判斷語(yǔ)句、循環(huán)語(yǔ)句

      2、關(guān)系表達(dá)式、邏輯表達(dá)式

      3、bool

      4、執(zhí)行大括號(hào)里的語(yǔ)句塊;跳過語(yǔ)句塊,執(zhí)行大括號(hào)后面的語(yǔ)句

      5、都將會(huì)執(zhí)行

      6、只要找到為真的表達(dá)式就執(zhí)行相應(yīng)的語(yǔ)句塊并跳出整個(gè)判斷語(yǔ)句

      7、if;switch

      8、break

      四、簡(jiǎn)答題

      1、簡(jiǎn)單描述if語(yǔ)句的幾種形式。(1)if語(yǔ)句的一般表示形式為: if(表達(dá)式){ 語(yǔ)句塊 }(2)當(dāng)一個(gè)判斷語(yǔ)句只存在兩種可能的結(jié)果時(shí),可以使用if…else語(yǔ)句來表達(dá)。它的表現(xiàn)形式為:

      if(表達(dá)式){ 語(yǔ)句塊1 }else { 語(yǔ)句塊2 }(3)當(dāng)一個(gè)判斷語(yǔ)句存在多種可能的結(jié)果時(shí),可以使用if...else if...語(yǔ)句來表達(dá)。它的表現(xiàn)形式為:

      if(表達(dá)式1){ 語(yǔ)句塊1 } else if(表達(dá)式2){ 語(yǔ)句塊2 }...else if(表達(dá)式n){ 語(yǔ)句塊n }

      2、在switch語(yǔ)句時(shí)需要注意什么?

      (1)switch關(guān)鍵字后面的表達(dá)式,其值的類型必須是字符串或整數(shù)(char、int、long)都屬于整數(shù)類型。

      (2)case標(biāo)簽后面的值必須是常量表達(dá)式,不允許使用變量。(3)case和default標(biāo)簽以冒號(hào)而非分號(hào)結(jié)束。

      (4)case標(biāo)簽后面的語(yǔ)句塊,無(wú)論是單條語(yǔ)句還是多條語(yǔ)句,都無(wú)需用括號(hào)包圍。

      (5)default標(biāo)簽可以有,也可以沒有。case子句的排放順序是無(wú)關(guān)緊要的,甚至可以把default子句放在最前面。

      第6章 循環(huán)控制語(yǔ)句

      一、填空題

      1、順序結(jié)構(gòu);選擇結(jié)構(gòu);循環(huán)結(jié)構(gòu)

      2、false

      3、執(zhí)行循環(huán)體;判斷條件是否為真

      4、循環(huán)的嵌套

      5、-5 6、18 7、16 8、1

      二、判斷題

      1、√

      2、×

      3、√

      4、√

      5、√

      6、√

      7、√

      8、×

      三、選擇題

      1、C

      2、B

      3、C

      4、D

      5、B

      6、C

      7、D

      8、B

      四、簡(jiǎn)答題

      1、請(qǐng)說明do...while語(yǔ)句的表現(xiàn)形式。do { 語(yǔ)句塊 } while(表達(dá)式);

      當(dāng)流程到達(dá)do后,立即執(zhí)行語(yǔ)句塊,然后再對(duì)表達(dá)式進(jìn)行測(cè)試。若表達(dá)式的值為真,則返回do重復(fù)循環(huán),否則退出執(zhí)行后面的語(yǔ)句。這里特別需要注意的是跟while語(yǔ)句不同,do...while語(yǔ)句的表達(dá)式后面要加上分號(hào)。

      2、for語(yǔ)句的一般表現(xiàn)形式為: for(表達(dá)式1;表達(dá)式2;表達(dá)式3){ 語(yǔ)句塊 } for語(yǔ)句的執(zhí)行順序如圖所示,其中,當(dāng)表達(dá)式2的值為假時(shí),則直接跳出循環(huán)。表達(dá)式1:一般情況下用于給循環(huán)變量賦初值。

      表達(dá)式2:返回值必須是一個(gè)bool值,作為循環(huán)是否繼續(xù)執(zhí)行的條件。表達(dá)式3:一般情況下用于給循環(huán)變量增值。

      第7章 數(shù)組

      一、選擇題

      1、D

      2、B

      3、A

      4、C

      5、B

      6、A

      7、D

      8、C

      二、填空題

      1、類型

      2、零

      3、new

      4、大括號(hào)“{}”

      5、動(dòng)態(tài)數(shù)組

      6、引用

      7、地址

      8、行,列

      三、判斷題

      1、√

      2、×

      3、√

      4、√

      5、√

      6、×

      7、√

      8、×

      四、簡(jiǎn)答題

      1.請(qǐng)簡(jiǎn)述什么是數(shù)組?

      答:數(shù)組是具有相同類型的一組數(shù)據(jù)。數(shù)組按照數(shù)組名、數(shù)據(jù)元素的類型和維數(shù)來進(jìn)行描述。當(dāng)訪問數(shù)組中的數(shù)據(jù)時(shí),可以通過下標(biāo)來指明。

      2.請(qǐng)簡(jiǎn)述Array和ArrayList主要的區(qū)別?

      (1)Array 的容量是固定的,而 ArrayList的容量可根據(jù)需要自動(dòng)擴(kuò)充。

      (2)ArrayList提供添加、插入或移除某一范圍元素的方法。在 Array 中,您只能一次獲取或設(shè)置一個(gè)元素的值。

      (3)Array 可以具有多個(gè)維度,而 ArrayList始終只是一維的。

      第8章 GDI+圖形

      一、填空題

      1、GDI+

      2、Graphics

      3、Pen,Brush

      4、Rectangle,RectangleF

      5、Point

      6、DrawPolygon,F(xiàn)illPolygon

      7、橢圓

      8、Paint

      二、判斷題

      1、√

      2、×

      3、×

      4、×

      5、√

      6、√

      7、×

      8、×

      三、選擇題

      1、B

      2、B

      3、A

      4、D

      5、C

      6、A

      7、A

      8、D

      四、簡(jiǎn)答題

      1.試闡述Graphics圖形對(duì)象的幾種創(chuàng)建方法。

      (1)用某控件或窗體的CreateGraphics方法來創(chuàng)建Graphic對(duì)象,該對(duì)象表示該控件或窗體的繪圖表面。如果想在已存在的窗體或控件上繪圖,則可以使用此方法。

      (2)接收對(duì)圖形對(duì)象的引用,該對(duì)象為窗體或控件的Paint事件中PaintEventArgs的一部份。在為控件創(chuàng)建繪制代碼時(shí),通常使用此方法來獲取對(duì)圖形對(duì)象的引用。

      2.請(qǐng)簡(jiǎn)述使用虛擬畫布繪圖的步驟。(1)在內(nèi)存中建立一塊“虛擬畫布”如:(2)獲取這塊內(nèi)存畫布的Graphics引用:(3)在這塊內(nèi)存畫布上繪圖:(4)將內(nèi)存畫布畫到窗口中:

      第9章 方法

      一、選擇題

      1、B

      2、D

      3、A

      4、C

      5、C

      6、A

      7、B

      8、D

      二、填空題

      1、return

      2、void

      3、值參數(shù)

      4、數(shù)組型

      5、重載

      6、形參,實(shí)參

      7、成員變量

      8、遞歸

      三、判斷題

      1、√

      2、√

      3、√

      4、√

      5、×

      6、√

      7、×

      8、×

      四、簡(jiǎn)答題

      1.請(qǐng)簡(jiǎn)述用方法構(gòu)造代碼的好處?

      (1)方法允許將程序分為不連續(xù)的邏輯單元。調(diào)試單獨(dú)的單元與調(diào)試不包含方法的整個(gè)程序相比要容易的多。

      (2)可以在其他程序中使用為某個(gè)程序開發(fā)的方法,而通常只需要進(jìn)行少量修改,甚至不需修改。

      2.請(qǐng)簡(jiǎn)述什么是遞歸?

      答:在方法中直接或間接地調(diào)用自己叫方法的遞歸調(diào)用。樹型關(guān)系問題的求解往往需要使用到遞歸算法。

      3.請(qǐng)簡(jiǎn)述什么是方法的重載?

      答:當(dāng)定義兩種或多種具有相同名稱的方法時(shí),就稱作重載。在調(diào)用時(shí),編譯器會(huì)根據(jù)不同的方法簽名調(diào)用相應(yīng)的方法。

      第10章 窗體與控件

      一、選擇題

      1、B

      2、C

      3、C

      4、D

      5、B

      6、A

      7、D

      8、C

      二、填空題

      1、窗體

      2、Maximized

      3、Load

      4、true

      5、CheckedChanged

      6、ListBox

      7、Image

      8、Interval

      三、判斷題

      1、√

      2、×

      3、√

      4、√

      5、×

      6、×

      7、√

      8、×

      四、簡(jiǎn)答題

      1.請(qǐng)簡(jiǎn)述組合框的使用特點(diǎn)?

      答:當(dāng)需要用戶在多個(gè)選項(xiàng)中選擇一項(xiàng)時(shí),除可以使用單選按鈕外,還可以使用組合框(ComboBox)。組合框是TextBox與ListBox的組合,具有列表框和文本框的大部份屬性。組合框在列表框中列出可供用戶選擇的項(xiàng),另外還有一個(gè)文本框。當(dāng)列表框中沒有所需選項(xiàng)時(shí),允許在文本框中用鍵盤輸入用戶自定義的內(nèi)容。

      2.請(qǐng)列出圖片框(PictureBox)支持哪幾種類型的圖像?并進(jìn)行簡(jiǎn)單的說明。a)位圖(bitmap):是將圖像定義為像素的圖案,這種圖像格式體積很大,未經(jīng)壓縮。位圖文件的擴(kuò)展名是.bmp或.dib。b)圖標(biāo)(icon):是特殊類型的位圖。圖標(biāo)的最大尺寸為32×32像素。圖標(biāo)文件的擴(kuò)展名是.ico。

      c)Windows文件(metafile):將圖形定義為編碼的線段和圖形。普通圖元文件擴(kuò)展名為.wmf,增強(qiáng)圖元文件擴(kuò)展名為.emf。

      d)GIF:由CompuServe開發(fā)的一種壓縮位圖格式,是Internet上流行的一種文件格式。e)JPEG:是一種支持8位和24位顏色的壓縮位圖格式。也是Internet上流行的一種文件格式。

      第11章 界面設(shè)計(jì)

      一、選擇題

      1、C

      2、B

      3、C

      4、D

      5、C

      6、D

      7、A

      8、B

      二、填空題

      1、單文檔(SDI)應(yīng)用程序,多文檔(MDI)應(yīng)用程序

      2、ShowIcon,ShowInTaskbar,F(xiàn)ormBorderStyle3、DialogResult4、非模式

      5、菜單欄,菜單標(biāo)題,菜單項(xiàng)

      6、MenuItem,ComboBox,Separator,TextBox

      7、MDI 子窗口

      8、Cascade,TileHorizontal

      三、判斷題

      1、×

      2、√

      3、√

      4、×

      5、√

      6、×

      7、×

      8、√

      四、簡(jiǎn)答題

      1.請(qǐng)簡(jiǎn)述非模式窗體和模式窗體的區(qū)別。

      (1)打開一個(gè)非模式窗體后,用戶可以跟應(yīng)用程序的其他部分交流,而模式窗體不行。這意味著,程序在執(zhí)行到創(chuàng)建模式窗體的代碼時(shí),會(huì)停下來等待模式窗體關(guān)閉后再繼續(xù)往下執(zhí)行。而程序在打開非模式窗體的同時(shí)會(huì)繼續(xù)往下執(zhí)行后面的代碼。(2)非模式窗體沒有返回值,模式窗體有返回值。

      (3)關(guān)閉非模式窗體會(huì)直接在內(nèi)存中釋放窗體,而模式窗體則不會(huì)。

      (4)非模式窗體使用Show方法創(chuàng)建,模式窗體使用ShowDialog方法創(chuàng)建。

      2.簡(jiǎn)述創(chuàng)建一個(gè)MDI應(yīng)用程序的方法。

      (1)把作為MDI父窗體的窗體的IsMDIContainer 屬性設(shè)置為True。(2)新建一個(gè)窗體(假設(shè)窗體名為Form2)作為MDI子窗體。(3)在MDI父窗體中調(diào)用如下代碼即可顯示一個(gè)MDI子窗體。

      Form2 f2 = new Form2();f2.MdiParent = this;f2.Show();第12章 異常處理

      一、選擇題

      1、B

      2、B

      3、D

      4、A

      5、C

      6、A

      7、D

      8、C

      二、填空題

      1、try,catch,finally

      2、try-catch3、一個(gè),一個(gè)或多

      4、Exception

      5、改變編譯器的設(shè)置,使用校驗(yàn)(checked)語(yǔ)句

      6、The operation overflows at complie time in checked mode

      7、異常處理程序,清理代碼

      8、顯式地標(biāo)明了它所作用的語(yǔ)句塊或表達(dá)式不需要進(jìn)行溢出檢查

      三、判斷題

      1、×

      2、×

      3、√

      4、×

      5、√

      6、√

      7、√

      8、√

      四、簡(jiǎn)答題

      1.導(dǎo)致代碼失敗的具體原因有哪些?

      答:算術(shù)溢出、堆棧溢出、內(nèi)存不足、參數(shù)越界、數(shù)組索引越界、試圖訪問已經(jīng)釋放的資源(例如訪問一個(gè)已經(jīng)關(guān)閉的文件)等。

      2.在catch語(yǔ)句里可以使用哪幾種方法處理異常來獲得不同的執(zhí)行路徑? a)不寫任何跳轉(zhuǎn)代碼:這種方法使得系統(tǒng)忽略異常,程序會(huì)繼續(xù)往下執(zhí)行。b)使用return語(yǔ)句:它使得程序直接跳出方法體,回到調(diào)用方法的地方。c)使用throw 語(yǔ)句:它使得異常再次被拋出,表示當(dāng)前異常處理代碼無(wú)法處理此類異常,將異常轉(zhuǎn)給更上一級(jí)的異常處理程序進(jìn)行處理

      d)使用System.Environment.Exit(1)語(yǔ)句:它將直接關(guān)閉應(yīng)用程序,一般情況下不使用這樣的方法

      下載C#程序設(shè)計(jì)案例評(píng)語(yǔ)word格式文檔
      下載C#程序設(shè)計(jì)案例評(píng)語(yǔ).doc
      將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


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

      相關(guān)范文推薦

        電子面單怎么申請(qǐng)C#案例

        電子面單怎么申請(qǐng)C#案例 電子面單是一種通過熱敏紙打印輸出紙質(zhì)物流面單的物流服務(wù)。通過熱感應(yīng)顯示文字,打印速度比傳統(tǒng)針式打印速度提升4~6倍。電子面單以接口形式嵌入到自......

        報(bào)關(guān)案例程序設(shè)計(jì)5則范文

        作業(yè)6: ? 專營(yíng)進(jìn)料加工集成塊出口的外商投資企業(yè) A 公司,是適用B類管理的企業(yè)。該企業(yè)于3月份對(duì)外簽訂了主料硅片等原材料的進(jìn)口合同,原料交貨期為4月底。 ?5月初又對(duì)外簽訂......

        C#應(yīng)用程序設(shè)計(jì)教程 第二版+課后習(xí)題答案

        第一章 1.判斷題 (1)× √ √ × ×(6) √ 2.選擇題 (1)C B B C D(6) C 3.編程題 using System; using System.Collections.Generic; using......

        C#學(xué)習(xí)心得

        集合聲明:類B可以換成任意object對(duì)象1、CollectionBase類A繼承CollectionBase類,通過CollectionBase的成員List實(shí)現(xiàn)類A的Add(類B )、Remove(類B )和RemoveAt(類B )方法:public......

        C#總結(jié)

        引用類型是類型安全的指針,它們的內(nèi)存是分配在堆(保存指針地址)上的。 String、數(shù)組、類、接口和委托都是引用類型。 強(qiáng)制類型轉(zhuǎn)換與as類型轉(zhuǎn)換的區(qū)別:當(dāng)類型轉(zhuǎn)換非法時(shí),強(qiáng)制類型......

        c#讀書筆記

        1、.NET平臺(tái)包括.NET框架和.NET開發(fā)工具等組成部分。.NET框架是整個(gè)開發(fā)平臺(tái)的基礎(chǔ),包括公共語(yǔ)言運(yùn)行庫(kù)和.NET類庫(kù)。.NET開發(fā)工具包括Visual Studio.NET集成開發(fā)環(huán)境和.NET編......

        班主任評(píng)語(yǔ)案例

        學(xué)生姓名:秦娜自我評(píng)價(jià):1學(xué)習(xí)比較認(rèn)真,上課專心聽講,基本上能完成老師布置的任務(wù)2團(tuán)結(jié)友愛,沒有較高的集體榮譽(yù)感。3遵守學(xué)校紀(jì)律,不早退,不曠課。4基本上做到勤學(xué)好問,對(duì)學(xué)習(xí)不能夠......

        操行評(píng)語(yǔ)案例

        ××: 隨著時(shí)間的流逝,你即將面臨畢業(yè)、走向工作崗位,在班級(jí)這個(gè)大家庭中你是一個(gè)不可缺少的角色,這個(gè)班有了你讓老師省了很多的心。在此,老師要感謝你對(duì)工作的負(fù)責(zé),對(duì)班級(jí)的領(lǐng)導(dǎo)......