c#實(shí)驗(yàn)報(bào)告1-7--精選文檔_第1頁(yè)
c#實(shí)驗(yàn)報(bào)告1-7--精選文檔_第2頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、實(shí) 驗(yàn) 報(bào) 告學(xué)院: 計(jì)算機(jī)與信息學(xué)院 專業(yè): 軟件工程 年級(jí): 2008 姓名: 學(xué)號(hào): 實(shí)驗(yàn)室號(hào): 田312/313 計(jì)算機(jī)號(hào): 實(shí)驗(yàn)日期: 2010 年 4 月 2 日 指導(dǎo)教師簽字: 成績(jī): 報(bào)告退發(fā) (訂正 、 重做) 實(shí)驗(yàn)一 基本的代碼風(fēng)格(一)1、實(shí)驗(yàn)?zāi)康恼莆栈镜拇a風(fēng)格;能指出不符合基本代碼風(fēng)格的代碼。2、實(shí)驗(yàn)儀器(環(huán)境):計(jì)算機(jī)及VisualStudio.NET C#3、實(shí)驗(yàn)操作方法:了解和熟悉.NET C# IDE(集成開(kāi)發(fā)環(huán)境)的使用方法,輸入程序,對(duì)程序進(jìn)行編譯、調(diào)試和運(yùn)行。4、報(bào)告內(nèi)容:(1) 新建一個(gè)控制臺(tái)應(yīng)用程序,含有Console.WriteLine(Hell

2、o,0, World!);的輸出語(yǔ)句,并執(zhí)行通過(guò)此程序,把看到的結(jié)果截屏寫入報(bào)告;輸入代碼為:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication2 class Program static void Main(string args) Console.WriteLine(hello world); Console.Read(); 執(zhí)行程序截屏如圖1.1 圖1.1(2) 將以下代碼合理地分行,并改正其中不符合所學(xué)規(guī)范的地方,并逐

3、條加以報(bào)告:bitmap = new Bitmap(size.Width , size.Height , System.Drawing.Imaging.PixelFormat.Format32bppArgb); if(f=ImageFormat.Jpeg.Guid |f=ImageFormat.Tiff.Guid|f=ImageFormat.Png.Guid|f=ImageFormat.Exif.Guid) supportsPropertyItems=true; else supportsPropertyItems=false; 這句要求分成兩行:double containerAspectR

4、atio=(double)container.ClientWidth/container.ClientHeight ;private static void Exchage(object a,object b) object temp; temp=a;a=b; b=temp;如何給下面各個(gè)變量加注釋,注釋內(nèi)容分別是累加和、因子、索引、長(zhǎng)度:int num, factor, index, length;自找一段稍長(zhǎng)的代碼,使用空行分隔代碼塊使用縮進(jìn)改進(jìn)以下程序:int kmp_match(char t, char p, int flink, int n, int m)int i = 0, j =

5、 0;While (i b) x+; else y+;或者for(int i = 0; i b的時(shí)候輸出ab,否則出去ba if (a b) Console.WriteLine(ab); else Console.WriteLine(ba); Console.Read();注釋:這種注釋形式會(huì)產(chǎn)生一個(gè)基本的錯(cuò)誤:由于代碼長(zhǎng)度的增加,if結(jié)構(gòu)會(huì)變得更長(zhǎng),離被注釋的代碼太遠(yuǎn),注釋與代碼的位置相差太遠(yuǎn),不利于代碼清晰。這主要是因?yàn)樽⑨屌c相應(yīng)的代碼相隔太遠(yuǎn),所以解決方法就是:將注釋的內(nèi)容分開(kāi),采取更符合邏輯的方式,將注釋與其相應(yīng)的代碼寫在一起。int a=1; int b=2;/當(dāng)ab的時(shí)候輸出ab

6、if (a b) Console.WriteLine(ab); /,否則出去ba else Console.WriteLine(ba); Console.Read();(2)找出C#集成開(kāi)發(fā)環(huán)境里系統(tǒng)自動(dòng)生成的代碼中含有類似TODO注釋的語(yǔ)句,并說(shuō)說(shuō)這類注釋的含義;(3)多行注釋時(shí)格式上應(yīng)注意些什么?請(qǐng)給出例子;(4)類似以下的變量命名存在哪些問(wèn)題:private int 年齡;private int ge;private int ;(5)什么是命名中的Pascal規(guī)則和Camel規(guī)則?2個(gè)字母、3個(gè)字母或以上分別應(yīng)怎么處理?舉例說(shuō)明之;(6)考慮到跨語(yǔ)言編程,在命名上應(yīng)注意哪些問(wèn)題?(7)什

7、么是匈牙利命名法?請(qǐng)舉例說(shuō)明。實(shí) 驗(yàn) 報(bào) 告學(xué)院: 計(jì)算機(jī)與信息學(xué)院 專業(yè): 軟件工程 年級(jí): 2008 姓名: 學(xué)號(hào): 實(shí)驗(yàn)室號(hào): 田312/313 計(jì)算機(jī)號(hào): 實(shí)驗(yàn)日期: 2010 年 4 月 23 日 指導(dǎo)教師簽字: 成績(jī): 報(bào)告退發(fā) (訂正 、 重做) 實(shí)驗(yàn)四 數(shù)據(jù)處理1、實(shí)驗(yàn)?zāi)康恼_掌握數(shù)據(jù)類型;掌握變量的使用、枚舉的使用;理解使用魔數(shù)應(yīng)注意的問(wèn)題;避免表達(dá)式的副作用。2、實(shí)驗(yàn)儀器(環(huán)境):計(jì)算機(jī)及VisualStudio.NET C#3、實(shí)驗(yàn)操作方法:了解和熟悉.NET C# IDE(集成開(kāi)發(fā)環(huán)境)的使用方法,輸入程序,對(duì)程序進(jìn)行編譯、調(diào)試和運(yùn)行。4、報(bào)告內(nèi)容:(1)敘述十進(jìn)制浮點(diǎn)

8、數(shù)的整數(shù)部分和小數(shù)部分轉(zhuǎn)換成二進(jìn)制的方法,并給出轉(zhuǎn)換實(shí)例;(2)運(yùn)行如下程序,說(shuō)說(shuō)為什么無(wú)法出現(xiàn)期望的輸出(Console.WriteLine(OK!);)double i = 0.0;while (i 10)i += 0.2;Console.WriteLine(i.ToString();/if (Math.Abs(i-6.0) 0.01)if (i = 6.0)Console.WriteLine(OK!);而將/if (Math.Abs(i-6.0) 0.01)語(yǔ)句中的注釋符去掉,將下一句的if語(yǔ)句注釋,又能看到期望輸出的語(yǔ)句了,這又是為什么?把運(yùn)算結(jié)果截圖并說(shuō)明原因;(3) 理解枚舉類型的

9、聲明形式:enum name : base_type enumerator_list并自行舉例在C#環(huán)境下運(yùn)行,說(shuō)說(shuō)base_type的默認(rèn)數(shù)據(jù)類型是什么類型的,不能是什么類型的;(4) 何謂魔數(shù)(或稱幻數(shù))?舉例說(shuō)說(shuō)我們學(xué)習(xí)的第一類魔數(shù)和第二類魔數(shù)是各指什么樣的數(shù),為什么說(shuō)第一類魔數(shù)的存在是合理且不可避免的,第二類魔數(shù)則有著極大的危害?(5) 什么是帶有副作用的運(yùn)算符?舉例說(shuō)明帶有副作用的運(yùn)算符個(gè)數(shù)并非關(guān)鍵,真正產(chǎn)生歧義而影響可讀性的,是與帶有副作用的運(yùn)算符相關(guān)的操作數(shù)。實(shí) 驗(yàn) 報(bào) 告學(xué)院: 計(jì)算機(jī)與信息學(xué)院 專業(yè): 軟件工程 年級(jí): 2008 姓名: 學(xué)號(hào): 實(shí)驗(yàn)室號(hào): 田312/313

10、計(jì)算機(jī)號(hào): 實(shí)驗(yàn)日期: 2010 年 4 月 30 日 指導(dǎo)教師簽字: 成績(jī): 報(bào)告退發(fā) (訂正 、 重做) 實(shí)驗(yàn)五 過(guò)程及函數(shù)1、實(shí)驗(yàn)?zāi)康恼_使用分支結(jié)構(gòu)中的條件語(yǔ)句;正確使用switch語(yǔ)句;了解可變長(zhǎng)參數(shù)的函數(shù);了解帶ref和out參數(shù)的函數(shù)。2、實(shí)驗(yàn)儀器(環(huán)境):計(jì)算機(jī)及VisualStudio.NET C#3、實(shí)驗(yàn)操作方法:了解和熟悉.NET C# IDE(集成開(kāi)發(fā)環(huán)境)的使用方法,輸入程序,對(duì)程序進(jìn)行編譯、調(diào)試和運(yùn)行。4、報(bào)告內(nèi)容:(1)說(shuō)說(shuō)下面兩個(gè)判斷語(yǔ)句的區(qū)別,請(qǐng)?jiān)贑#環(huán)境下帶入實(shí)際值運(yùn)行并將兩種結(jié)果截屏寫入本報(bào)告中。為保持程序在不同語(yǔ)言環(huán)境下的通用性,編碼時(shí)應(yīng)該采用下面哪一個(gè)

11、?1) if (!(x % 2) Console.WriteLine(“偶數(shù)”);2) if (x % 2 = 0) Console.WriteLine(“偶數(shù)”);(2)在C#環(huán)境中運(yùn)行如下程序,再改變m的值,查看結(jié)果;如果缺其中某break;語(yǔ)句會(huì)有什么結(jié)果?為什么要有default語(yǔ)句?給出截圖報(bào)告。int m = 4; string desc = null; switch(m) case 1: case 2: case 3: desc = 第一季度; break; case 4: case 5: case 6: desc = 第二季度; break; case 7: case 8: c

12、ase 9: desc = 第三季度; break; case 10: case 11: case 12: desc = 第四季度; break; default: desc = 無(wú)此數(shù)相應(yīng)的季度; break; Console.WriteLine(0,desc);(3)可變長(zhǎng)參數(shù)的函數(shù)的練習(xí)using System;using System.Collections.Generic;using System.Text; public class MyClass public static void UseParams(params int list) for(int i = 0; i list

13、.Length; i+) Console.WriteLine(listi); Console.WriteLine(); public static void UseParams2(params object list) for (int i = 0; i = 0) age = value; else throw new ArgumentOutOfRangeException( Age must be greater than or equal to zero); /UnsafePerson結(jié)構(gòu)將age字段直接暴露在外 public struct UnsafePerson public int

14、Age;public class Program public static void Main() SafePerson safePerson; UnsafePerson unsafePerson; safePerson.Age = -3; /將會(huì)引發(fā)異常 unsafePerson.Age = -3; /不會(huì)有任何提示 上述代碼中為什么safePerson.Age = -3;將會(huì)引發(fā)異常而unsafePerson.Age = -3;不會(huì)有任何提示?應(yīng)該用哪一個(gè)才是正確的?實(shí) 驗(yàn) 報(bào) 告學(xué)院: 計(jì)算機(jī)與信息學(xué)院 專業(yè): 軟件工程 年級(jí): 2008 姓名: 學(xué)號(hào): 實(shí)驗(yàn)室號(hào): 田312/313

15、計(jì)算機(jī)號(hào): 實(shí)驗(yàn)日期: 2010 年 5 月 14 日 指導(dǎo)教師簽字: 成績(jī): 報(bào)告退發(fā) (訂正 、 重做) 實(shí)驗(yàn)七 類的繼承、接口1、實(shí)驗(yàn)?zāi)康恼_理解類的繼承、接口等概念。2、實(shí)驗(yàn)儀器(環(huán)境):計(jì)算機(jī)及VisualStudio.NET C#3、實(shí)驗(yàn)操作方法:了解和熟悉.NET C# IDE(集成開(kāi)發(fā)環(huán)境)的使用方法,輸入程序,對(duì)程序進(jìn)行編譯、調(diào)試和運(yùn)行。4、報(bào)告內(nèi)容:(1)抽象類抽象方法的實(shí)現(xiàn)輸入以下程序,理解抽象類抽象方法的實(shí)現(xiàn)并將結(jié)果截屏輸出。/定義基類Shapepublic abstract class Shape protected string Color; public Shap

16、e() ; public Shape(string Color) this.Color = Color; public string GetColor() return Color; public abstract double GetArea();/抽象方法的寫法/定義Circle類,從Shape類中派生public class Circle : Shape private double Redius; public Circle(string Color,double Redius) this.Color = Color; this.Redius = Redius; public over

17、ride double GetArea() /派生類重載的實(shí)現(xiàn) return System.Math.PI * Redius * Redius; /派生類Rectangular,從Shape類中派生public class Rectangular : Shape protected double Length, Width; public Rectangular(string Color, double Length, double Width) this.Color = Color; this.Length =Length; this.Width = Width; public overri

18、de double GetArea() return Length * Width; public double PerimeterIs() return (2 * (Length + Width); /派生類Square,從Rectangular類中派生public class Square : Rectangular public Square(string Color, double Side) : base(Color,Side,Side) ; public class TestInheritance public static void Main(string args) Circl

19、e Cir = new Circle(orange,3.0); Console.WriteLine(Circle color is 0,Circle area is 1,Cir.GetColor(),Cir.GetArea(); Rectangular Rect = new Rectangular(red, 13.0, 2.0); Console.WriteLine(Rectangular color is 0,Rectangular area is 1,Rectangular Perimeter is 2,Rect.GetColor(),Rect.GetArea(), Rect.PerimeterIs(); Square Squ = new Square(green, 5.0); Console.WriteLine(Square color is 0,Square Area is 1,Square perimeter is 2, Squ.GetColor(), Squ.GetArea(), Squ.PerimeterIs(); (2)運(yùn)行以下關(guān)于接口的程序,理解程序中定義的兩個(gè)接口和一個(gè)類,接口之間也有繼承關(guān)系以及繼承了接口中的方法;接口只能定義方法,實(shí)現(xiàn)要由類或者結(jié)構(gòu)來(lái)完成等概念。并給出運(yùn)行結(jié)果

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論