版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
聯(lián)通手機充值系統(tǒng)任務1:主菜單實現(xiàn)任務2:登陸驗證任務3:查詢、充值功能實現(xiàn)項目二聯(lián)通手機充值項目實現(xiàn)了聯(lián)通手機余額查詢、余額充值功能,模擬了聯(lián)通用戶客戶端的查詢、充值操作。C#作為一門面向?qū)ο蟪绦蛟O計語言,具有自己的語句特點,項目由語言本身的程序結(jié)構(gòu)組成,程序結(jié)構(gòu)主要包括順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。通過項目的實現(xiàn),有助于理解變量、常量、表達式、數(shù)組、選擇結(jié)構(gòu)程序設計、循環(huán)結(jié)構(gòu)程序設計、方法等C#程序設計語法基礎。項目引入掌握常量、變量的定義及使用掌握常用運算符的使用掌握選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)程序設計掌握數(shù)組的定義及使用掌握方法的定義及使用學習目標聯(lián)通手機充值項目模擬聯(lián)通營業(yè)大廳客戶端的充值、查詢功能。項目首先要求輸入用戶名及密碼,如圖所示:項目描述系統(tǒng)對信息進行驗證,驗證不通過,則要求再次輸入,如果輸入錯誤次數(shù)達到三次,系統(tǒng)則自動退出,如圖所示:驗證通過則顯示主菜單,如圖所示:項目描述此時等待用戶選擇菜單,如果選擇菜單不存在,則顯示錯誤信息,系統(tǒng)退出,如圖所示:如果選擇菜單1,則進入查詢功能,要求輸入查詢的手機號,如果手機號不是聯(lián)通手機號碼或手機號不在初始化數(shù)據(jù)中,則顯示錯誤信息,系統(tǒng)退出,如圖所示:項目描述如果手機號有效,則顯示當前手機號的余額,顯示完后等待用戶再次選擇菜單:如圖所示:如果選擇菜單2,則進入充值功能,要求輸入充值的手機號,如果手機號不是聯(lián)通手機號碼或手機號不在初始化數(shù)據(jù)中,則顯示錯誤信息,系統(tǒng)退出,如圖所示:項目描述如果手機號有效,則要求輸入充值的金額,如果輸入金額數(shù)字無效,則顯示錯誤信息,系統(tǒng)退出,如圖所示:如果金額有效,則將輸入的金額累加至當前手機號現(xiàn)有余額,顯示充值成功信息,顯示完后等待用戶再次選擇菜單:如圖所示:項目描述如果選擇菜單3,則系統(tǒng)正常退出。如圖所示:任務1:主菜單實現(xiàn)任務2:登陸驗證任務3:查詢、充值功能實現(xiàn)工作任務任務描述
主菜單顯示,當用戶選擇菜單后,執(zhí)行菜單對應代碼塊,如果輸入菜單不存在,則顯示錯誤提示信息。任務1主菜單實現(xiàn)1.C#中的常量與變量
程序設計中的數(shù)據(jù)必須存儲在計算機的內(nèi)存單元,不同的數(shù)據(jù)存儲在不同的位置,為保證不同數(shù)據(jù)的正確存、取,程序設計中為它們定義不同的名稱,常量與變量對應這些名稱,因此在程序設計中就必須定義不同的常量與變量來存儲數(shù)據(jù)。常量和變量根據(jù)數(shù)據(jù)的使用場合對應不同的數(shù)據(jù)類型,每種數(shù)據(jù)類型的占據(jù)的內(nèi)存單元大小和數(shù)據(jù)范圍各不相同。C#預定義數(shù)據(jù)類型如表所示:任務1主菜單實現(xiàn)知識引入數(shù)據(jù)類型標識符說明默認值int32位有符號整數(shù)0float單精度浮點數(shù)0.0Fdouble雙精度浮點數(shù)0.0D、0.0decimal高精度浮點數(shù)0.0Mbyte8位無符號整數(shù)0short16位有符號整數(shù)0long64位有符號整數(shù)0Lbool布爾類型falsechar字符類型‘\0’string字符串類型null1.C#中的常量與變量變量的定義類型標識符變量名;例:inti;變量的賦值例:stringstr=”admin”;charflag=’A’;intn;n=100;說明:“=”在C#中表示賦值,“==”表示等于。常量的定義與賦值例:constdoublePI=3.14;變量的輸入stringstr=Console.ReadLine();inti=int.Parse(Console.ReadLine());任務1主菜單實現(xiàn)知識引入2.C#中的表達式算術表達式算術運算符包括:+-*/%++--~例:inta=120;a=b+20;intc=100/5;c++;任務1主菜單實現(xiàn)知識引入2.C#中的表達式任務1主菜單實現(xiàn)知識引入【例2-1】輸入一個三位數(shù),逆序輸出該數(shù),例:輸入123輸出321。classDemo2_1{staticvoidMain(string[]args){inti,a,b,c;Console.WriteLine("請輸入一個三位數(shù):");i=int.Parse(Console.ReadLine());a=i/100;b=i/10%10;c=i%10;Console.WriteLine("逆序輸出為:"+c+b+a);}}2.C#中的表達式任務1主菜單實現(xiàn)知識引入關系表達式關系運算符包括:><>=<===!=例:a>=120;b==c;邏輯表達式邏輯運算符:&&||!例:a>b&&b>c!(a>100)賦值表達式賦值運算符:=+=-+*=/=%=例:a+=20;b*=3;條件運算表達式條件運算符:?:例:inta=100,b=80,c;c=a>b?a:b;3.選擇結(jié)構(gòu)程序設計任務1主菜單實現(xiàn)知識引入
在程序設計過程中,如果需要對某個條件進行判斷,在滿足條件的情況下才執(zhí)行特定操作,不滿足條件則不執(zhí)行特定操作或執(zhí)行其它操作,則需要使用選擇結(jié)構(gòu)進行程序設計。if語句格式:if(條件表達式)
{代碼塊}3.選擇結(jié)構(gòu)程序設計任務1主菜單實現(xiàn)知識引入【例2-2】輸入三個整數(shù),從大到小輸出。classDemo2_2{staticvoidMain(string[]args){inta,b,c,t;Console.WriteLine("請輸入三個整數(shù):");a=int.Parse(Console.ReadLine());b=int.Parse(Console.ReadLine());c=int.Parse(Console.ReadLine());if(a<b){t=a;a=b;b=t;}if(a<c){t=a;a=c;c=t;}if(b<c){t=b;b=c;c=t;}Console.WriteLine("從大到小輸出為:");Console.WriteLine(a+","+b+","+c);}}3.選擇結(jié)構(gòu)程序設計任務1主菜單實現(xiàn)知識引入if…else語句格式一:if(條件表達式)
{代碼塊}else
{代碼塊}格式二:if(條件表達式)
{代碼塊}elseif(條件表達式){代碼塊}elseif(條件表達式){代碼塊}
……
else{代碼塊}switch語句格式:switch(常量){case值1:
語句塊break;case值2:
語句塊break;case值3:
語句塊break;……defalult:語句塊break;}1.方法一:用if語句實現(xiàn)主菜單的選擇任務1
主菜單實現(xiàn)任務實現(xiàn)【例2-3】classDemo2_3{staticvoidMain(string[]args){Console.WriteLine("聯(lián)通手機充值系統(tǒng)");Console.WriteLine("****************************");Console.WriteLine("1.------查詢");Console.WriteLine("2.------充值");Console.WriteLine("3.------退出");Console.WriteLine("****************************");Console.WriteLine("請輸入您的選擇:");inti;i=int.Parse(Console.ReadLine());if(i==1){Console.WriteLine("您選擇的是:1.--查詢");}elseif(i==2){Console.WriteLine("您選擇的是:2.--充值");}else
if(i==3){Console.WriteLine("您選擇的是:3.--退出");}else{Console.WriteLine("您輸入的菜單不存在!謝謝使用!再見!"); }}}2.方法二:用switch語句實現(xiàn)主菜單的選擇任務1
主菜單實現(xiàn)任務實現(xiàn)【例2-4】classDemo2_4{staticvoidMain(string[]args){Console.WriteLine("聯(lián)通手機充值系統(tǒng)");Console.WriteLine("****************************");Console.WriteLine("1.------查詢");Console.WriteLine("2.------充值");Console.WriteLine("3.------退出");Console.WriteLine("****************************");Console.WriteLine("請輸入您的選擇:");inti;i=int.Parse(Console.ReadLine());switch(i){case1:Console.WriteLine("您選擇的是:1.--查詢");break;case2:Console.WriteLine("您選擇的是:2.--充值");break;case3:Console.WriteLine("您選擇的是:3.--退出");break;default:Console.WriteLine("您輸入的菜單不存在!謝謝使用!再見!");break;}}}常量和變量必須定義后才能使用,不同的數(shù)據(jù)類型對應不同大小的存儲單元。不同的數(shù)據(jù)類型之間的賦值要進行類型轉(zhuǎn)換。選擇結(jié)構(gòu)程序設計在執(zhí)行過程中某一時刻只會執(zhí)行其中的一個分支。任務1
主菜單實現(xiàn)任務小結(jié)任務描述
進入系統(tǒng)后要求輸入用戶名及密碼,用戶名為“admin”和密碼為“123456”,如果用戶名或密碼輸入錯誤,則輸出錯誤提示信息并累計錯誤次數(shù),如果錯誤次數(shù)達到三次,系統(tǒng)提示“用戶名或密碼輸入錯誤已達三次!系統(tǒng)將自動退出!”,系統(tǒng)自動退出,如果用戶名及密碼輸入正確,則顯示“歡迎進入聯(lián)通手機充值系統(tǒng)”。任務2登陸驗證1.循環(huán)結(jié)構(gòu)程序設計在程序設計過程中,如果在滿足某個條件的情況下,需要重復執(zhí)行特定操作多次,則需要用到循環(huán)結(jié)構(gòu)進行程序設計,因此循環(huán)結(jié)構(gòu)又稱為重復結(jié)構(gòu)。while語句格式:while(條件表達式){代碼塊}任務2
登陸驗證知識引入1.循環(huán)結(jié)構(gòu)程序設計任務2
登陸驗證知識引入【例2-5】求1+2+3+…..100classDemo2_5{staticvoidMain(string[]args){intsum,i;sum=0;i=1;while(i<=100){sum+=i;i++;}Console.WriteLine("1+2+3+...+100="+sum);}}1.循環(huán)結(jié)構(gòu)程序設計任務2
登陸驗證知識引入do…while語句格式:do{代碼塊}while(條件表達式);注意:do…while語句中代碼塊至少執(zhí)行一次,而while語句中代碼塊可能一次也不執(zhí)行。for語句格式:for(表達式1:表達式2:表達式3)代碼塊}1.循環(huán)結(jié)構(gòu)程序設計任務2
登陸驗證知識引入【例2-6】求1*2*3*…*10classDemo2_6{staticvoidMain(string[]args){intp=1,i;for(i=1;i<=10;i++){p*=i;}Console.WriteLine("1*2*3*...*10="+p);}}【例2-7】classDemo2_7{staticvoidMain(string[]args){inti=1;stringuserName,pwd;Console.WriteLine("歡迎進入聯(lián)通手機充值系統(tǒng)");Console.WriteLine("請輸入用戶名:");userName=Console.ReadLine();Console.WriteLine("請輸入密碼:");pwd=Console.ReadLine();任務2
登陸驗證任務實現(xiàn)while(i<3){if(userName.Equals("admin")&&pwd.Equals("123456")){Console.WriteLine("歡迎進入聯(lián)通手機充值系統(tǒng)");break;}else{Console.WriteLine("您輸入的用戶名或密碼錯誤,請重新輸入:");Console.WriteLine("請輸入用戶名:");userName=Console.ReadLine();Console.WriteLine("請輸入密碼:");pwd=Console.ReadLine();i++;}if(i>2){Console.WriteLine("用戶名或密碼輸入錯誤已達三次!系統(tǒng)將自動退出!");}}}}循環(huán)結(jié)構(gòu)程序設計實現(xiàn)程序在滿足一定條件下需要重復執(zhí)行一段代碼塊的操作。不同循環(huán)結(jié)構(gòu)語句之間可以相互轉(zhuǎn)換。break語句可以提前終止整個循環(huán),continue語句可以提前終止本次循環(huán)。任務小結(jié)任務2
登陸驗證用戶名和密碼驗證通過后,系統(tǒng)顯示主菜單,如果用戶選擇查詢菜單,則要求用戶輸入要查詢的手機號,系統(tǒng)對手機號進行驗證,驗證不通過,提示錯誤信息,驗證通過,顯示當前手機號對應余額,如果用戶選擇充值菜單,則要求用戶輸入要充值的手機號,系統(tǒng)對手機號進行驗證,驗證不通過,提示錯誤信息,驗證通過,要求輸入充值金額,系統(tǒng)對金額數(shù)據(jù)進行判斷,如果數(shù)據(jù)無效,提示錯誤信息,如果數(shù)據(jù)有效,則將輸入的充值金額累加到當前手機用戶余額中。任務描述任務3查詢、充值功能實現(xiàn)數(shù)組在程序設計中,對于同一類型相關聯(lián)的一組數(shù)如果分別為每一個數(shù)定義一個變量名,既不利于程序的易讀性,也不利于表達一組數(shù)據(jù)之間的相互關系,這時,可以使用數(shù)組來定義這些數(shù)據(jù)。數(shù)組的定義:數(shù)據(jù)類型[]數(shù)組名例:
int[]a;int[]arr=newint[5];知識引入任務3查詢、充值功能實現(xiàn)數(shù)組【例2-8】輸入5名評委給選手的評分,去掉一個最高分,去掉一個最低分,其它評分求平均分作為選手的最后得分,輸出選手的最終成績。知識引入任務3查詢、充值功能實現(xiàn)操作演示字符串函數(shù)ToLower():得到字符串的小寫形。ToUpper():得到字符串的大寫形。Trim():去掉字符串兩邊的空白字。Substring(index,length):獲取從字符串index位置開始,長度為length的子字符。IndexOf(charvalue):獲取字符串第一次出現(xiàn)value字符的位置。Equals():判斷兩個字符串是否相同。如果用“==”判斷兩個字符串是否相同,則不區(qū)別大小寫。知識引入任務3查詢、充值功能實現(xiàn)方法在程序設計過程中,如果相同的一系列語句或具有選定功能的一段代碼塊在整個項目中需要重復使用多次,為了提高程序的易讀性及代碼塊的復用性,應該將該代碼塊定義為一個方法,當代碼塊定義為方法后,可以達到定義一次,調(diào)用多次的效果,而調(diào)用方法只需要一條簡單的語句。方法的定義:[修飾符]方法的返回值
方法名([方法的參數(shù)列表]){
代碼塊}方法的調(diào)用:方法名([實參值])知識引入任務3查詢、充值功能實現(xiàn)方法知識引入任務3查詢、充值功能實現(xiàn)【例2-9】定義一個方法求兩個數(shù)的較大值,輸入兩個數(shù),調(diào)用該方法輸出較大值。classDemo2_9{publicstaticintadd(inta,intb){return(a>b?a:b);}staticvoidMain(string[]args){inta,b;Console.WriteLine("請輸入兩個數(shù):");a=int.Parse(Console.ReadLine());b=int.Parse(Console.ReadLine());Console.WriteLine("較大值為:"+add(a,b));}}1.定義初始化數(shù)據(jù)方法靜態(tài)方法,返回值為數(shù)組,在方法內(nèi)部使用字符串數(shù)組模擬已有數(shù)據(jù),元素存儲形式為字符串“手機號,余額”。在程序設計中使用Substring()方法分別獲取手機號和余額。publicstaticstring[]init(){
……
}2.定義手機號有效性驗證方法靜態(tài)方法,返回值為整數(shù),如果手機號碼不是聯(lián)通手機號碼或手機號碼不在初始化數(shù)據(jù)中,則返回
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版現(xiàn)代化辦公室租賃場地合同樣本3篇
- 二零二五版精制粉原料供應鏈風險管理合同3篇
- 二零二五版地震監(jiān)測基站場地租賃與應急救援合同3篇
- 2025年度醫(yī)療健康產(chǎn)業(yè)園區(qū)承包經(jīng)營合同范本3篇
- 二零二五版溫泉度假酒店SPA服務人員勞動合同3篇
- 二零二五年度離婚經(jīng)濟補償協(xié)議范本及調(diào)解服務合同3篇
- 二零二五年度能源項目合作開發(fā)PPP模式合同范本3篇
- 物業(yè)管理公司2025年度招投標代理合同3篇
- 二零二五年度車位租賃合同:住宅小區(qū)車位使用權協(xié)議2篇
- 2025廠房買賣合同模板:高端裝備制造廠房交易3篇
- 貨運企業(yè)2025年度安全檢查計劃
- 以發(fā)展為導向共創(chuàng)教育新篇章-2024年期末校長總結(jié)講話稿
- 2025年焊工安全生產(chǎn)操作規(guī)程(2篇)
- 廣東省廣州越秀區(qū)2023-2024學年八年級上學期期末數(shù)學試卷(含答案)
- 臨床經(jīng)鼻高流量濕化氧療患者護理查房
- 2024年貴州省中考數(shù)學真題含解析
- 參考新醫(yī)大-中央財政支持地方高校發(fā)展專項資金建設規(guī)
- 《中醫(yī)內(nèi)科學關格》課件
- 2024年中國PCB板清洗劑市場調(diào)查研究報告
- 《紙管》規(guī)范要求
- 【數(shù)學】2021-2024年新高考數(shù)學真題考點分布匯
評論
0/150
提交評論