C#編程習(xí)題參考模板_第1頁(yè)
C#編程習(xí)題參考模板_第2頁(yè)
C#編程習(xí)題參考模板_第3頁(yè)
C#編程習(xí)題參考模板_第4頁(yè)
C#編程習(xí)題參考模板_第5頁(yè)
已閱讀5頁(yè),還剩41頁(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、C#編程習(xí)題以下有18道習(xí)題(當(dāng)然,這并非全部的習(xí)題,最后應(yīng)該會(huì)多增加2題,共20題),對(duì)于這20道題目,要求大家每道題目都能夠做到看到題目,不看其他參考材料的情況下,能夠?qū)崿F(xiàn)出來(lái)。期末考將會(huì)從中抽取三道題目(分?jǐn)?shù)占60分),而期末考其實(shí)是要出三份試卷的。所以總的需要從這份里面抽9道題目。也就是這20題中有9題是肯定會(huì)出現(xiàn)在試卷中的。對(duì)于本科目最后成績(jī)的說(shuō)明:總評(píng)成績(jī)=平時(shí)成績(jī)*50%+期末成績(jī)*50%平時(shí)成績(jī)與期末成績(jī)都是100分制的。平時(shí)成績(jī)=出勤課堂紀(jì)律情況*40%+作業(yè)完成情況*60%對(duì)于作業(yè)完成情況的說(shuō)明:對(duì)于之前的作業(yè),不管是否有提交,我都不再追究。我只要求從發(fā)這份習(xí)題給你們開(kāi)始,

2、每周要按順序完成如下的5道題目,把每道題目都自己理解完實(shí)現(xiàn)出來(lái)之后再交上來(lái)。我知道要把這20題都弄懂,不是一件容易的事情,但不是不可能。第一, 我會(huì)提供一些材料,大家可以先把這些材料看一遍,大體有個(gè)印象,當(dāng)遇到問(wèn)題的時(shí)候,也要學(xué)會(huì)查找對(duì)應(yīng)材料來(lái)解決問(wèn)題。第二, 下面的每道題目,我都將會(huì)給出參考答案。當(dāng)然是以截圖的方式。也會(huì)在關(guān)鍵代碼附上相應(yīng)的注釋。還有一句話,希望能與大家共勉?!皩W(xué)習(xí),從來(lái)都是一個(gè)自覺(jué)的過(guò)程。遇上一個(gè)好老師,會(huì)讓你少走很多彎路,但不是替代你學(xué)習(xí)。遇上一個(gè)不夠好的老師,或許會(huì)多走些彎路,但不代表你就學(xué)不好。事在人為,只要自己有心,外界條件再差也是可以攻克的;若是無(wú)心,外界條件再好

3、,也會(huì)成為你的借口?!弊詈螅倩氐轿覀冞@門(mén)課的現(xiàn)實(shí)。能否取得好成績(jī),能否不掛科,取決于你,而不取決于我。規(guī)則我都已經(jīng)說(shuō)清楚了,最后結(jié)果如何我說(shuō)了不算,你的實(shí)際行動(dòng)和實(shí)際成績(jī)說(shuō)了算。1、 編寫(xiě)一個(gè)函數(shù),函數(shù)名為Max,該函數(shù)用來(lái)獲取給定三個(gè)整數(shù)的最大值。在Main函數(shù)中實(shí)現(xiàn)從屏幕中讀取三個(gè)整數(shù),然后輸出這三個(gè)整數(shù)中最大的那個(gè)數(shù)的功能。namespace _1 class Program static void Main(string args) Console.WriteLine(請(qǐng)輸入3個(gè)數(shù):按回車結(jié)束); int a, b, c, temp; a = int.Parse(Console.Re

4、adLine();/定義一個(gè)輸入值a; b = int.Parse(Console.ReadLine();/定義一個(gè)輸入值b; c = int.Parse(Console.ReadLine();/定義一個(gè)輸入值c; temp = Max(a, b, c);1 / 46 Console.WriteLine(a=0,b=1,c=2,三個(gè)數(shù)中最大值為3, a, b, c, temp); /074 陳振華 static int Max(int a, int b, int c) int temp = a;/把a(bǔ)的值付給temp; if (temp b) temp = b; if (temp c) tem

5、p = c; return temp; 2、 編寫(xiě)一個(gè)函數(shù),函數(shù)名為PrintTriangle,用來(lái)打印n階的正三角形。并在Main函數(shù)中實(shí)現(xiàn)從屏幕中輸入n的值,然后根據(jù)給定的n的值打印出相應(yīng)的正三角形。當(dāng)n=7時(shí), * * * * * *當(dāng)n=5時(shí), * * * *代碼:namespace _1 class Program static void Main(string args) int a; Console.WriteLine(請(qǐng)輸入你想要打印出的三角形的行數(shù)); a = int.Parse(Console.ReadLine(); PrintTriangle(a); /074 陳振華 s

6、tatic void PrintTriangle(int a) for (int i = 1; i =a; i+) for (int j = i; j 0; x-) Console.Write(*); Console.WriteLine(); 3、 輸入某年某月某日,判斷這一天是這一年的第幾天?。要求:需寫(xiě)一個(gè)函數(shù),給定年月日,求的該天處于該年的第幾天。然后在Main函數(shù)中測(cè)試。代碼:namespace _1 class Program static void Main(string args) int year, month, day; Console.WriteLine(請(qǐng)輸入年份); y

7、ear = int.Parse(Console.ReadLine(); Console.WriteLine(請(qǐng)輸入月份); month = int.Parse(Console.ReadLine(); Console.WriteLine(請(qǐng)輸入日期); day = int.Parse(Console.ReadLine(); Console.WriteLine(0年1月2日處于該年的第3天, year, month, day, Cs(year, month, day); static int Cs(int year, int month, int day) int sum = 0; for (in

8、t i = 1; i 2) sum = sum - 1; return sum; 4、 給定一個(gè)大于三的奇數(shù)n,打印出相應(yīng)的三角形。如n=7時(shí)的形狀如下:*代碼;class Program static void Main(string args) int a; Console.WriteLine(請(qǐng)輸入你想要打印出的三角形的行數(shù),該數(shù)必須是大于三的奇數(shù)); a = int.Parse(Console.ReadLine(); if (a % 2 = 1 & a = 3) PrintTriangle(a); else Console.WriteLine(該數(shù)不是大于三的奇數(shù)); / /074 陳

9、振華 / / static void PrintTriangle(int a) for (int i = 1; i = a / 2 + 1; i+) Console.Write(*); for (int x = 1; x 0; i-) Console.Write(*); for (int x = i - 1; x 0; x-) Console.Write(*); Console.WriteLine(); 要求:編寫(xiě)一個(gè)函數(shù),給定一個(gè)n,打印出相應(yīng)的三角形,若n不是奇數(shù),則提示說(shuō)n的值必須為奇數(shù)。5、 給一個(gè)正整數(shù),要求:a) 寫(xiě)一個(gè)函數(shù)求出它是幾位數(shù)。b) 寫(xiě)一個(gè)函數(shù),分別輸出每一位數(shù)字。c)

10、 寫(xiě)一個(gè)函數(shù),按逆序輸出各位數(shù)字,例如原數(shù)位123,則輸出321.最后在main函數(shù)中測(cè)試結(jié)果代碼:namespace ConsoleApplication1 class Program static void Main(string args) int a, r; Console.WriteLine(請(qǐng)輸入一個(gè)正整數(shù)); a = int.Parse(Console.ReadLine(); r = C105(a); Console.WriteLine(該數(shù)是0位數(shù), r); int A = Db(a); Shuzhu(A); Cs(A); static int C105(int a) int

11、i = 1; while (a 10) a = a / 10; i+; return i; static int Db(int a) int count = C105(a); int data = new intcount; while (a 0) data-count = a % 10; a = a / 10; return data; static void Shuzhu(int A) for (int i = 0; i A.Length; i+) Console.Write(0 ,Ai); Console.WriteLine(); static void Cs(int A) for (i

12、nt i = 0; i A.Length / 2; i+) int temp = Ai; Ai = AA.Length - i - 1; AA.Length - i - 1 = temp; Console.WriteLine(倒敘輸出后的結(jié)果為); for (int i = 0; i A.Length; i+) Console.Write(0 , Ai); Console.WriteLine(); 6、 請(qǐng)編寫(xiě)一個(gè)函數(shù),計(jì)算出從m到n的數(shù)的和,比如m=3,n=300,則計(jì)算出從3一直加到300的和。并在Main函數(shù)中調(diào)用測(cè)試。要求:1) 寫(xiě)個(gè)函數(shù)采用for語(yǔ)句實(shí)現(xiàn)該功能。2) 寫(xiě)個(gè)函數(shù)采用wh

13、ile語(yǔ)句實(shí)現(xiàn)該功能。3) 寫(xiě)個(gè)函數(shù)采用dowhile語(yǔ)句實(shí)現(xiàn)該功能。代碼:namespace ConsoleApplication1 class Program static void Main(string args) int a,b; Console.WriteLine(請(qǐng)輸入兩個(gè)正整數(shù)分,別按回車結(jié)束); a = int.Parse(Console.ReadLine(); b = int.Parse(Console.ReadLine(); For(a, b); While(a, b); Dowhile(a, b); static void For(int a, int b) int s

14、um = 0; for (int i = a; i = b; i+) sum = sum + i; Console.WriteLine(從0到1的所有數(shù)的和=2,a,b,sum); /074 陳振華 static void While(int a, int b) int sum = 0,i=a; while (i = b) sum = sum + i; i+; Console.WriteLine(從0到1的所有數(shù)的和=2, a, b, sum); static void Dowhile(int a, int b) int sum = 0, i = a; do sum = sum + i; i+

15、; while (i = b); Console.WriteLine(從0到1的所有數(shù)的和=2, a, b, sum); 7、 寫(xiě)一個(gè)函數(shù),判斷給定的一個(gè)正整數(shù)是否是素?cái)?shù),并在Main函數(shù)中測(cè)試。8、 代碼:namespace ConsoleApplication1 class Program static void Main(string args) int m, a; m = int.Parse(Console.ReadLine(); a = Sushu105(m); if (a = 0) Console.WriteLine(這個(gè)數(shù)是素?cái)?shù), a); else Console.WriteLi

16、ne(這個(gè)數(shù)不是是素?cái)?shù), a); static int Sushu105(int m) int a = 0; for (int i = 2; i m; i+) if (m % i = 0) a+; return a; 9、 寫(xiě)一個(gè)函數(shù),返回給定mn之間的所有素?cái)?shù)。再寫(xiě)一個(gè)函數(shù),打印出給定一個(gè)數(shù)組中的所有元素。并在Main函數(shù)中測(cè)試。10、 代碼:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1 class Program

17、static void Main(string args) Console.WriteLine(請(qǐng)輸入兩個(gè)數(shù)); int a, b; a = int.Parse(Console.ReadLine(); b = int.Parse(Console.ReadLine(); /bool result = IsSushu(6); /Console.WriteLine(result); int wuxinglin = Suzhu(a, b); Console.WriteLine(0到1之間的所有素?cái)?shù)如下, a, b); Daying(wuxinglin); / / 獲取所有a到b之間所有的素?cái)?shù) / /

18、/ / static int Suzhu(int a, int b) int count = Geshu(a, b); int wuxinglin = new intcount; int d = 0; for (int i = a; i = b; i+) if (IsSushu(i) wuxinglind = i; d+; return wuxinglin; / / 返回兩個(gè)數(shù)之間所有的素?cái)?shù)的個(gè)數(shù)0 / / / / static int Geshu(int a, int b) int c = 0; for (int i = a; i = b; i+) if (IsSushu(i) c+; re

19、turn c; / / 判斷一個(gè)數(shù)是不是素?cái)?shù),如果是返回turn,否則返回false / / / static bool IsSushu(int m) bool result = true; for (int i = 2; i = (int)Math.Sqrt(m); i+) if (m % i = 0) result = false; break; return result; / / 給定一個(gè)數(shù)組打印出該中所有的元素 / / static void Daying(int wuxinglin) for (int i = 0; i 0) result.Insert(0,a%2); a = a

20、/ 2; return result.ToString(); 13、 編寫(xiě)一個(gè)函數(shù),返回給定一個(gè)正整數(shù)m的n位二進(jìn)制表示方法,若n小于實(shí)際給定數(shù)m的二進(jìn)制位數(shù),則返回其真實(shí)位數(shù)。比如m=100,n=3,則返回1100100比如m=100,n=8,則返回001100100代碼:namespace _1 class Program static void Main(string args) Console.WriteLine(請(qǐng)輸入一個(gè)正整數(shù),按回車鍵結(jié)束); int a = int.Parse(Console.ReadLine(); Console.WriteLine(請(qǐng)輸入你想返回的二進(jìn)制的位

21、數(shù)); int b = int.Parse(Console.ReadLine(); string result = Zhuanhua(a, b); Console.WriteLine(輸入的數(shù)0被轉(zhuǎn)化為二進(jìn)制后1位的結(jié)果為2, a,b,result); static string Zhuanhua(int a,int b) StringBuilder result=new StringBuilder(); int count = 0; while (a 0) result.Insert(0,a%2); a = a / 2; count+; for (int i = count; i = b;

22、i+) result.Insert(0, 0); return result.ToString(); 14、 寫(xiě)一個(gè)函數(shù),實(shí)現(xiàn)對(duì)給定一個(gè)整型數(shù)組中的每個(gè)元素進(jìn)行逆序重新存放。例如,原來(lái)順序?yàn)?,3,6,5,7,。要求改為7,5,6,3,1。并在Main函數(shù)中測(cè)試。15、 代碼: namespace _074 class Program static void Main(string args) Console.WriteLine(請(qǐng)輸入一個(gè)整形數(shù)組中間用逗號(hào)隔開(kāi)如10,11,12); string a = Console.ReadLine(); string tempData = a.Spli

23、t(,); int data = new inttempData.Length; for (int i = 0; i tempData.Length; i+) datai = int.Parse(tempDatai); data = Shuzhu(data); Console.WriteLine(逆序輸出后的數(shù)組如下); Daying(data); static int Shuzhu(int data) int temp; for (int i = 0; i data.Length/2; i+) temp = datai; datai = datadata.Length - i - 1; da

24、tadata.Length - i - 1 = temp; return data; static void Daying(int data) for (int i = 0; i data.Length; i+) Console.Write(0, datai); 16、 寫(xiě)一個(gè)函數(shù),給定一個(gè)數(shù)n,要求返回n行的楊輝三角形。并在Main函數(shù)中測(cè)試。17、 代碼:namespace _074 class Program static void Main(string args) Console.WriteLine(請(qǐng)輸入要打印的楊輝三角的行數(shù),按回車結(jié)束!); int n = int.Parse(

25、Console.ReadLine(); Console.WriteLine(0行的楊輝三角如下:, n); PrintYangaHuiTriangle(n); static void PrintYangaHuiTriangle(int n) int, data = new intn, n; for (int i = 1; i = n; i+) datai - 1, 0 = 1; datai - 1, i - 1 = 1; for (int i = 3; i = n; i+) for (int j = 2; j i; j+) datai - 1, j - 1 = datai - 2, j - 2

26、 + datai - 2, j - 1; for (int i = 1; i = n; i+) for (int j = 1; j 0) result.Append(n % 10); n = n / 10; return int.Parse(result.ToString(); 20、 簡(jiǎn)單計(jì)算器a) 用switch語(yǔ)句編程設(shè)計(jì)一個(gè)簡(jiǎn)單的計(jì)算器程序,要求根據(jù)用戶從鍵盤(pán)輸入的表達(dá)式:操作數(shù)1 運(yùn)算符op 操作數(shù)2計(jì)算表達(dá)式的值,指定的算術(shù)運(yùn)算符為加(+)、減(-)、乘(*)、除(/)。 static void Main(string args) Console.WriteLine(請(qǐng)輸入要計(jì)算的

27、表達(dá)式,格式為操作數(shù)1 操作符 操作數(shù)2,如1+2); string input = Console.ReadLine(); stringtemp=input.Split( ); double result = Compute(double.Parse(temp0), double.Parse(temp2), temp10); Console.WriteLine(0=1, input, result); static double Compute(double numOne, double numTwo, char oper) double result = 0; switch (oper)

28、case+: result = numOne + numTwo; break; case-: result = numOne - numTwo; break; case*: result = numOne * numTwo; break; case/: result = numOne / numTwo; break; return result; b) 如果要求連續(xù)做多次算術(shù)運(yùn)算,每次運(yùn)算結(jié)束后,程序都給出提示:Do you want to continue(Y/N or y/n)?用戶輸入Y或y時(shí),程序繼續(xù)進(jìn)行其他算術(shù)運(yùn)算;否則程序退出運(yùn)行狀態(tài)。那么,程序如何修改?代碼: static vo

29、id Main(string args) string goOn = Y; while (goOn = Y) Console.WriteLine(請(qǐng)輸入要計(jì)算的表達(dá)式,格式為操作數(shù)1 操作符 操作數(shù)2,如1+2); string input = Console.ReadLine(); string temp = input.Split( ); double result = Compute(double.Parse(temp0), double.Parse(temp2), temp10); Console.WriteLine(0=1, input, result); Console.Write

30、Line(要繼續(xù)嗎?繼續(xù)按(N/Y),其他鍵退出); goOn = Console.ReadLine().ToUpper(); 21、 猜數(shù)游戲在這個(gè)實(shí)驗(yàn)中,我們將嘗試編寫(xiě)一個(gè)猜數(shù)游戲程序,這個(gè)程序看上去有些難度,但是如果按下列要求循序漸進(jìn)地編程實(shí)現(xiàn),會(huì)發(fā)現(xiàn)其實(shí)這個(gè)程序是很容易實(shí)現(xiàn)的。那么,現(xiàn)在就開(kāi)始吧,先編寫(xiě)第1個(gè)程序,然后試著在第1個(gè)程序的基礎(chǔ)上編寫(xiě)第2個(gè)程序,a) 程序1 編程先由計(jì)算機(jī)“想”一個(gè)1100之間的數(shù)請(qǐng)人猜,如果人猜對(duì)了,則計(jì)算機(jī)給出提示“Right!”,否則提示“Wrong!”,并告訴人所猜的數(shù)是大(Too high)還是?。═oo low),然后結(jié)束游戲。要求每次運(yùn)行程序時(shí)機(jī)器所“想”的數(shù)不能都一樣。 b) 程序2編程先由計(jì)算機(jī)“想”一個(gè)1100之間的數(shù)請(qǐng)人猜,如果人猜對(duì)了,則結(jié)束游戲,并在屏幕上輸出人猜了多少次才猜對(duì)此數(shù),以此來(lái)反映猜數(shù)者“猜”的水平;否則計(jì)算機(jī)給出提示,告訴人所猜的數(shù)是太大還是太小,直到人猜對(duì)為止。 c) 程序3 編程先由計(jì)算機(jī)“想”一個(gè)1100之間的數(shù)請(qǐng)人猜,如果人猜對(duì)了,則結(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)論