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

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

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

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

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

      C#語言和數據庫技術基礎學習小結(5篇材料)

      時間:2019-05-13 19:50:05下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關的《C#語言和數據庫技術基礎學習小結》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《C#語言和數據庫技術基礎學習小結》。

      第一篇:C#語言和數據庫技術基礎學習小結

      C#語言和數據庫技術基礎學習小結

      第1章

      第一個 C#程序

      一..NET 是 Microsoft.NET 的簡稱,是基于 Windows平二.Program.cs:該文件是項目的啟動文件,在該文件中 定義項目的啟動入口,即 Main()方法。在 C#中,程序 源文件以.cs 作為擴展名。

      三.HelloWorld.exe:這個文件位于 binDebug 目錄下,是項目編譯后的可執(zhí)行文件,可以直接運行。四.C#關鍵字

      1.namespace 關鍵字:namespace(命名空間)是 C# 中組織代碼的方式,它的作用類似于 Java 中的 package(包)這樣我們就可以把密切相關的一些代碼放在同,一個命名空間中,大大提高管理和使用的效率。2.using 關鍵字:

      使用 Using 關鍵在來引用其他命名空間。3.class 關鍵字:

      不要求類名必須與源文件的名字一樣。4.Main()方法:是程序運行的入口 5.關鍵代碼: Console.WriteLine();//從控制臺輸出內容 Console.ReadLine();五.C#中數據類型 //從控制臺輸入

      1.整型:int。2.浮點型:float。3.雙精度型:double。4.字符串:string。5.布爾型:bool。六.C#中變量命名的規(guī)則:

      1.組成: 個英文字母52(A-Z、、個數字a-z)10(0-9)、下劃線(_),除此之外不能包含其他字符。2.開頭:只能以字母或下劃線開頭。3.不能使用的:不能使用 C#中的關鍵字。七.常用的輸出方法有兩個: 1.Console.WriteLine(),輸出后換行 2.Console.Write(),輸出后不換行 第2章

      一.switch 結構: C#語法快速熱身

      switch(int/char/string 表達式){ Case 常量表達式 1: 語句 1; break; //必須有 } 二.一維數組: 數據類型[ ] 數組名; //創(chuàng)建一個含有 //省略數組長度 //省略 new 關鍵

      1.Int[ ] array=new int[5]{0,1,2,3,4,};五個整型數組的數組

      2.int[ ] arra1=new int[] { 0,1,2,3,4};3.int[ ] arra2={0,1,2,3,4};字

      三.通過數組的 Length 屬性,可以獲得數組長度,通常 會用它來作為循環(huán)終止條件 語法:數組名.Length;同 Java 一樣,訪問數組的元素使用的形式如下,下標 從 0 開始,C#中我們也把下標叫做索引。數組名[下標] 四.foreach 循環(huán):

      each 是每個的意思,foreach 結構用于遍歷一個數據 集(如數組)的每一項,需要設置一個標識符(變量)語法: Foreach(類型 元素 in 集合或者數組){ 代碼塊 }

      語法中的“元素”是一個只讀變量 五.循環(huán)應用的區(qū)別如下:

      1.while 循環(huán)是先判斷條件表達式是否成立。若成立則 實行循環(huán)體;否則結束循環(huán)

      2.do-while 循環(huán)先執(zhí)行一次循環(huán)體再判斷條件表達是 否成立。若成立則繼續(xù)循環(huán),否則結束循環(huán)

      3.for 循環(huán)必須使用整型變量做循環(huán)計算器,通過條件 表達式限定計數器變量值來控制循環(huán) 4.foreach()自動遍歷給定集合的所有值 六.冒泡排序算法:

      1.N 個數字來排隊,兩兩相比小靠前 2.外層循環(huán) N-1,內層循環(huán) N-1-i;3.如果要降序排序,只要把程序中的大于號換成小于 號就行了 第3章

      使用屬性升級 MyBank 一.訪問修飾符:訪問修飾符是用來修飾類成員字段和 方法的符號,依次限定類成員的可訪問級別 private(私有的)

      如果將類的成員(變量或者方法)聲明為 public,就 表示這些成員可以被其他類訪問。如果使用 private 限 定類成員的訪問權限,那么這些類成員就只能在該類 里面使用,其他類對它們沒有訪問權限

      如果將某個字段或者方法聲明為 public,就表示其他 類可以訪問這個字段和方法;如果聲明為 private,那 么該字段或者方法只能在本類中使用,其他類不能訪 問

      二.C#中的訪問修飾符:

      1.public 不受任何限制訪問級別最高

      2.private 只有類的內部可以使用訪問級別最低 注:如果在成員定義之錢沒有制定訪問修飾符,那么 這個類成員的訪問權限默認為 internal,它只能在本項 目內訪問 三.this 關鍵字:

      this 是指當前對象本身,通過 this 可以引用當前類的 成員變量和方法,使用 this 關鍵字可以解決成員變量 和局部變量名稱沖突問題 四.用屬性實現字段分裝: 1.C#的屬性:

      如果要訪問類中的字段,需要通過 get 和 set 訪問器實 現,這種結合了字段和方法的實現方式我們成為屬性(property)。

      2.get 訪問器用來返回相應的私有字段的值,get 訪問器 與方法相似,必須用 return 語句返回字段的值 3.set 訪問器用來設定希相應的私有字段的值,set 訪 問器類似于返回類型為 void 的方法,它使用一個隱含 的輸入參數 value 4.屬性的數據類型:

      定義類中的一個屬性是,屬性的數據類型必須與它所 訪問的字段類型一致 5.屬性的訪問類型:

      只讀屬性:只包含 get 訪問器 只寫屬性:值包含 set 訪問器 讀寫屬性,包含 get 和 set 訪問器 五.編程規(guī)范:

      1.在為類的私有字段命名時,要以下劃線“_”開頭,隨后出現的英文字母采用 Camel 命名法,即以第一個 單詞的首字母小寫,如果字段由多個單詞組成,其后 單詞的首字母大寫

      2.在為類的屬性命名時,采用 Pascal 命名法。即組成 屬性名稱的多個單詞的首字母要大寫 3.封裝字段的快捷鍵是:Ctrl+R+E 六.封裝的優(yōu)點: 1.避免使用非法數據賦值 2.保證數據的完整性

      3.避免內部發(fā)生修改時,導致整個程序的修改 六.按引用傳遞參數:

      要想使參數按引用傳遞,需要使用 ref 關鍵字來修飾 參數 第4章

      1.bool Equals(string 深入 C#的 String 類

      value):比較一個字符串與另一個 一.常用的字符串處理方法

      字符串 value 的值是否相等,如果二者相等返回 true,如果不相等返回 false,該方法的作用與運算符“==” 相同

      2.int Compare(string str A ,string str B):比較兩個字符串 的大小關系,返回一個整數,如果 str A 小于 str B,返 回值小于 0,如果 str A 等于 str B,返回值為 0,如果 str A 大于 str B,返回值大于 0 3.int IndexOf(string value):獲取指定的 value 字符串在 當前字符串中第一個匹配項的位置,如果找到了 value, 就返回它的位置,如果沒有找到就返回-1.4.int LastIndexOf(string value):獲取指定的字符串

      value 在當前字符串字符串中最后一個匹配項的位置,如果找到了 value,就返回它的位置,如果沒有找到,就返回-1.5.string Join(string separator, string[] value):把字符串

      數組 value 中的每個字符串用指定的分割符 separator 連接,返回連接后字符串 6.string[] Split(char 7.string 8.string 9.string 10.string separator): 用 制 定 的 分 割 符

      separator 分割字符串,返回分割后的字符串數組 Substring(int startdex, int length):從制定的位 ToLower():獲取字符串的小寫形式 ToUpper():獲取字符串的大寫形式 Trim():去掉字符串前后兩端多余的空格

      置 startIndex 開始檢索長度為 length 的子字符串 二.運算符==和 String 類方法 Equals()的區(qū)別如下: 1.==通常用來比較 int,double 等數值類型的數據是否 相等

      2.Equals()通常用來比較兩個對象的值是否相等 三.“”和 String.Empty 的區(qū)別如下:

      1.“”為 String 對象分配一個長度為零的儲存空間 2.String.Empty 不會為對象分配儲存空間 四.Foramt 格式化:

      String myString=String.Format(“格式字符串” 參數列 表);五.格式化數值結果表: C:貨幣格式 D:十進制格式 F:小數點后的位數固定 N:用逗號(,)隔開的數字 P:百分比計數法 X:十六進制格式 五.簡單的類型轉換: 1.隱式類型轉換 2.顯示類型轉換

      六.數值類型與字符串之間的轉換 1.字符串轉換為數值型: 控制臺接收整數:

      int.Parse(Console.ReadLine());字符串轉換為整型的代碼: Int.Parse(string);字符串轉換為單精度浮點型的代碼: float.Parse(string);字符串轉換為雙精度浮點型: Double.Parse(string);2.數值型轉換為字符串: 第6章

      程序數據集散地:數據庫 一.使用數據庫的必要性:

      1.可以結構化存儲大量的數據信息,方便用戶進行有 效的檢索和訪問

      2.可以有效地保持數據信息的一致性,完整性,降低 數據冗余

      3.可以滿足應用的共享和安全方面的要求

      4.數據庫技術能夠方便智能化地分析,產生新的有用 信息

      二.數據庫的基本概念:

      1.實體:是所有客觀存在的,可以被描述事物,這些 都被稱為實體 2.記錄:每一“行”實際上對應一個實體,這樣的一 行,在數據庫中,通常叫做一條記錄

      3.表格中的每一“列” 如編號,姓名,年齡,民族等,在數據庫中,通常叫做“列”,也可稱之為“字段” 三.數據庫管理系統(tǒng)和數據庫系統(tǒng)

      1.數據庫管理系統(tǒng)、DBMS 是一種系統(tǒng)軟件,由一個 互相關聯的數據集合和一組訪問數據的程序構成。數 據庫管理系統(tǒng)的主要功能是維護數據庫,并有效的訪 問數據庫中各個部分的數據。

      2.數據庫系統(tǒng)、DBS、是一個實際可運行的系統(tǒng),可以 對系統(tǒng)提供的數據進行存儲,維護和應用,它是有存 儲介質,處理對象和管理系統(tǒng)共同組成的集合體,通 常有軟件、數據庫和數據管理員組成

      3.數據庫管理員、DBA 在數據庫系統(tǒng)中負責創(chuàng)建,監(jiān) 控和維護整個數據庫,使數據能被有權使用的人有效 使用

      四.數據冗余和數據完整性

      1.在數據庫系統(tǒng)中,數據重復的現象就是數據冗余 2.數據的完整性是指數據庫的準確性 五.數據庫按照用途可以劃分為如下兩種 1.系統(tǒng)數據庫 2.用戶數據庫 系統(tǒng)數據庫是管理和維護 SQL 六.數據庫操作權限:

      1.db_backupoperator 權限可以備份數據庫 2.db_datareader 可以讀取數據庫中的數據 3.db_denydatareader 不允許讀取數據 七.創(chuàng)建數據庫

      1.數據庫文件:一個數據庫可以有一個后多個數據庫 文件,一個數據庫文件只屬于一個數據庫,當有多個 數數據庫文件時,有一個文件被定義為主數據庫文件,主數據庫文件的擴展名為.mdf,它用來存儲數據庫的 啟動信息數據。一個數據庫只能有一個主數據庫文件,其他數據庫文件被稱為次數據庫文件。Server 所必須的數據

      庫,用戶數據庫是用戶自己建立的數據庫

      2.事物日志文件:事物日志文件用來記錄數據庫的更 新情況,在對數據庫進行操作的時候,數據庫中內容 更改的操作信息都會記錄在此文件中,事物日志文件 的文件擴展名為.ldf,一個數據庫可以有一個或多個事 物日志文件

      3.文件組:類似于文件夾,文件組主要用于分配磁盤 空間并進行管理,每個文件組有一個組名,與數據庫 文件一樣,文件組也分為主文件組和此文件組 八.數據庫關注選項: 1.兼容級別 2.數據庫為只讀 3.訪問限制 4.自動關閉 5.自動收縮

      九.數據庫的管理和維護

      1.分離和附加數據庫:移動數據庫分亮不進行,首先 是分離數據庫,然后是附加數據庫 2.備份和還原數據庫:

      四種數據庫備份方式:1.完全備份 2.差異備份 3.事物 日志備份 4.文件和文件組備份 第7章 一.數據完整性 用表組織數據

      1.實體完整性約束:要求表中的每一行數據都反應不 同的實體,不能存在相同的數據行,通過索引、唯一 約束、主鍵約束或標識列屬性,可以實現表的實體完 整性

      2.域完整性約束:域完整性指的是給定列輸入的有效 性,通過限制數據類型、檢查約束、輸入格式、外鍵 約束,默認值、非空約束等多種方法,可以實現表的 完整性

      3.引用完整性約束:在輸入或刪除數據行時,引用完 整性約束來保持表之間已定義的關系 4.自定義完整性約束: 二.主鍵和外鍵

      1.主鍵:需要一個列,這個列的值用來標識表中的每 一行,用于強制表的實體完整性,這樣的列定義為表 的主鍵,一個表只能有一個主鍵

      2.外鍵:外鍵用來強制引用完整性,一個表可以有多 個外鍵

      三.確定列的數據類型:1.二進制數據類型 2.文本數據 類型 3.日期和數據類型 4.數字數據類型 5.貨幣數據類 型 6.bit 數據類型 第8章 操縱語言

      用 SQL 語句操作數據

      一.SQL 的組成:1.DML:數據操作語言,也成為數據 2.DDL:數據定義語言 3.DQL 數據查詢語言 4.DCL 數據 控制語言

      二.SQL 中的預算符

      1.算數運算符 2.賦值運算符 3.比較運算符 4.邏輯運 算符

      三.使用 T_SQL 插入數據 1.使用 INSERT 插入數據: 語法:INSERT 列表)2.一次插入多行數據:通過 INSERT SELECT 語句將現 有表中的數據添加到已存在的表中

      例:INSET INTO AddressList(姓名、地址、電子郵件)SELECT SName, SAdress, SEmail FROM Students 3.通過 SELECT INTO 語句將現有表中的數據添加到新 表中: 語法:SELECT 增長量)AS 列名

      IDENTITY(數據類型,標識種子,標識 [INTO] 表名[列名列表] VALUES(值 INTO 新表 FROM 原始表

      4.通過 UNION 關鍵字合并數據進行插入 5.使用 UPDATE 更新數據:

      語法:UPDATE 表名 SET 列名 = 更新值 [WHERE 更新 條件] 6.使用 T_SQL 刪除數據 語法:DELETE [FROM] 表名 [WHERE<刪除條件>] 7.使用 TRUNCATE TABLE 刪除數據 第9章 語法:

      SELECT <列名> FROM<表名> 數據查詢基礎

      一.使用 SELECT 語句進行查詢 [WHERE<查詢條件表達式>] [ORDER BY<排序的列名>[ASC 或 DESC]] 1.查詢所有的數據行和列: SELECT * FROM Students 2.查詢部分行或列 3.在查詢中使用列的別名

      4.查詢空值:在 SQL 語句中采用“IS NULL”或者“IS NOT NULL”來判斷是否為空: SELECT IS NULL 5.在查詢中使用常量列 6.查詢返回限制的行數 二.查詢排序

      如果需要按照一定順序排列查詢語句選中的行,則 需要使用 ORDER BY 子句,并且排序可以是升序

      (ASC)或者降序(DESC)如果不指定 ASC 或者 DESC,記錄集按默認 ASC 升序排序 三.在查詢中使用函數 1.字符串函數:

      CHARINDEX:用來尋找指定的字符串在另一個字符 串中的起始位置

      LEN:返回傳遞給它的字符串長度

      RIGHT:從字符串右邊返回指定數目的字符,右邊去字 符

      REPLACE:替換一個字符串中的字符 2.日期函數:

      GETDATE:取得當前的系統(tǒng)日期

      DATEADD:將指定的數值添加到指定的日期部分后的 SName FROM Students WHERE SEmail 日期

      DATEDIFF:兩個日期之間的指定日期部分間隔 DATENAME:日期中指定部分的字符串形式 DATEPART:日期中指定日期部分的整數形式 3.數學函數:

      RAND:返回從 0 到 1 之間的隨機 float 值

      CEILING:向上取整,取大于或等于指定數值,表達式 的最小整數、大于它的最小整數

      FLOOR:向下取整數,取小于或等于指定表達式的最 大整數、小于它的最大整數

      ROUND:將數值表達式四舍五入為指定精度 4.系統(tǒng)函數:

      CINVERT:用來轉變數據類型 第 10 章 來進行

      模糊查詢和聚合函數

      一.模糊查詢:模糊查詢可以使用 LIKE 關鍵字,通配符 1.通配符:通配符是一類字符,它可以代替一個或多 個真正的字符,查找信息時作為替代字符出現-:一個字符 CS、Cd 等 示例:A LIKE ’C_’,則符合條件的 A 如 %:任意長度的字符串 如 CONST、COKE 等

      B LIKE ‘CO%’,則符合條件的 B C LIKE ’WO[1-2]’, D LIKE []:括號中所指定范圍內的一個字符 則符合條件的 C 如 9W01 或 9W02 [^]:不在括號中所指定范圍內的任意一個字符 二.使用 BETWEEN:在某個范圍內進行查詢:

      ‘9W0[^1-2]’,則符合條件的 D 如 9W03 或 9W07 等 例:查詢分數在 60(含)到 80(含)之間的信息: SELECT *FROM Score BETWEEN 60 AND 80 三.使用 IN 在列舉值內進行查詢:

      例: 查詢北京、廣州、或者上海的學生姓名:

      SELECT SName AS 學生姓名 FORM Students WHERE SAdress IN(‘北京’,’廣州’,’上?!?ORDER BY SAdress 四.聚合函數:

      1.SUM():返回表達式中所有數值的總和 2.AVG():返回表達式中所有數值的平均值 3.MAX():返回表達式中的最大值 4.MIN():返回表達式中的最小值

      5.COUNT():返回提供的組或記錄集中的計數,另外也 可以使用星號(*)作為 COUNT 的表達式 第 11 章

      聯接查詢和分組查詢

      一.使用 group by 進行分組查詢 二.使用 having 子句進行分組篩選 group by 后面一般跟字段

      -----------------------having 分組后篩選、where 查詢后篩選

      --where 子句:用來篩選 from 子句中指定的操作所產生 的行

      --group by 子句:用來分組 where 子句的輸出--having 子句:用來從分組的結果中篩選行---------------------------總結(內聯查詢)三.多表聯接查詢:--1.inner join....on select a 表.列名,b 表.列名 from a 表 inner join b 表 on a 表.主鍵=b 表.外鍵 where 條件 and......--2.where select a 表.列名,b 表.列名 from a 表,b 表 where a 表.主鍵=b 表.外鍵 and.......--交叉查詢 cross join--完整聯接 Full join--總結

      --左外聯 left join...on(會把 left 左邊表的數據全部顯 示)null--右外聯 right join...on(會把 rigth 左邊表的數據全部 顯示)null 第 14 章

      使用 ADO.NET 訪問數據庫 一.ADO.NET 的主要組件:

      1..NET Framework 數據庫提供程序:專門為數據處理 以及快速地只進、只讀訪問數據而設計的組建。2.DataSet(數據集):是專門為獨立于任何數據源的數 據訪問而設計的

      二..NET Framework 數據提供程序的四個核心對象: 1.Connection:建立與特定的數據源的連接 2.Command:對數據源執(zhí)行命令

      3.DataReader:從數據源中讀取只進且只讀的數據流 4.DataAdapter:用數據源填充 DataSet 并解析更新 總結:

      一.查詢單個值: 1.創(chuàng)建連接字符串 string str=“server=.;database= 數 據 庫

      名;uid=sa;pwd=sa”;2.創(chuàng)建 connection 對象

      SqlConnection connection=new SqlConnection(str);3.打開數據庫連接 connection.Open();4.創(chuàng)建 Sql 語句 string sql="";5.創(chuàng)建 command 對象 SqlCommand SqlCommand(sql,connection);6.執(zhí)行 sql 命令 int result=Convert.ToInt32(command.ExecuteScalar());(轉換)7.關閉數據庫連接 connection.Close();二.查詢若干條記錄: 需要使用 Command 對象的 ExecuteReader()方法,步 驟如下:

      1.創(chuàng)建 Connection 對象 2.拼寫 SQL 查詢語句 command=new 3.使用 SQL 語句和 Connection 對象創(chuàng)建 Command 對 象

      4.打開數據庫連接,調用 Connection 對象的 Open()方 法

      5.調用 Command 對象的 ExecuteReader()方法,返回一 個 DataReader 對象

      6.在循環(huán)中使用 DataReader 對象的 Read()方法,逐行 讀取記錄。如果讀到記錄則返回 true,否則返回 false。7.使用(type)dataReader[列名或索引]的方式讀取這一 行中某一列的值

      8.調用 DataReader 對象的 Close()方法,關閉 DataReader 對象

      9.操作完成后關閉數據庫連接,調用 Connection 對象 的 Close()方法 三.數據更新操作:

      對數據庫執(zhí)行數據更新操作時(包括增加,修改,刪 除數據)都使用 Command 對象的 ExecuteNonQuery()方法,步驟如下: 1.創(chuàng)建 Connection 對象 2.拼寫 SQL 增刪改語句

      3.使用 SQL 語句和 Connection 對象創(chuàng)建 Command 對 象

      4.打開數據庫連接,調用 Connection 對象的 Open()方 法

      5.調用 Command 對象的 ExecuteNonQuery()方法執(zhí)行 命令,返回數據庫中受影響的行數

      6.操作完成后關閉數據庫連接,調用 Connection 對象 的 Close()方法

      Command 對象的三種方法的對比如下所示:

      ExecuteScalar()方法:執(zhí)行查詢操作,并返回結果集中 的第一行和第一列

      ExecuteReader()方法:執(zhí)行查詢操作,返回 DataReader 對象

      ExcutenNonQuery()方法:執(zhí)行添加、修改、刪除操作、返回受影響的行數

      第二篇:c#基礎總結

      【1】面向對象程序設計語言的三大特點是什么?答:【23】Main函數特點?答:1)Main方法是C#程序的限定,默認的為private【2】三種命名法則的特點?答:匈牙利命名法:在變限定符,返回類型為void或int類型,Main方法必須是靜態(tài)方法;3)一個類或結構只能有一個有效的入駝表示法:一個標示符用若干個有意義的英語單詞或口點函數;4)main方法必須定義在某一個類中??s寫組成,第一個單詞首字母小寫,后邊的首字母大【24】多態(tài)(重寫、隱藏)

      寫;Pascal表示法:與駱駝表示法類似,但是第一個 單詞的首字母也需要大寫?!?】C#注釋的三種形式特點?答1)單行注釋:// 2)class A /// {public virtual void F()【4】引用類型和值類型的數據類型? {Console.WriteLine(“A.F”);}} abstract class B:A(1)int valOne = 0;{public abstract override void F();}int valTwo = valOne;答:abstract override 是不可以一起修飾 int valThree = 333;例:在下面的例子里 valTwo = 333;TestValueRefRef1 = new TestValueRef();class A TestValueRefRef2 = Ref1;{public A(){PrintFields();} Ref2.value = 444;public virtual void PrintFields(){} } Console.WriteLine(“values:{0},{1}”, Ref1.value, class B:A Ref2.value);{int x=1;int y;public B(){y=-1;} Console.WriteLine(“values:{0}, {1},{2}”,valOne, public override void valTwo,valThree);PrintFields(){Console.WriteLine(“x={0},y={1}”,答:輸出結果:values:444,444 x,y);} 當使用new B()創(chuàng)建B的實例時,產生什么輸出?(2)public class EnumTest答:x=1,y=0 { enum Days {Sat=1, Sun, Mon, Tue, Wed, Thu, Fri};分析:執(zhí)行new B()時,由于B繼承自A,所以會調用static void Main()A的構造函數,并執(zhí)行其中的PrintFields()方法,由{int x=(int)Days.Sun;inty=(int)Days.Fri;于該方法為虛方法,在繼承類中被重寫,所以,將執(zhí)Console.WriteLine(“Sun = {0}”, x);行B中的PrintFields()方法。此時,將在DOS界面Console.WriteLine(“Fri = {0}”, y);}} 上輸出“x=1,y=0”,然后,在運行B的構造函數中的答:輸出結果:Sun = 2Fri = 7 y=-1。(建議同學們將此程序放入到代碼中,設置斷點【5】枚舉類型的字段和關聯值?枚舉類型有三個要看執(zhí)行過程。)

      【25】什么是多態(tài)對象?答:用基類類名聲明,但是特性 修飾符 enum 枚舉名 : 基礎類型 {枚舉成員聲明,枚舉成員聲明,??,枚舉成員聲明}默認的基礎函數來實例化的對象。這類對象的主要用途是引發(fā)多類型為int;關聯值:如果沒有被聲明,默認為0。態(tài),為了將它們和一般的對象(聲明和創(chuàng)建都使用同【6】強制類型轉換(例:若有double f=2.7;int 一個類型名的對象)加以區(qū)別、揭示它們的特點和用2)將源類型的對象途,這種形態(tài)的對象稱為多態(tài)對象。轉換成為目的類型的對象 【26】接口的特點。答:接口只能包含抽象方法,不【7】運算符&和&&的區(qū)別?答:條件“與”運算符(&&)沒有訪問修飾符,接口成員必須是方法屬性事件或者時才計算第二個操作數。而&需要計算所有操作數,索引器不能包含常數字段運算符也不能有靜態(tài)成員。并且優(yōu)先級高于&& 【27】委托和事件,【8】裝箱和拆箱的概念?答:裝箱就是把一個值類型委托的定義修飾符 delegate 返回類型 委托類型名(參數列表); 【9】for循環(huán)和if語句聯合使用的程序分析,for(;;)eg: public delegate int DelegateClass(stringinfo);

      和continue的區(qū)別?答:break跳出循委托的創(chuàng)建(實例化)委托對象 = new 委托名(關聯方法); 【11】命名空間的特點答:它提供一種命名機制,是eg: DelegateClass obj=new DelegateClass(MethodA);

      合方式無關,不能表明源文件的存取方式,命名空間DelegateClass obj=MethodA;//隱式創(chuàng)建和初是按層次組織的。始化(不用new)【12】數組元素的的復制和讀值 例:分析下列語句: int[3]{5,6,2},new int[5]{6,9,7,8,3},new Hello(string target);} int[2]{3,2}};myArray3[2][2]的值是(D)A)9;B)2;該語句的作用是:在TestCS 命名空間中定義了了一C)6;D)越界 個名為Hello 的委托類型;

      【13】類和對象的關系?答:類是對象的抽象,對象【28】Windows窗體中Button按鈕觸發(fā)的事件是什【14】關鍵字this和base的區(qū)別?答:base指代基【29】Windows窗體中控件的標識符如何修改?答:【15】關鍵字new、using的多種用法?答:new修飾【30】如何修改Windows窗體的啟動窗體?答:修改被重寫,但new修飾符可終止這一特性;向下傳播; 實例化一個對象。Using:導入命名空間;自動釋放【31】要使用SQL Server需要使用哪兩個命名空間? Using代碼框里的資源?!?6】索引器的特點?答:索引器允許重載;字符串Using System.Date.SqlClient: 【32】什么是DataSet、DataAdapter?兩者聯系?答:過簽名標識;通過元素訪問來訪問;必須為實例成員;索引器的get訪問器具有與索引器相同的形參表;除DataAdapter:數據適配器,數據庫與DataSet間的橋value參數外,索引器的set訪問器還具有與索引器梁,把數據庫中數據下載到DataSet或回傳回去。相同的形參表?!?3】用戶登錄和密碼修改(帶數據庫)【17】靜態(tài)數據成員特點?答:為所有類所共享,區(qū)用戶登錄 【18】構造函數的特點?答:(1)構造函數名與類名UserName='“ + txtUsername.Text.Trim().ToLower()+ ”' and UserPwd='“ + txtPassword.Text.Trim()+ 【19】析構函數的特點?答:(1)析構函數名是在類”'“;if(OperateDB.ExecuteReader(sql))型(默認為空)和修飾符;(3)析構函數不能被重載。{username = txtUsername.Text.Trim().ToLower();【20】什么是方法的重載?重載的特點是什么?答: frmMain frm = new frmMain();frm.Show();this.Hide();} 定義一組方法。重載的特點:1)位于同一類中;2)else

      方法名相同;3)方法參考列表不同,包括參數個數不{MessageBox.Show(”用戶名或密碼錯誤“, ”出錯了“, 同和參數類型不同;4)與方法返回值和修飾符沒關系。MessageBoxButtons.OK, MessageBoxIcon.Error);} 【21】虛函數的特點?答:1)虛方法前不允許有修改密碼: 修飾符;2)虛方法不能是私有的,因此不能使用private修飾符; where UserName='” + frmLogin.username + “' and 【22】抽象類和抽象方法的主要特點?答:抽象類:UserPwd='” + txtOldPwd.Text.Trim()+ “'”;(或者if(OperateDB.ExecuteReader(sqlCheckPwd))說,不能產生對象。但是,它可以有構造函數。(2){string sql = “update UserInfo set UserPwd='” 設計abstract類的目的是為了被繼承。抽象方法:是+ txtNewPwd.Text.Trim()+ “' where UserName='” + 不完整的,不能執(zhí)行的。frmLogin.username + “'”;

      if(OperateDB.ExecuteNonQuery(sql)== 1)

      {MessageBox.Show(“密碼修改成功!”);}else

      { MessageBox.Show(“密碼修改失??!”);}}

      else{MessageBox.Show(“舊密碼不正確!”);}

      【34】抽象類定義和繼承使用

      特點:1.沒有被完整定義,因而它不能用來實例化,或者說,不能產生對象。(但是,它可以有構造函數。)2.設計abstract類的目的是為了被繼承。public abstract class Employee{public virtual void Pay(){ }

      public abstract void CalculatePay();} public class HourlyEmployee: Employee

      {public override void Pay(){CalculatePay();}public override void CalculatePay(){ }} 【35】接口及繼承類的使用

      特定功能的抽象成員的集合。一個類可以繼承多個接口,從而獲得多個行為的描述,將它們組合成新的功能并在類中實現。繼承類中必須實現接口中的所有抽象成員。

      定義接口的格式:修飾符 interface 接口名:基接口列表 {接口體} 其中,接口體的聲明可以包括:接口方法聲明;接口屬性聲明;接口事件聲明;接口索引器聲明

      public delegate void

      StringListEvent(IStringList sender);public interface IStringList{ void Add(string s);//方法int Count{get;}//屬性event StringListEvent Changed;//事件string this[int index]{get;set;}//索引器} 【編程題例題】

      定義一MobilePhone類,包括屬性成員——網絡類型(NetworkType),字段成員——屏幕尺寸(screenSize)、手機品牌(brand),手機型號

      (brandModel),公共方法成員——Open、Close。其中screenSize為單位是英寸的雙精度數,brand為字符串,NetworkType只能是“GSM”或“CDMA”字符串。要求:(1)在此類中包含構造函數,構造函數用于對數據(屏幕尺寸、手機品牌和手機型號)進行初始化。(2)公共成員方法中輸出相應提示信息(參見(3)中的輸出結果格式)。(3)寫一測試類,在類中實例化一MobilePhone對象,最后能在DOS界面下顯示如下結果:諾基亞N81(屏幕尺寸2.0英寸),是一款GSM手機。手機關機了。using System;

      public enum NetworkType {GSM,CDMA,}

      public class MobilePhone {public double screenSize;public string brand;

      public string brandModel;

      public NetworkType networkType;public NetworkType NetworkType{get { return networkType;}}

      public MobilePhone(double ss, string bra, string bm, NetworkType nt){screenSize = ss;brand = bra;brandModel = bm;networkType = nt;}public void Open()

      {Console.WriteLine(“{0}{1}(屏幕尺寸{2}英寸),是一款{3}手機.”,brand,brandModel,screenSize.ToString(“.0”), networkType);}

      public void Close()

      {Console.WriteLine(“手機關機了?!?;} }

      public class Test

      {public static void Main()

      {MobilePhone mp = new MobilePhone(2.0, “諾基亞”, “N81”, NetworkType.GSM);mp.Open();mp.Close();

      System.Console.ReadLine();} }

      【例】寫一名為Desk的類,包含兩個字段Length(雙精度類型)、Height(雙精度類型)。再寫一繼承類ComputerDesk類。ComputerDesk類除了有Length和Height外,還有KeyboardTray(字符串類型)。Public class desk {double length;double height;}

      Public class computerdesk:desk {string keyboardtray}

      第三篇:數據庫小結

      數據庫總結

      1、數據庫開課6天,到今天已全部結束

      2、學習內容

      一、數據庫的安裝與刪除:已獨立上機操作實現。

      二、數據利器sql 1)用sql進行單表查詢:

      查詢語句: select 所查內容 from 表 where 條件

      排序: select 所查內容 from 表 where 條件order by排序的依據

      分組:select 所查內容 from 表 where 條件 group by 分組依據 其他要顯示的內容(having 條件)

      字段運算查詢:select 運算 from表

      變換查詢:select 原名 新名 from 表

      2)多表查詢:

      無條件多表查詢 select 所差內容 from 多個表

      等值多表查詢

      select 所差內容 from 多個表 where 一個

      表內容=另一個表內容

      非等值多表查詢select 所差內容 from 多個表 where 一個

      條件 and(or)其他條件

      3)嵌套查詢

      帶in、any(some)、all、exist的嵌套查詢:

      select 所查內容 from 表 where 內容 in(select 所查

      內容 from 表 where 條件)

      注意:any(some)包括等于條件、all不包括

      并(union)、交(intersect)、差操作(minus): 4)常用的函數查詢

      Ceil(n)取大于等于n的最小整數

      Floor(n)取小于等于n的最大整數

      Mod(m,n)取m整除n后的余數

      Pow(m,n)取m的n次方

      Round(m,n)取四舍五入,保留小數點后n位

      Sign(n)n》0取1;n=0取0;n《0取-1

      Avg(字段名)求平均值

      Count(字段名)或者count(*)統(tǒng)計總數

      Min(字段名)計算數值型字段最小數

      Max(字段名)計算數值型字段最大數

      Sum(字段名)計算總數 5)錄入數據

      單行錄入:Insert into 數據表(字段1,2。。)values

      (字段1的值,2的值。。)

      多行錄入:insert into 數據表(字段1,2。)(select

      (字段1或運算,2或運算。。)from

      數據表 where 條件)表間數據復制:create table 表名 as(select 字段from原

      有的表where 條件)

      6)刪除記錄

      刪除記錄:Delete from 數據表 where 條件

      整表數據刪除:truncate table 數據表 7)更新數據

      直接賦值更新:update 數據表 set 字段名1=新的賦值,字段名2=新的賦值。where條件

      嵌套更新:update 數據表 set 字段名1=(select 字段列

      表 from 數據表 where 條件),字段名(select字段列表 from 數據表 where條件)。。

      三、編程進階Pl/sql 1)程序結構

      Delacre

      定義語句段

      Begin

      執(zhí)行語句段

      Exception

      異常處理語句段 End 2)基本語法

      定義變量%type:獲得字段的數據類型

      定義變量%rowtype:獲得整個記錄的數據類型f 定義記錄類型變量 :type 記錄類型 is record()

      定義一維表類型變量:type 表類型 is table of 類型 index by

      binary_integer, 表變量名 表類型

      定義多維表類型變量

      3)表達式

      數值表達式:加+,減-,乘*,除/,乘方**

      字符表達式:連接符號||

      關系表達式(9種): 4)事務處理

      提交:Committee

      回滾:rollback

      保存點:savepoint 5)游標

      定義、打開、提取、關閉 6)過程

      創(chuàng)建、查詢、修改、執(zhí)行

      ·

      第四篇:C#基礎編程設計實驗報告

      C# 基礎編程 設計實驗報告

      一、實驗目的

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

      2、掌握 C#應用程序的基本操作過程。

      3、掌握 C#的數據類型,運算符以及表達式的使用。

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

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

      二、實驗要求

      (1)編寫程序要規(guī)范、正確,上機調試過程和結果要有記錄(2)做完實驗后給出本實驗的實驗報告。

      三、實驗設備、環(huán)境

      安裝有 Visual Studio.NET 軟件。

      四、實驗步驟

      1、分析題意。

      2、根據題目要求,新建項目。

      3、編寫并輸入相關的程序代碼。

      5、運行與調試項目。

      6、保存項目。

      五、實驗內容

      1、編寫一個簡單的控制臺應用程序,打印一行文字(如你的姓名)。

      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、編寫一個簡單的 Windows 應用程序,在窗體 Load 事件中書寫代碼,標簽中顯示你的姓名。

      using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;

      using System.Windows.Forms;

      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、編寫一個一個程序,用來判斷輸入的是大寫字母,小寫字母,數字還是其他的字符。

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

      namespace one.third {

      class Program

      {

      static void Main(string[] args)

      {

      Console.WriteLine(“請輸入一個字符:”);

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

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

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

      if(char.IsDigit(c))

      Console.WriteLine(“這是一個數字”);

      }

      }

      } 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 的自然數之和為:” + 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 的自然數的和為:” + sum);

      }

      }

      } 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 的自然數的和為:” + sum);

      }

      } } 5、定義一個一維數組,用隨機數為此賦值,用 foreach 循環(huán)輸

      出其中的內容。

      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、實現二維數組的輸入和輸出。

      using System;

      using System.Collections.Generic;using System.Linq;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、實現數組型數組的輸入和輸出。

      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]);

      }

      }

      }

      } } 六、實驗體會(遇到問題及解決辦法,編程后的心得體會)

      剛開始編程的時候覺得無從下手,盡管我們已經學了好幾種高級編程語言,但每個都有其獨特的地方,稍不留神就會混淆。

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

      實驗項目名稱:

      類與對象

      實驗學時:

      同組學生姓名:

      實驗地點:

      1318

      實驗日期:

      月 26 日-11 月 9 日 實驗成績:

      批改教師:

      批改時間:

      實驗 2

      類與對象

      一、實驗目的、要求

      (1)掌握類的定義和使用;(2)掌握類的數據成員,屬性的定義和使用;(3)掌握方法的定義,調用和重載以及方法參數的傳遞;(4)掌握構造函數的定義和使用。

      二、實驗要求

      (1)編寫程序要規(guī)范、正確,上機調試過程和結果要有記錄;(2)做完實驗后給出本實驗的實驗報告。

      三、實驗設備、環(huán)境

      安裝有 Visual Studio.NET 軟件。

      四、實驗步驟

      1、分析題意; 2、根據題目要求,新建項目; 3、編寫并輸入相關的程序代碼; 5、運行與調試項目; 6、保存項目。

      五、實驗內容

      1、定義一個方法,實現兩個數的交換(分別把參數按值傳遞和按引用傳遞)。

      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());

      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 string.Format(“按值傳參交換之后: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、定義一個方法,實現數組的排序。

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

      namespace second.two {

      class Program

      {

      public class sort

      {

      public void change(int[] a)

      {

      Console.WriteLine(“排序前,數組順序為:”);

      show(a);

      int i, j, m;

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

      {

      m = a[i];

      j = i-1;//a[j]為數組前一個值

      while(j >= 0 && m > a[j])//判斷 i 下標的數是否大于 j 下標的數

      {

      a[j + 1] = a[j];//如果 i 下標大于j 把 j 往后移一個位

      j--;

      }

      a[j+1] = m;//當不大于 j 的時候就把 M的值放到 i 下標下面 j+1 是為了下標減到最前時考慮-1 + 1 還是下標的最前面

      }

      Console.WriteLine(“排序后,數組順序為:”);

      show(a);

      }

      void show(int[] a)

      {

      int i;

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

      {

      Console.Write(“{0} ”, a[i]);

      }

      Console.WriteLine();

      }

      }

      static void Main(string[] args)

      {

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

      sort s=new sort();

      s.change(a);

      }

      } } 3、定義一個學生類,把學生類當作對象來傳遞。

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

      namespace second.three {

      class Program

      {

      public class student

      {

      public void st()

      {

      int a = 999;

      }

      }

      public class st

      {

      public void aa(student s)

      {

      Console.WriteLine(s);

      }

      }

      static void Main(string[] args)

      {

      student s=new student();

      st s1 = new st();

      s1.aa(s);

      }

      } } 4、定義一個方法,求兩個數的和和差,通過參數把這兩個值帶回。

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

      namespace

      second.four

      {

      class Program

      {

      public class sum

      {

      public void ab(out int m, out

      int n,int a, int b)

      {

      m = a + b;

      n = a-b;

      }

      }

      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);

      }

      } } 5、用構造函數重載,實現矩形的面積,圓的面積,梯形的面積; 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;

      square s = new square(a,b);

      Console.WriteLine(“求矩形面積,長為 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、設計一個 windows 應用程序,在該程序中定義一個學生類和班級類,以處理每個學生的學號,姓名,語文,數學和英語成績,要求:

      1)能查詢每個學生的總成績。

      2)能顯示全班前三名的名單。

      3)能顯示單科成績最高分和不及格的學生名單。

      4)能統(tǒng)計全班學生的平均成績。

      5)能顯示各科成績不同分數段的學生人數的百分比。

      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

      {

      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;

      }

      //給所有成績排序,用后面實現前三名的排名

      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;

      }

      }

      }

      //顯示單科成績的最高分

      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;

      }

      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 += “ 單 科 數 學 最 高 :

      ” + stu[HighScore(0)].name + “n”;

      Maxer += “ 單 科 語 文 最 高 :

      ” +

      stu[HighScore(1)].name + “n”;

      Maxer += “ 單 科 英 語 最 高 :

      ” + stu[HighScore(2)].name + “n”;

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

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

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

      return Maxer + “n” + Loser;

      }

      //全班的平均成績

      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 “班級總分平均分:”+avg;

      }

      //各科成績不同分數段的學生百分比

      //英語成績各分數段百分比

      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++;

      }

      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 “ 語 文 成 績 百 分 比 :”+“n”+“90~100:”+per1+“

      80~90:”+per2+“

      80~70:”+per3+“

      70~60:”+per4+“

      以下的:”+per5;

      }

      //數學成績各分數段百分比

      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))

      {

      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(“數學成績百分比:” + “n” + “90~100:” + per1 + “

      80~90:” + per2 + “

      80~70:” + per3 + “

      70~60:” + per4 + “

      以下的:” + per5);

      }

      //英語成績各分數段百分比

      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++;

      }

      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(“數學成績百分比:” + “n” + “90~100:” + per1 + “

      80~90:” + per2 + “

      80~70:” + per3 + “

      70~60:” + per4 + “

      以下的:” + per5);

      }

      } } From 窗體代碼:

      using System;using System.Collections.Generic;

      using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;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 + “的總成績:” + sl.stu[pos].sumScore;

      }

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

      }

      private void btnFinish_Click(object sender, EventArgs e)

      {

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

      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”;

      }

      } }

      六、實驗體會(遇到問題及解決辦法,編程后的心得體會)

      通過本次實驗,我掌握了類的定義與使用;掌握了類的數據成員,屬性的定義和使用;掌握了方法的定義,調用和重載以及方法參數的傳遞以及構造函數的定義和使用。值得注意的是:本次實驗中 return的使用以及所在的位置,類型轉換時也經常用到

      實驗項目名稱:

      繼承與多態(tài)

      實驗學時:

      同組學生姓名:

      實驗地點:

      1318

      實驗日期:月 16 日-11 月 30 日 實驗成績:

      批改教師:

      批改時間:

      實驗 3

      繼承與多態(tài)

      一、實驗目的、要求

      (1)掌握類的繼承性與多態(tài)性;(2)掌握虛方法的定義以及如何使用虛方法實現多態(tài);(3)掌握抽象類的定義以及如何使用抽象方法實現多態(tài); 二、實驗要求

      (1)編寫程序要規(guī)范、正確,上機調試過程和結果要有記錄;(2)做完實驗后給出本實驗的實驗報告。

      三、實驗設備、環(huán)境

      安裝有 Visual Studio.NET 軟件。

      四、實驗步驟

      1、分析題意; 2、根據題目要求,新建項目; 3、編寫并輸入相關的程序代碼; 5、運行與調試項目; 6、保存項目。

      五、實驗內容

      1、設計一個 Windows 應用程序,在該程序中首先構造一個學生基本類,再分別構造小學生、中學生、大學生派生類,當輸入相關數據,單擊不用的按鈕時,將分別創(chuàng)建不同的學生類對象,并輸出當前學生的總人數,該學生的姓名,學生類型,平均成績。

      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;

      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;

      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 窗體內的代碼:

      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

      {

      public Form1()

      {

      InitializeComponent();

      }

      private void btnSmall_Click(object sender, EventArgs e)

      {

      Pupil p = new Pupil(txtName.Text,Convert.ToInt32(txtAge.Text),Convert.ToDouble(txtChinese.Text),Convert.ToDouble(txtMath.Text));

      lblShow.Text += “ 總 人 數 :” +Convert.ToString(Student.number)+ “,” + “姓名:” + p.Name + “,” + “小學生” + “,” + “平均成績?yōu)椋骸?+ p.Average()+“n”;

      }

      private void btnMiddle_Click(object sender, EventArgs e)

      {

      Middle m = new Middle(txtName.Text, Convert.ToInt32(txtAge.Text), Convert.ToDouble(txtChinese.Text), Convert.ToDouble(txtMath.Text),Convert.ToDouble(TxtEnglish.Text));

      lblShow.Text += “ 總 人 數 :” + Convert.ToString(Student.number)+ “,” + “姓名:” + m.Name +

      “,” + “中學生” + “,” + “平均成績?yōu)椋骸?+ m.Average()+ “n”;

      }

      private void btnBig_Click(object sender, EventArgs e)

      {

      College c = new College(txtName.Text, Convert.ToInt32(txtAge.Text), Convert.ToDouble(txtChinese.Text), Convert.ToDouble(txtMath.Text));

      lblShow.Text += “ 總 人 數 :” + Convert.ToString(Student.number)+ “,” + “姓名:” + c.Name + “,” + “大學生” + “,” + “平均成績?yōu)椋骸?+ c.Average()+ “n”;

      }

      } } 2、設計一個 Windows 應用程序,在該程序中定義平面圖形抽象類和派生類圓,矩形和三角形。

      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;

      }

      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()

      {

      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、定義一個 Person 類,包含姓名字段和一個方法,早上 8:30學生開始上課,教師開始講課。分別用 new 關鍵字,虛方法,抽象類實現多態(tài)性。

      New 關鍵字:

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

      namespace third.three {

      class Program

      {

      static void Main(string[] args)

      {

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

      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;

      namespace third.three.two {

      class Program

      {

      static void Main(string[] args)

      {

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

      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

      {

      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(“張三”, “學生”);

      PersonWork(s);

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

      PersonWork(t);

      }

      private static void PersonWork(Person person)

      {

      Console.WriteLine(person.Work());

      }

      }

      public abstract class Person

      {

      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);

      }

      }

      }

      六、實驗體會(遇到問題及解決辦法,編程后的心得體會)

      通過本次實驗,我理解了類的繼承性與多態(tài)性;掌握了虛方法的定義以及如何用虛方法來實現多態(tài);掌握了抽象類的定義以及如何用抽象方法來實現多態(tài)。

      這次實驗與前兩次不同,采用 Windows 應用程序,既涉及到代碼段也涉及到界面的設計。所以,勉強通過實驗。

      實驗項目名稱:

      接口、文件和流

      實驗學時:

      同組學生姓名:

      實驗地點:

      A205

      實驗日期:月 7 日-12 月 21 日 實驗成績:

      批改教師:

      批改時間:

      實驗 4

      接口、文件和流

      一、實驗目的

      (1)掌握接口的定義及使用方法;(2)掌握流,序列化和反序列化的概念和使用方法;(3)掌握流文件的讀寫操作類及其使用方法;(4)掌握 OpenFileDialog,SaveFileDialog 等控件的使用。

      二、實驗要求

      (1)編寫程序要規(guī)范、正確,上機調試過程和結果要有記錄;(2)做完實驗后給出本實驗的實驗報告。

      三、實驗設備、環(huán)境

      安裝有 Visual Studio.NET 軟件。

      四、實驗步驟

      1、分析題意; 2、根據題目要求,新建項目; 3、編寫并輸入相關的程序代碼; 5、運行與調試項目; 6、保存項目。

      五、實驗內容

      1、定義一個 Person 類,包含姓名字段和一個方法,早上 8:30學生開始上課,教師開始講課。用接口來實現。

      using System;using System.Collections.Generic;

      using System.Text;namespace Test4_1 {

      class Program

      {

      static void Main(string[] args)

      {

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

      Console.WriteLine(s.Work());

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

      Console.WriteLine(t.Work());

      }

      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);

      }

      }

      ...

      第五篇:機械制造技術基礎小結1

      1、?0是 前角 的符號,是在 正交平面內測量的 前刀 面與 基 面的夾角。

      2、?s是 刃傾角 的符號,是在 切削平面內測量的 主切削刃 與 基 面的夾角。

      3、過選定點,垂直于切削刃在 基 面內投影的剖面叫 正交平面。

      4、在刀具壽命關系式v?T中,m代表的是v對T的影響程度,m越大,影響 越小,m越小,影響 越大。

      5、砂輪的硬度是 磨粒受力后從砂輪表面脫落的難易程度,工作材料硬,應選用硬度 較軟 砂輪,磨削有色金屬等軟材料時,應選用 較硬 砂輪。

      6、為減小加工表面的理論粗糙度,f應 減小。

      7、車床主軸軸線與車床導軌在水平面內不平行,加工出的工件形狀是 錐形 ;

      在鉛垂面內不平行,加工出的工件形狀是 鞍形。

      8、按工序的加工要求,工件應限制的自由度數未予限制的定位,稱為 欠定位 ;工件的同一自由度被兩個或兩個以上的支承點重復限制的定位,稱為 過定位。

      1、YT30、YG8、YT5、YG3、WI8Gr4V是什么刀具材料?其組成成分是什么?各適合于加工哪類工件材料?在怎樣 的加工要求下選用?(4分)答:

      YT30是硬質合金、含TiC30%、適合加工鋼、粗加工;(1分)

      YG8是硬質合金、含Co8%、其余成分為WC、適合加工鑄鐵及有色金屬、粗加工;(1分)

      YT5是硬質合金、含TiC5%、適合加工鋼、精加工;(1分)W18Gr4V是高速鋼刀具材料,表示含W18%、含Gr4%,含V1%。高速鋼刀具材料適合加工鋼,易做成復雜刀具使用。(1分)

      3、敘述粗、精基準的選擇原則,加工順序安排原則。(4分)答:

      粗基準的選擇原則:保證加工表面相對于不加工表面具有一定位置精度的原則;合理分配加工余量的原則;便于裝夾的原則;粗基準一般不得重復使用的原則。(2分)

      粗基準的選擇原則:基準統(tǒng)一、基準重合、互為基準、自為基準的原則。(2分)

      4、試述夾緊力的確定原則。(4分)答:

      夾緊力的方向:應使定位基面與定位元件接觸良好,保證零件定位準確可靠;應與工件剛度最大的方向一致;盡量與切

      削力重力方向一致。(2分)

      夾緊力的作用點:應正對支承元件或位于支承元件所形成的支承面內。應位于工件剛度較好的部位應盡量靠近加工表面。(1分)夾緊力的大?。侯惐确ê陀嬎惴ā#?分)

      如圖所示,工作以外圓為定位表面加工鍵槽,Ⅴ形塊夾角為ɑ。求定位誤差△dw(H1)、△dw(H2)、△dw(H3)、△dw(對稱).答:(10分)

      ?dw(H1)?Tda2sin2,?dw(H2)定 誤差分)

      (2.5分)

      ??Td?1???1?a?2?sin??2???,(2.5

      ?dw(H3)???Td?1??1??2?a?sin??2??,(2.5

      分)?dw(對稱)?0(2.5分)

      下載C#語言和數據庫技術基礎學習小結(5篇材料)word格式文檔
      下載C#語言和數據庫技術基礎學習小結(5篇材料).doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


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

      相關范文推薦

        操作數據庫小結

        一.查詢操作 對數據進行查詢操作時,有兩種情況:一是查詢單個值,二是 查詢若干條記錄。 1、 查詢單個值 需要使用Command對象的ExecuteScalar()方法:步驟如下: (1)、創(chuàng)建Connection對象......

        數據庫問題小結

        學習小結 1.前言: 前段時間的學習一直都沒有融入實際的操作,因此這個階段的學習我想結合著數據庫來對配置數據進行一個定位。為了達到這個目的我就決定再我自己機子上安裝orac......

        C#實訓個人小結

        經過4個禮拜的實訓,讓我受益匪淺,給我收獲最大的是我覺得很多工作需要我去摸索和探討,要不怕吃苦,勇于激流勇進,有的工作雖然單挑又重復,但這是磨練意志最有效的方法,我告誡自己要......

        PowerPoint基礎學習小結

        學習內容 工作環(huán)境即PowerPoint窗口 ? 標題欄:移動窗口,改變窗口大小,關閉窗口。 ? 菜單欄:包含9大菜單,幾乎包含了演示文稿操作的所有命令。 ? 工具欄:快速的圖標按鈕命令,比利......

        數據庫應用基礎實驗報告

        電子科技大學計算機學院實驗中心 電 子 科 技 大 學 實 驗 報 告 一、實驗一: 名稱 創(chuàng)建數據庫 二、實驗學時:4 三、實驗內容和目的:實驗要求學生掌握創(chuàng)建數據庫的方法及相關......

        T1_Oracle數據庫基礎_教案范文

        T1 Oracle數據庫基礎 【本講主要目標】 1、Oracle數據庫概述 2、Oracle數據庫系統(tǒng)結構 ? 邏輯結構? 物理結構? 系統(tǒng)結構 ? 內存結構(PGA 和SGA )? 后臺進程? 服務器進程 3、數據庫......

        《數據庫基礎教案》-access

        《數據庫基礎》教案 (56學時) 主講: 專業(yè): 班級: 第1章 數據庫系統(tǒng)概述(4學時) 教學目標:了解數據庫技術的發(fā)展史,了解每個階段具有代表性的數據庫管理系統(tǒng)的特點和劃分依據,了解關系......

        數據庫應用基礎2011教學大綱

        《數據庫應用基礎》課程教學大綱 BasicsofDatabase Application 課程編號:0411018 課程性質:必修 適用專業(yè): 全院各經濟類專業(yè)學時數:64學時(講課:32學時,上機實踐:32學時)學分:4 執(zhí)筆......