版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、PAGE PAGE - 65 -C#程序設(shè)計(jì)習(xí)題集辛?xí)暂x2014年12月中國(guó)地質(zhì)大學(xué)(北京)信息工程學(xué)院第2章 簡(jiǎn)單的C#程序設(shè)計(jì)一選擇題1C#中程序的入口方法是【 】方法。A) mainB) MainC) beginD) Program2假設(shè)變量x的值為25,要輸出x的值,下列正確的語句是【 】。A) System.Console.writeline(“x”);B) System.Console.WriteLine(“x”);C) System.Console.WriteLine(“x=0”,x);D) System.Console.WriteLine(“x=x”);3要退出應(yīng)用程序的執(zhí)行,
2、應(yīng)執(zhí)行下列的【 】語句。A) Application.Exit();B) Application.Exit;C) Application.Close();D) Application.Close;4關(guān)于C#程序的書寫,下列不正確的說法是【 】。A) 區(qū)分大小寫B(tài)) 一行可以寫多條語句C) 一條語句可以寫成多行D) 一個(gè)類中只能有一個(gè)Main()方法,因此多個(gè)類中可以有多個(gè)Main()方法。5公共語言運(yùn)行庫即【 】。A) CRLB) CLRC) CRRD) CLS6.NET平臺(tái)是一個(gè)新的開發(fā)框架,【 】是.NET的核心部分。A) C#B) .NET FrameworkC) VB.NETD) 公共
3、語言運(yùn)行庫7C#應(yīng)用程序項(xiàng)目文件的擴(kuò)展名是【 】。A) csprojB) csC) slnD) suo8C#應(yīng)用程序解決方案文件的擴(kuò)展名是【 】。A) csprojB) csC) slnD) suo9運(yùn)行C#程序可以通過按【 】鍵實(shí)現(xiàn)。A) F5B) Alt+F5C) Ctrl+F5D) Alt+Ctrl+F510C#語言中類模塊代碼文件的擴(kuò)展名是【 】。A) csprojB) csC) slnD) suo11構(gòu)建桌面應(yīng)用程序需要.NET提供的類庫是【 】。A) ADO.NETB) Windows FormC) XMLD) ASP.NET12C#中導(dǎo)入某一命名空間的關(guān)鍵字是【 】。A) use
4、B) usingC) importD) include13.NET Framework將【 】定義為一組規(guī)則,所有.NET語言都應(yīng)遵守這個(gè)規(guī)則,才能創(chuàng)建可以與其他語言互操作的應(yīng)用程序。A) JITB) CLRC) MSILD) ADO.NET14在VS.NET中,在【 】中可以查看當(dāng)前項(xiàng)目的類和類的層次信息。A) 解決方案資源管理器B) 類視圖窗口C) 對(duì)象瀏覽器窗口D) 屬性窗口15在.NET Framewor中,MSIL是指【 】A) 接口限制B)中間語言C) 核心代碼D) 類庫16【 】是獨(dú)立于CPU的指令集,它可以被高效地轉(zhuǎn)換為本機(jī)機(jī)器語言。A) CLRB) CTSC) CLSD) M
5、SIL17利用C#開發(fā)應(yīng)用程序通常有三種類型,不包括【 】。A) 控制臺(tái)應(yīng)用程序B) Web應(yīng)用程序C) SQL程序D) Windows應(yīng)用程序18【 】包含在. NET Framewor的各語言之間兼容的數(shù)據(jù)類型。A) JIT(Just-In-Time Compiler即時(shí)編譯器)B)CTS(通用類型系統(tǒng))C) CLS(公共語言規(guī)范)D) MSIL(微軟中間語言)19C#源代碼經(jīng)過【 】次編譯,才能在本機(jī)上執(zhí)行。A) 1B)2C) 3D) 020所有.NET支持的編程語言編寫的源代碼經(jīng)過一次編譯后,被編譯成【 】。A) 機(jī)器代碼B)MSIL代碼C) CLS代碼D) C#源代碼21在.NET中
6、,關(guān)于CLR和MSIL的敘述正確的是【 】。A) 應(yīng)用程序在CLR環(huán)境被編譯成MSIL,MSIL將能夠被任何計(jì)算機(jī)執(zhí)行B) 應(yīng)用程序被編譯兩次,第一次生成MSIL,MSIL在運(yùn)行時(shí)被CLR快速編譯C) 應(yīng)用程序被編譯兩次,但第二次CLR編譯比第一次慢D) 借取CLR,MISL被編譯成機(jī)器代碼,該機(jī)器代碼能夠在不同計(jì)算機(jī)下執(zhí)行22CLR為.NET通過如下方面的功能或者服務(wù),除了【 】。A) 無用存儲(chǔ)單元收集B) 代碼驗(yàn)證和類型安全C) 代碼訪問安全D) 自動(dòng)消除程序中的邏輯錯(cuò)誤23.NET Framework是一種新的開發(fā)平臺(tái),它具有兩個(gè)主要組件,分別是【 】和.NET基礎(chǔ)類庫。A) 公共語言運(yùn)
7、行庫B) Web服務(wù)C) 命名空間D) Main()函數(shù)24控制臺(tái)應(yīng)用程序使用【 】命名空間中的類處理輸入和輸出。A) SystemB) System.WebC) System.Windows.FormsD) System.Data25【 】類型的應(yīng)用程序適合于交互性操作較少的情況。A) 控制臺(tái)應(yīng)用程序B) Windows應(yīng)用程序C) Web應(yīng)用程序D) 以上都不是26以下對(duì)Read() 和ReadLine()方法的敘述中正確的是【 】。A) Read()方法一次只能從輸入流中讀取一個(gè)字符B) Read()方法一次可以從輸入流中讀取一個(gè)字符串C) ReadLine()方法一次只能從輸入流中讀取
8、一個(gè)字符D) ReadLine()方法只有當(dāng)用戶按下Enter鍵時(shí)返回,而Read()方法不是27以下對(duì)Write() 和WriteLine()方法的敘述中正確的是【 】。A) Write()方法在輸出字符串的后面添加換行符B) 使用Write()方法輸出字符串時(shí),光標(biāo)將會(huì)位于字符串的后面C) 使用Write()方法和WriteLine()方法輸出數(shù)值變量時(shí),必須要先將數(shù)值轉(zhuǎn)換成字符串D) 使用不帶參數(shù)的WriteLine()方法時(shí),將不會(huì)產(chǎn)生任何輸出28以下關(guān)于控制臺(tái)應(yīng)用程序和Windows應(yīng)用程序的敘述中正確的是【 】。A) 控制臺(tái)應(yīng)用程序中有一個(gè)Main靜態(tài)方法,而Windows應(yīng)用程序
9、中沒有B) Windows應(yīng)用程序中有一個(gè)Main靜態(tài)方法,而控制臺(tái)應(yīng)用程序中沒有C) 控制臺(tái)應(yīng)用程序和Windows應(yīng)用程序中都沒有Main靜態(tài)方法D) 控制臺(tái)應(yīng)用程序和Windows應(yīng)用程序中都有一個(gè)Main靜態(tài)方法二填空題1.NET框架包括【 公共語言運(yùn)行庫(CLR) 】和.NET基礎(chǔ)類庫。2為便于管理多個(gè)項(xiàng)目,在VS.NET集成環(huán)境中引入【 解決方案資源管理器 】,用來對(duì)企業(yè)級(jí)解決方案涉及的多個(gè)項(xiàng)目進(jìn)行管理。3C#是作為【 C+ 】語言的替代品種出現(xiàn)的。4要使lable控件顯示給定的文字“您好?!?,應(yīng)在設(shè)計(jì)狀態(tài)下設(shè)置它的【 Text 】屬性值。5C#要求程序中的每個(gè)元素都要屬于一個(gè)【
10、類 】。6在C#程序中,程序的執(zhí)行總是從【 Main 】方法開始的。7在C#中,進(jìn)行注釋有兩種方法:使用“/”和使用“/* */”符號(hào)對(duì),其中【 / 】只能進(jìn)行單行注釋。8要在控制臺(tái)程序運(yùn)行時(shí)輸入信息,可使用Console類的【 Write 或 WriteLine 】方法。三問答題1C#語言的特點(diǎn)是什么?2說明Visual Studio.NET、.NET Framework和C#之間的聯(lián)系。3Visual Studio 2008包含哪幾種開發(fā)語言?4控制臺(tái)應(yīng)用程序有哪些常用的輸入輸出方法?5簡(jiǎn)述命名空間的作用。6什么是解決方案?什么是項(xiàng)目?解決方案與項(xiàng)目有什么關(guān)系?第3章 C#程序設(shè)計(jì)基礎(chǔ)一選
11、擇題1在C#語言中,下列能夠作為變量名的是【 】。A) ifB) 3abC) a_3bD) a-bc2下列標(biāo)識(shí)符中,非法的是【 】。A) MyNameB) c sharpC) abc2cdD) _1233C#的數(shù)據(jù)類型分為【 】。A) 值類型和調(diào)用類型B) 值類型和引用類型C) 引用類型和關(guān)系類型D) 關(guān)系類型和調(diào)用類型4C#中的值類型包括三種,它們是【 】。A) 整型、浮點(diǎn)型和基本類型B) 數(shù)值類型、字符類型和字符串類型C) 簡(jiǎn)單類型、枚舉類型、結(jié)構(gòu)類型D) 數(shù)值類型、字符類型、枚舉類型5下列選項(xiàng)中,【 】是引用類型。A) enum類型B) struct類型C) string類型D) int
12、類型6以下類型中,不是值類型的是【 】。A) 整數(shù)類型B)布爾類型C) 類類型D) 字符類型7在C#語言中,轉(zhuǎn)義字符不可以表示【 】。A) 任何字符B)字符串C)字母D)小數(shù)點(diǎn)8下列數(shù)值類型的數(shù)據(jù)精度最高的是【 】。A) intB) floatC) decimalD) ulong9要使用變量score來存儲(chǔ)學(xué)生某一門課程的成績(jī)(百分制,可能出現(xiàn)小數(shù)部分),則最好將其定義為【 】類型的變量。A) intB) decimalC) floatD) double10在C#中,每個(gè)int類型的變量占用【 】個(gè)字節(jié)的內(nèi)存。A) 1B) 2C) 4D) 811以下C#語句中,常量定義正確的是【 】。A) c
13、onst double PI 3.1415926;B) const double PI= 3.1415926;C) define double PI 3.1415926;D) define double PI=3.1415926;12在C#中,表示一個(gè)字符串的變量應(yīng)使用以下【 】語句定義。A) str as String;B) String str;C) String *str;D) char *str;13在C#中,新建一個(gè)字符串變量str,并將字符串“Toms Living Room”保存到串中,則下列正確的語句是【 】。A) String str=Toms Living Room;B)
14、String str=Toms Living Room;C) String str=Toms Living Room;D) String *str=Toms Living Room;14在C#語言中,下面的運(yùn)算符中,優(yōu)先級(jí)最高的是【 】。A) %B) +C) *=D) 15表達(dá)式5/2+5%2-1的值是【 】。A) 4B) 2C) 2.5D) 3.516能正確表示邏輯關(guān)系“a10 或 a0”的C#語言表達(dá)式是【 】。A) a=10 or a=10 | a=10 & a=10 | ab20以下裝箱、拆箱語句中,錯(cuò)誤的有【 】。A) object obj=100; int m=(int)obj;B
15、) object obj=100; int m=obj;C) object obj=(int)100; int m=(int)obj;D) object obj=(object)100; int m=(int)obj;21下面有關(guān)變量和常量的說法,正確的是【 】。A) 在程序運(yùn)行過程中,變量的值是不能改變的,而常量是可以改變的B) 常量定義必須使用關(guān)鍵字constC) 在給常量賦值的表達(dá)式中不能出現(xiàn)變量D) 常量在內(nèi)存中的存儲(chǔ)單元是固定的,變量則是變動(dòng)的22代碼public static const int A=1;中的錯(cuò)誤是【 】。A) A需要定義類型B) 格式錯(cuò)誤C) const不能用st
16、atic修飾符D) const不能用public修飾符23以下對(duì)枚舉類型的定義,正確的是【 】。A) enum a=one,two,three;B) enum aa1,a2,a3;C) enum a1, 2, 3;D) enum a one,two,three ;25枚舉型常量的值不可以是【 】類型。A) intB) longC) ushortD) double26執(zhí)行下列兩條語句后,結(jié)果s2的值為【 】。string s=abcdefgh;string s2=s.Substring(2,3);A) bcB) cdC) bcdD) cde二填空題1在C#中,使用【 const 】關(guān)鍵字來聲明符
17、號(hào)常量。2在C#中,表達(dá)式Math.Pow(2,-2)的值是【 0.25 】。3為計(jì)算表達(dá)式ex+y的值,應(yīng)使用的C#語言的表達(dá)式是【 Math.Exp(x+y) 】。4C#語言規(guī)定,變量在使用之前必須先【 定義 】。5下列程序完成的功能是:從鍵盤上輸入一個(gè)直角三角形的斜邊長(zhǎng)度和一個(gè)角的度數(shù),計(jì)算出另兩條直角邊的長(zhǎng)度并輸出。請(qǐng)?zhí)羁?。class Programpublic static void Main(string args)double a, b, c, d, jd;c= Convert.ToSingle(Console.ReadLine();/輸入斜邊的長(zhǎng)度jd=Convert.ToSi
18、ngle(Console.ReadLine();/輸入角的度數(shù)d=【jd *Math .PI /180 】;a=c*Math.Sin(d);b=【c*Math .Cos (d) 】;Console.WriteLine(a=0,b=1,a,b); /輸出兩直角邊的值6設(shè)x為int型變量,請(qǐng)寫出描述“x是奇數(shù)”的C#語言表達(dá)式【 x%2=1 】。7請(qǐng)寫出描述“-10 x10”的C#語言表達(dá)式【 x=-10 & x=10 】。8在代碼中明確表示將某種數(shù)據(jù)類型轉(zhuǎn)換為另一種數(shù)據(jù)類型稱為【 顯式類型轉(zhuǎn)換 】。9下面程序的運(yùn)行結(jié)果是【 】。class Program public static void M
19、ain(string args) string str1=星期一星期二星期三; string str2=星期一星期二星期三; Console.WriteLine(str1=0,str1); Console.WriteLine(str2=0,str2); str1=星期一星期二星期三str2=星期一星期二星期三10C#中的字符串有兩類:規(guī)則字符串和逐字字符串,定義逐字字符串時(shí),應(yīng)在其前面加上【 】號(hào)。11下列程序的執(zhí)行結(jié)果是【 False 】。class Programpublic static void Main(string args)string str1,str2;str1=abdde;
20、 str2=abcde;Console.WriteLine(0,str1=str2);12已知str的值為”abcdefgh”,則表達(dá)式str.Substring(1,3)的值為【 bcd 】。13若要從字符串str的第3個(gè)字符開始取5個(gè)字符作為一個(gè)子串賦給sstr,可以使用語句【 sstr=str.Substring(3,5) 】實(shí)現(xiàn)。14以下程序的執(zhí)行結(jié)果是【 123 】。public static void Main(string args)string str=1a2b3c;int i;for(i=0;i=0& strib&b=c|ab?(ac?a:c):b);19以下程序的輸出結(jié)果是
21、【 】。class Program public static void Main(string args) int a = new int3 1, 2, 3 ; for (int i = 0; i 3; i+) Console.Write(0 , ai); Console.WriteLine(); int b = a; for (int i = 0; i 3; i+) bi = 2 * bi; for (int i = 0; i 3; i+) Console.Write(0 , ai); Console.WriteLine(); Console.Read(); 1 2 32 4 620以下程
22、序的輸出結(jié)果是【 】。class Program public static void Main(string args) int a=4,b=5,m,n; m=(a+)+(b+); n=a+b; Console.WriteLine(m=0 n=1,m,n); m=(+a)+(+b); n=a+b; Console.WriteLine(m=0 n=1,m,n); m=9 n=13m=13 n=13三問答題1什么是字符類型和字符串類型??jī)烧哂泻螀^(qū)別和聯(lián)系?2是否可以定義這樣的數(shù)組:它即包含int類型數(shù)據(jù),也包含float類型數(shù)據(jù)?為什么?3變量與常量有何區(qū)別?4什么是數(shù)據(jù)類型轉(zhuǎn)換?有哪幾種方法?
23、5數(shù)據(jù)類型的隱式轉(zhuǎn)換和顯式轉(zhuǎn)換分別在什么場(chǎng)合使用?它們可以相互替換嗎?6除(/)運(yùn)算對(duì)整型數(shù)據(jù)和浮點(diǎn)型數(shù)據(jù)有何不同?7簡(jiǎn)述C#中有哪些數(shù)據(jù)類型。8說明C#值類型與引用類型數(shù)據(jù)的區(qū)別。9簡(jiǎn)述C#中結(jié)構(gòu)類型和枚舉類型的聲明方法。10簡(jiǎn)述C#中常用類的靜態(tài)方法和非靜態(tài)方法的差異。第4章 C#控制語句一選擇題1在C#語言中,if語句后面的表達(dá)式應(yīng)該是【 】。A) 邏輯表達(dá)式B) 條件表達(dá)式C) 關(guān)系表達(dá)式D) 布爾類型的表達(dá)式2在C#語言中,if語句后面的表達(dá)式,不能是【 】。A) 邏輯表達(dá)式B) 算數(shù)表達(dá)式C) 關(guān)系表達(dá)式D) 布爾類型的表達(dá)式3在C#語言中,switch語句用【 】來處理不匹配ca
24、se語句的值。A) defaultB) anyelseC) breakD) goto4下列程序的輸出結(jié)果是【 】。public static void Main(string args)int x=1,a=0,b=0;switch(x) case 0: b+; break;case 1: a+; break;case 2: a+; b+; break;Console.WriteLine(“a=0,b=1”,a,b);A) a=2,b=1B) a=1,b=1C) a=1,b=0D) a=2,b=25以下敘述正確的是【 】。A) dowhile語句構(gòu)成的循環(huán)不能用其他語句構(gòu)成的循環(huán)來代替B) do
25、while語句構(gòu)成的循環(huán)只能用break語句結(jié)束循環(huán)C) 用dowhile語句構(gòu)成的循環(huán),在while后的表達(dá)式為true時(shí)結(jié)束循環(huán)D) 用dowhile語句構(gòu)成的循環(huán),在while后的表達(dá)式應(yīng)為關(guān)系表達(dá)式或邏輯表達(dá)式6以下關(guān)于for循環(huán)的說法不正確的是【 】。A) for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況B) for循環(huán)是先判定表達(dá)式,后執(zhí)行循環(huán)體C) 在for循環(huán)中,可以用break語句跳出循環(huán)體D) for循環(huán)體語句中,可以包含多條語句,但要用花括號(hào)括起來7以下關(guān)于if語句和switch語句的說法,正確的【 】。A) 如果在if語句和switch語句中嵌入break語句,則在程序執(zhí)行過程
26、中,一旦執(zhí)行到break語句,就會(huì)結(jié)束相應(yīng)的執(zhí)行,轉(zhuǎn)向執(zhí)行其后面的語句B) 凡是能夠使用if語句的地方就可以使用switch語句,反之亦然C) if語句有3種基本形式:if、ifelse和ifelse ifelseD) if語句是實(shí)現(xiàn)“單判斷二分支”的選擇結(jié)構(gòu),switch語句是實(shí)現(xiàn)“單判斷多分支”的選擇結(jié)構(gòu)。8以下關(guān)于for循環(huán)的說法,不正確的是【 】。A) for語句中的3個(gè)表達(dá)式都可以省略B) for語句中的3個(gè)表達(dá)式中,若第2個(gè)表達(dá)式的值為true,則執(zhí)行循環(huán)體中的語句,直到第3個(gè)表達(dá)式的返回值為falseC) for語句中的3個(gè)表達(dá)式中,第2個(gè)表達(dá)式必須是布爾類型的表達(dá)式,其他兩個(gè)可
27、以是任意類型的表達(dá)式。D) for語句中的3個(gè)表達(dá)式中,第1個(gè)表達(dá)式執(zhí)行且僅執(zhí)行一次;每當(dāng)循環(huán)體語句被執(zhí)行后,第3個(gè)表達(dá)式都跟著被執(zhí)行一次。9 C#提供的4種跳轉(zhuǎn)語句中,不推薦使用的是【 】。A) returnB) breakC) continueD) goto二填空題1在switch語句中,在每個(gè)分支的最后應(yīng)有一條【 break 】語句。2在C#中,實(shí)現(xiàn)循環(huán)的語句主要有【while】、dowhile和【 for】語句。3在循環(huán)執(zhí)行過程中,希望當(dāng)某個(gè)條件滿足時(shí)強(qiáng)行退出循環(huán),應(yīng)使用【break 】語句。4下列程序完成的功能是求出所有的水仙花數(shù)。(所謂水仙花數(shù)是指這樣的數(shù):該數(shù)是三位數(shù),其各位數(shù)字
28、的立方和等于該數(shù)。例如:153=13+53+33,所以153是一個(gè)水仙花數(shù)。)請(qǐng)?zhí)羁?。class Programpublic static void Main(string args)int a, b, c, t;for(i=100; i=【 999 】; i+)t=i;a=t%10; t=t/10; b=t%10; c=t/10;if(【 i=a*a*a+b*b*b+c*c*c 】) Console.WriteLine(i=0 ,i); 5下列程序的功能是:輸出100以內(nèi)能被3整除且個(gè)位數(shù)為6的所有整數(shù)。請(qǐng)?zhí)羁?。class Programpublic static void Main(str
29、ing args)int i, j;for(i=0;【 i10 】; i+)j=i*10+6;if(【 j%3=0】) Console.Write (0 , j); 6下列程序的功能是:產(chǎn)生100個(gè)兩位隨機(jī)正整數(shù),求這些數(shù)中所有能被3整除的數(shù)的和,以及所有不能被3整除的數(shù)的各位數(shù)字和。請(qǐng)?zhí)羁?。static void Main(string args) float sum1=0,sum2=0; int i,num; Random randObj1=new Random(); for(i=1;i=100;i+) num=【randObj1.Next(10,100) 】;if(num%3=0) su
30、m1=sum1+num; 【 continue; 】 sum2=sum2+num%10; sum2=sum2+num/10; Console.WriteLine(能被3整除的數(shù)的和為:0,sum1); Console.WriteLine(不能被3整除的所有數(shù)的各位數(shù)字和為:0,sum2); Console.Read ();三讀程序題1有以下程序代碼,若執(zhí)行時(shí)從鍵盤上輸入9,則輸出結(jié)果是【 10 】。class Programpublic static void Main(string args)int n;n=int.Parse (Console.ReadLine(); if (n+10) C
31、onsole.WriteLine(0, n); else Console.WriteLine(0, n-); Console.Read(); 2下列程序的運(yùn)行結(jié)果是【i=11, s=0 】。class Programpublic static void Main(string args)int i=0,s=1;do s/=s+1; i+; while(i=10);Console.WriteLine(i=0, s=1 ,i,s); 3下列程序的運(yùn)行結(jié)果是【 m=51,n=50 】。class Programpublic static void Main(string args)int i=0,m
32、=0,n=0;while(i=100) if(i%2=0) m+=1;else n=n+1;i+; Console.WriteLine(m=0,n=1,m,n); 4下列程序的運(yùn)行結(jié)果是【 m=3 】。static void Main(string args) int a=15,b=21,m=0; switch (a%2) case 0: m+; break; case 1: m+; switch (b%2) case 0: m+; break; default: m=m+2; break; break; Console.WriteLine(m=0, m);4下列程序的運(yùn)行結(jié)果是【 s=10
33、】。static void Main(string args) int i, j, s=0; for( i=2; i6; i=i+2 ) s=1; for( j=i; j6; j+) s+=j; Console.WriteLine(s=0, s);5下列程序的運(yùn)行結(jié)果是【 a=32 】。static void Main(string args) int i=0, a=0; while( i20 ) for( ; ; ) if(i%10=0) break; else i-; i+=11; a+=i; Console.WriteLine(a=0, a);四編程題1設(shè)計(jì)一個(gè)控制臺(tái)應(yīng)用程序,將用戶輸入
34、的正整數(shù)反向顯示出來。如輸入12345,則輸出54321。 static void Main(string args) int digit, num; Console.Write(輸入一個(gè)整數(shù):); num = int.Parse(Console.ReadLine(); Console.Write(反向顯示結(jié)果:); while (num != 0) digit = num % 10; /依次求個(gè)位、十位、上的數(shù)字digit num = num / 10; Console.Write(digit); Console.WriteLine(); Console.Read(); 2設(shè)計(jì)一個(gè)控制臺(tái)應(yīng)用
35、程序, 讀入一組整數(shù)(以輸入0結(jié)束),分別輸出其中奇數(shù)和偶數(shù)的和。static void Main(string args) int n, s1 = 0, s2 = 0; do n = int.Parse(Console.ReadLine(); if (n % 2 = 1) s1 += n; else s2 += n; while (n != 0); Console.WriteLine(奇數(shù)之和=0, s1); Console.WriteLine(偶數(shù)之和=0, s2); Console.Read(); 3設(shè)計(jì)一個(gè)控制臺(tái)應(yīng)用程序, 輸入正整數(shù)n,計(jì)算s=1+(1+2)+(1+2+3)+(1+2
36、+n) 。static void Main(string args) int n, i, j, s = 0, p=0; Console.Write(n:); n = int.Parse(Console.ReadLine(); for (i = 1; i = n; i+) p = p + i; s += p; Console.WriteLine(s=0, s); Console.Read(); 4設(shè)計(jì)一個(gè)控制臺(tái)應(yīng)用程序,利用下面的公式編程計(jì)算的值。 static void Main(string args) double pi=0.0; int n; for (n=1;n=2000;n+) if
37、 (n%2=1) pi=pi+1.0/(2*n-1); else pi=pi-1.0/(2*n-1); pi=4*pi; Console.WriteLine(=0, pi); 第5章 數(shù)組和集合一選擇題1在C#中定義一個(gè)數(shù)組,以下正確的是【 】。A) int a=new int5;B) int a= new int5;C) int a=new int5;D) int5 a=new int;2下列語句中,不能正確定義長(zhǎng)度為4的數(shù)組a的語句是【 】。A) int a=new int1,2,3,4;B) int a= 1,2,3,4;C) int a=new int41,2,3;D) int a=n
38、ew int41,2,3,4;3假定int類型變量占用4個(gè)字節(jié),若有定義:int x=new int100,2,4,4,5,6,7,8,9,10;則數(shù)組x在內(nèi)存中所占字節(jié)數(shù)是【 】。A) 10B) 20C) 40D) 804以下數(shù)組定義語句中不正確的是【 】。A) int a=new int51,2,3,4,5;B) int, a=new int34;C) int a=new int30;D) int a=1,2,3,4,5;5以下定義并初始化一維數(shù)組的語句中正確的是【 】。A) int a = 1,2,3,4,5;B) int a=new int;C) int a=new int1,2,3,
39、4,5;D) int a; a=1,2,3,4,5;6以下定義并初始化一維數(shù)組的語句中正確的是【 】。A) int a= new int;B) int a=new int;C) int a=new int1,2,3,4,5;D) int a=new intn1,2,3,4,5;7以下定義并初始化數(shù)組的語句中正確的是【 】。A) int a=new int4,5;B) int a=new int4,5;C) int a,=new int4,5;D) int, a=new int4,5;8有定義語句:int, a=new int5,6; 則下列正確的數(shù)組元素引用是【 】。A) a(3,4) B)
40、a(3)(4)C) a34D) a3,49對(duì)于foreach語句和for語句,下列說法錯(cuò)誤的是【 】。A) for語句與foreach語句在結(jié)構(gòu)上不一樣,前者有3個(gè)表達(dá)式,表達(dá)式間用分號(hào)隔開;后者僅有一個(gè)“表達(dá)式”,形式為“數(shù)據(jù)類型 變量 in 集合表達(dá)式”B) 語句for(;true;);是合法的,但是個(gè)死循環(huán);“foreach(true);”也是合法的,也是一個(gè)死循環(huán)C) 語句for(;true;);是合法的,但是個(gè)死循環(huán);而“foreach(true);”是非法的D) 語句塊“ int a=1,2; foreach(int i in a);”是合法的。10在C#中,關(guān)于Array和Arr
41、ayList的維數(shù),以下說法正確的是【 】。A) Array可以有多維,而ArrayList只能是一維B) Array只能是一維的,而ArrayList可以有多維C) Array和ArrayList都只能是一維D) Array和ArrayList都可以是多維11以下List集合聲明中正確的是【 】。A) List f=new List();B) List f=new List ();C) List f=new List ();D) List f=new List;二填空題1數(shù)組定義與賦初值語句如下:int a=1,2,3,4,5; 則a2的值為【 3 】。2下列程序段執(zhí)行后,a4的值為【 4
42、】。int a=1,2,3,4,5;a4=aa2;3下列數(shù)組定義語句中:int a=new int3; ,定義的數(shù)組a占的字節(jié)數(shù)為【 12 】。4下列數(shù)組定義語句中,數(shù)組將在內(nèi)存中占用【 160 】個(gè)字節(jié)。double, d=new double 4,5;5要定義一個(gè)3行4列的單精度二維數(shù)組f,使用的定義語句為【 float, f=new float 3,4; 】。6要定義一個(gè)int型的參差數(shù)組a,數(shù)組有兩行,第一行一個(gè)元素,第二行兩個(gè)元素并賦初值3和4,使用的語句如下,請(qǐng)?zhí)羁?。int a=【new int2 】;a0=【 new int1 】;a1=【 new int23,4 】;7. 下列
43、程序完成的功能是采用二分查找方法在給定的有序數(shù)組a中查找用戶輸入的值,并提示相應(yīng)的查找結(jié)果。請(qǐng)?zhí)羁?。public static void Main(string args)double a=new int100, 1.2, 2.5, 3, 4.6, 5.0, 6.7, 7.6, 8.2, 9; double k; int low=0, high=9, mid; Console.Write(輸入查找數(shù)據(jù):); k=double.Parse(Console.ReadLine(); while (【(1)】) mid=(low+high)/2; if (amid = k) Console.Write
44、Line(a0=1, mid, k); return; else if (amid k) 【(2)】; else low = mid + 1; Console.WriteLine(未找到0, k);(1)low=0;i-) ai=10-i; Console.WriteLine(“012”,a2,a5,a8);2下面程序的運(yùn)行結(jié)果是【 】。class Programpublic static void Main(string args) const int SIZE=10;int y=1,2,3,4,5,6,7,8,9,10;int z=new intSIZE;for (int i = 0; i
45、 z.Length; i+)zi = i * 2 + yi; Console.Write(0 , zi);Console.Read(); 1 4 7 10 13 16 19 22 25 282下面程序的運(yùn)行結(jié)果是【 】。static void Main(string args) const int M = 5; int yhsj = new intM; int i, j; for (i = 0; i M; i+) yhsji = new inti + 1; for (i = 0; i M; i+) yhsji0 = 1; yhsjii = 1; for (i = 2; i M; i+) for
46、 (j = 1; j i; j+)yhsjij = yhsji - 1j - 1 + yhsji - 1j; for (i = 0; i M; i+) for (j = 0; j = i; j+) Console.Write(0 , yhsjij);Console.WriteLine(); Console.Read();11 11 2 11 3 3 11 4 6 4 13下面程序的運(yùn)行結(jié)果是【 s=28 】。static void Main(string args) int s = 0; int a = new int2; a0 = new int3 1, 2, 3 ; a1 = new in
47、t4 4, 5, 6, 7 ; for (int i = 0; i a.Length; i+) for (int j = 0; j ai.Length; j+) s = s + aij; Console.Write(s=0,s);3下面程序的運(yùn)行結(jié)果是【 3 】。 static void Main(string args) int num = 1, 3, 5 ; ArrayList arr = new ArrayList(); for(int i=0;ia1?a0:a1; max2=a0a1?a1:a0; for (i=2;in;i+) if (max1ai) max2=max1; max1=
48、ai; Console.WriteLine(max1=0,max2=1,max1,max2); 2設(shè)計(jì)一個(gè)控制臺(tái)應(yīng)用程序,用兩個(gè)二維數(shù)組分別存放5個(gè)學(xué)生4門功課的考試成績(jī),求每位考生的平均成績(jī),并輸出結(jié)果。static void Main(string args) const int Max = 5; /考生數(shù) int Ave = new intMax; /定義一個(gè)一維數(shù)組存儲(chǔ)考生的總成績(jī) int, grade=88,75,62,84,96,85,75,92, 68,63,72,78,95,89,76,98, 76,65,72,63;/定義二維數(shù)組存儲(chǔ)考生成績(jī) for(int i=0; iMa
49、x; i+) for(int j=0; j4; j+) Avei += gradei,j; for (int k = 0; k Max; k+) Console.WriteLine(考生0平均成績(jī)=1 ,k+1, Avek/4.0);3設(shè)計(jì)一個(gè)控制臺(tái)應(yīng)用程序,用兩個(gè)一維數(shù)組分別存放5個(gè)學(xué)生的學(xué)號(hào)和姓名,分別按學(xué)號(hào)和姓名進(jìn)行排序,并輸出排序后的結(jié)果。 class Program const int Max = 5; static void disp(int no,string name, string str) Console.WriteLine(str); Console.Write(學(xué)號(hào):t
50、); for (int i = 0; i no.Length; i+) Console.Write(0t,noi); Console.WriteLine(); Console.Write(姓名:t); for (int i = 0; i name.Length; i+)Console.Write(0t, namei); Console.WriteLine(); static void Main(string args) int no = new int 2, 4, 5, 1, 3; string name = new string Smith,John,Mary,Cherr,Tomn; dis
51、p(no, name,排序前:); Array.Sort(no, name); disp(no, name,按學(xué)號(hào)排序后:); Array.Sort(name, no); disp(no, name, 按姓名排序后:);Console.Read(); 第6章 面向?qū)ο蟪绦蛟O(shè)計(jì)一選擇題1下面有關(guān)類和對(duì)象的說法中,不正確的是【 】。A) 類是系統(tǒng)提供的一種數(shù)據(jù)類型B) 對(duì)象是類的實(shí)例C) 類和對(duì)象的關(guān)系是抽象和具體的關(guān)系D) 任何一個(gè)對(duì)象只能屬于一個(gè)具體的類2面向?qū)ο蟮奶攸c(diǎn)主要概括為【 】。A) 可分解性、可組合型性和可分類性B) 繼承性、封裝性和多態(tài)性C) 封裝性、易維護(hù)性、可擴(kuò)展性和可通用性D
52、) 抽象性、繼承性和封裝性3要使一個(gè)類能被同一命名空間中的其他類訪問,但不能被這個(gè)命名空間以外的類訪問,該類可以【 】。A) 不使用任何修飾符B) 使用private修飾符C) 使用public修飾符D) 使用internal修飾符4在C#中,【 】訪問修飾符修飾的字段只能由當(dāng)前程序集訪問。A) privateB) publicC) protectedD) internal5類的字段和方法的默認(rèn)訪問修飾符是【 】。A) publicB) privateC) protectedD) internal6下列關(guān)于構(gòu)造函數(shù)的描述中,不正確的是【 】。A) 構(gòu)造函數(shù)中,不可以包含return語句B) 一
53、個(gè)類只能有一個(gè)構(gòu)造函數(shù)C) 實(shí)例構(gòu)造函數(shù)在生成類實(shí)例時(shí)被自動(dòng)調(diào)用D) 用戶可以定義無參構(gòu)造函數(shù)7下列關(guān)于構(gòu)造函數(shù)的描述中,【 】是正確的。A) 構(gòu)造函數(shù)名必須與類名相同B) 構(gòu)造函數(shù)不可以重載C) 構(gòu)造函數(shù)不能帶參數(shù)D) 構(gòu)造函數(shù)可以聲明返回類型8下列的【 】不是構(gòu)造函數(shù)的特征。A) 構(gòu)造函數(shù)的函數(shù)名與類名相同B) 構(gòu)造函數(shù)可以重載C) 構(gòu)造函數(shù)可以帶有參數(shù)D) 可以指定構(gòu)造函數(shù)的返回值類型9類ClassA有一個(gè)名為M1的方法,在程序中有如下一段代碼,假設(shè)該段代碼是可以執(zhí)行的,則聲明M1方法時(shí)一定使用了【 】修飾符。ClassA Aobj=new ClassA();ClassA.M1();A)
54、 publicB) public staticC) privateD) virtual10在C#中,從屬性的讀寫特性上來進(jìn)行分類,可以劃分為以下3種,除了【 】。A) 只讀屬性B) 只寫屬性C) 讀寫屬性D) 不可讀不可寫屬性11在C#中,以下關(guān)于屬性的描述中正確的是【 】。A) 屬性是以public關(guān)鍵字修飾的字段,以public關(guān)鍵字修飾的字段也可稱為屬性B) 屬性是訪問字段值的一種靈活機(jī)制,屬性更好地實(shí)現(xiàn)了數(shù)據(jù)的封裝和隱藏C) 要定義只讀屬性只需在屬性名前加上readonly關(guān)鍵字D) C#的類中不能自定義屬性12以下類MyClass的屬性count屬于【 】屬性。class MyCla
55、ss int i;int count get return i; A) 只讀B) 只寫屬性C) 讀寫D) 不可讀不可寫13C#中的TestClass為一自定義類,其中有如下屬性定義:public int Property 使用以下語句創(chuàng)建了該類的對(duì)象,并讓變量obj引用該對(duì)象。TestClass obj=new TestClass();那么,可通過【 】方式訪問類TestClass的Property屬性。A) MyClass. PropertyB) obj. PropertyC) TestClass. PropertyD) obj. Property()14關(guān)于C#語言的方法,下列敘述正確的是
56、【 】。A) 方法的定義不能嵌套,但方法的調(diào)用可以嵌套B) 方法的定義可以嵌套,但方法的調(diào)用不能嵌套C) 方法的定義和調(diào)用都不能嵌套D) 方法的定義和調(diào)用都可以嵌套15以下所列的各方法頭部中,正確的是【 】。A) void play(var a:Integer, var b:Integer)B) void play(int a, b)C) void play(int a, int b)D) Sub play(a as integer, b as integer)16在類A中定義了屬性y:class A public int yget return 1; set 并試圖通過下列代碼來實(shí)現(xiàn)對(duì)屬性y
57、的訪問:A b=new A();b.y=2;int x=b.y;對(duì)此,下列說法正確的是【 】。A) 屬性y可讀可寫,因此變量x的值為2B) 屬性y可讀,但不可寫,因此語句“b.y=2;”是錯(cuò)誤的C) 屬性y可寫,但不可讀,因此語句“int x=b.y;”是錯(cuò)誤的D) 屬性y可讀可寫,變量x的值為117有以下類聲明:public class Class1private string _sData=OK!; privare string sDataset _sData = value;在Main函數(shù)中,在成功創(chuàng)建該類的對(duì)象obj后,以下【 】語句是合法的。A) obj. _sData=Hello!
58、B) obj. set(obj.sData);C) obj. sData=Hello!D) Console.WriteLine(obj. sData);18在類的定義中,類的【 】描述了該類的對(duì)象的行為特征。A) 字段B) 方法C) 屬性D) 類名19調(diào)用重載方法時(shí),系統(tǒng)根據(jù)【 】來選擇具體的方法。A) 參數(shù)的類型B) 參數(shù)的個(gè)數(shù)和類型C) 參數(shù)個(gè)數(shù)D) 方法的返回值類型20下列關(guān)于方法重載的說法中,完全正確的是【 】。A) 重載方法的參數(shù)個(gè)數(shù)必須不同B) 重載方法必須具有不同的形參列表C) 重載方法必須具有不同的返回值類型D) 重載方法的參數(shù)類型必須不同21關(guān)于靜態(tài)成員,下列說法正確的是【
59、】。A) 同一個(gè)類中的靜態(tài)成員,類實(shí)例化后,在不同的對(duì)象中形成不同的靜態(tài)成員B) 在類實(shí)例化后,同類型的對(duì)象都共享類的靜態(tài)成員,靜態(tài)成員只有一個(gè)版本C) 在類定義時(shí)靜態(tài)成員屬于類,在類實(shí)例化后靜態(tài)成員屬于對(duì)象D) 在類實(shí)例化后靜態(tài)成員已被實(shí)例化,因此不同的對(duì)象有不同的靜態(tài)成員22下列關(guān)于靜態(tài)方法的說法,錯(cuò)誤的是【 】。A) 靜態(tài)方法不對(duì)特定實(shí)例進(jìn)行操作,不與實(shí)例相關(guān)聯(lián)B) 使用靜態(tài)方法的語法格式:類名.靜態(tài)方法(實(shí)參列表)C) 靜態(tài)方法只能訪問類中的靜態(tài)成員,不能訪問非靜態(tài)成員D) 靜態(tài)方法不能訪問類中的靜態(tài)成員23已知: int a=100;void Func(ref int b) 則下列函
60、數(shù)調(diào)用正確的是【 】。A) Func(ref(10*a)B) Func(ref 10*a)C) Func(ref(a)D) Func(ref a)24下面對(duì)方法中的ref和out參數(shù)說明錯(cuò)誤的是【 】。A) ref和out參數(shù)傳遞方法相同,都是把實(shí)參的內(nèi)存地址傳遞給形參,實(shí)參與形參指向同一個(gè)內(nèi)存存儲(chǔ)區(qū)域,但ref要求實(shí)參必須在調(diào)用之前明確賦過值B) ref是將實(shí)參傳入形參,out只能用于從方法中傳出值,而不能從方法調(diào)用處接受實(shí)參數(shù)據(jù)。C) ref和out參數(shù)因?yàn)閭鬟f的是實(shí)參的地址,所以要求實(shí)參和形參的數(shù)據(jù)類型必須一致D) ref和out參數(shù)要求實(shí)參和形參的數(shù)據(jù)類型或者一致,或者實(shí)參能被隱式地轉(zhuǎn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年新型物流服務(wù)購(gòu)銷合同
- 勤奮200字演講稿(范文格式7篇)
- 2024年技術(shù)開發(fā)與樣品試用合同
- 執(zhí)勤保安年終工作總結(jié)(3篇)
- 淘寶客服轉(zhuǎn)正工作單位總結(jié)范文(5篇)
- 2024年抵押借款擔(dān)保協(xié)議
- 2024年度墓園管理與安葬服務(wù)協(xié)議
- 護(hù)士醫(yī)德總結(jié)(3篇)
- 2024年房地產(chǎn)市場(chǎng)合作開發(fā)合同標(biāo)的及權(quán)益分配
- 2024年新品運(yùn)輸委托協(xié)議
- 第一課 同住地球村 復(fù)習(xí)課件-部編版道德與法治九年級(jí)下冊(cè)
- 主題班會(huì)課件-同學(xué)喜歡我-通用版
- 代謝組學(xué)-資料課件
- 《化工清潔生產(chǎn)技術(shù)概論》配套教學(xué)課件
- 設(shè)計(jì)師要懂心理學(xué)課件
- 2022-家電品牌抖音快手運(yùn)營(yíng)、直播帶貨方案
- 山西省太原市2023屆高三上學(xué)期期中數(shù)學(xué)試題
- 《這兒真美》優(yōu)秀課件
- 《插花藝術(shù)》課程大作業(yè)
- 電視劇具體預(yù)算表
- DB15T 1276-2017 公路波紋鋼管(板)橋涵工程質(zhì)量檢驗(yàn)評(píng)定標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論