




已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
西南交通大學(xué) 程序設(shè)計綜合實(shí)驗(yàn)(課程代碼0474002)實(shí)驗(yàn)地點(diǎn): X實(shí)驗(yàn)學(xué)期: 第x學(xué)期學(xué)生班級: 學(xué)生學(xué)號: 學(xué)生姓名: 任課教師:信息科學(xué)與技術(shù)學(xué)院2013年3月 17實(shí)驗(yàn)一: ATM機(jī)用戶操作界面及業(yè)務(wù)邏輯編寫l 實(shí)驗(yàn)?zāi)康募皟?nèi)容根據(jù)ATM的工作流程編寫用戶界面,掌握文本用戶菜單的編寫方法。根據(jù)ATM的工作流程編寫其業(yè)務(wù)邏輯,掌握搭建一個完整應(yīng)用系統(tǒng)的方法及軟件編程思想。l 實(shí)驗(yàn)要求(1)除提示用戶輸入的數(shù)字外,界面上不能響應(yīng)、出現(xiàn)任何其它用戶輸入; (2)每個菜單界面獨(dú)立顯示,不要出現(xiàn)多組菜單重疊顯示的現(xiàn)象;務(wù)邏輯可以多次執(zhí)行,直到用戶選擇退出業(yè)務(wù); (3)用戶選擇一種語言后,進(jìn)入主業(yè)務(wù)界面。下面以以中文界面為例介紹其它業(yè)務(wù)。l 實(shí)驗(yàn)步驟及核心代碼 反復(fù)執(zhí)行,知道用戶選擇退出。switch(f)case 1:denghao();printf( 此賬戶有¥%.2f元n,x);printf(請按任意鍵繼續(xù)n);denghao();getch();break;case 2:denghao();printf( 輸入您要存入的數(shù)目:¥);scanf(%f,&y);printf(n按任意鍵繼續(xù)n);denghao();x=x+y;getch();break;case 3:denghao();printf( 輸入您要取錢的數(shù)目:¥);scanf(%f,&z); while(zx)denghao();printf(n 余額不足,按任意鍵后重新輸入!n);denghao();getch();system(cls);printf( 輸入您要取錢的數(shù)目:¥);scanf(%f,&z);if(z=x)printf(n按任意鍵繼續(xù)n);x=x-z;denghao();getch();break;if(f=4)system(cls);break;實(shí)驗(yàn)二:機(jī)制轉(zhuǎn)換器l 實(shí)驗(yàn)?zāi)康募皟?nèi)容寫一個“計算器”程序,實(shí)現(xiàn)十進(jìn)制、二進(jìn)制、十六進(jìn)制的相互轉(zhuǎn)換。l 實(shí)驗(yàn)要求(1) 轉(zhuǎn)換要求包括整數(shù)和小數(shù);(2) 提供清晰、友好的用戶界面;(3) 各種轉(zhuǎn)換可以重復(fù)多次執(zhí)行,知道用戶選擇“退出”按鈕。l 實(shí)驗(yàn)步驟及核心代碼 while(1)bool flag=true;system(cls);printf(input a 十進(jìn)制數(shù)字:n);char shit80;gets(shit);sprintf(shit,%lf,cheat);n=strlen(shit);for(i=0;in;i+)if(shiti9)&shiti!=.) flag=false;printf(Input error!n);break;int m=-1;for(i=0;i=1)printf(Input error!);flag=false;break;if ( flag = true )break; shier(x);system(cls);break;case 2:system(cls);printf(input a 十進(jìn)制數(shù)字:n);scanf(%lf,&x);shishiliu(x);system(cls);break;case 3:system(cls);printf(input a 二進(jìn)制數(shù)字:n);scanf(%s,ch);printf(得到十進(jìn)制為:n);printf( ); printf(%.64gn,ershi(ch); getch(); system(cls); break; case 4:system(cls);printf(input a 二進(jìn)制數(shù)字:n);scanf(%s,ch);ershiliu(ch);system(cls);break;case 5:system(cls);printf(input a 十六進(jìn)制數(shù)字:n);scanf(%s,ch);printf(得到十進(jìn)制為:n);printf( ); printf(%.64gn,shiliushi(ch);printf(n); getch(); system(cls);break;case 6:system(cls);printf(input a 十六進(jìn)制數(shù)字:n);scanf(%s,ch);shiliuer(ch);system(cls);break;case 7:system(cls); printf( n);bExit=1; break;default:system(cls); printf(Input error!n); getch(); system(cls); break; 實(shí)驗(yàn)三:隨機(jī)數(shù)生成及抽獎l 實(shí)驗(yàn)?zāi)康募皟?nèi)容用均勻分布隨機(jī)數(shù)生成隨機(jī)數(shù)。根據(jù)隨機(jī)數(shù)編寫一個抽獎程序。l 實(shí)驗(yàn)要求(1) 據(jù)用戶的輸入,控制隨機(jī)數(shù)生成的數(shù)目,隨機(jī)數(shù)用動態(tài)數(shù)組保存;(2) 用戶的輸入,控制隨機(jī)數(shù)的范圍:比如能夠生成一組【a,b】范圍內(nèi)的隨機(jī)數(shù)。l 實(shí)驗(yàn)步驟及核心代碼printf(Input the total number of the people:);scanf(%d,&n);printf(=n);printf(Information of all:n);srand(int)time(0);for(i=1;i=n;i+)ai=rand()%100;for(i=1;i=n;i+)printf(%d: p%d, his number is %dn,i,i-1,ai);printf(nPress any key to draw lottry.nnn);k=rand()%100;m=1;for(i=1;i=n;i+)if(ai=k)printf(The winner is: p%d, his number is %dn,i-1,k);printf(Ihe valid lottry number is:%dn,k);m=0;while(m=1)printf(Ihe invalid lottry number is:%dn,k);k=rand()%100;for(i=1;i=n;i+)if(ai=k)printf(The winner is: p%d, his number is %dn,i-1,k);printf(Ihe valid lottry number is:%dn,k);m=0;實(shí)驗(yàn)四:插入排序和快速排序l 實(shí)驗(yàn)?zāi)康募皟?nèi)容生成一組隨機(jī)整,對該組數(shù)據(jù)進(jìn)行排序,采用插入排序法。生成一組隨機(jī)整,對該組數(shù)據(jù)進(jìn)行排序,采用快速排序法。l 實(shí)驗(yàn)要求(1) 數(shù)組的長度由用戶輸入;(2) 隨機(jī)數(shù)范圍在【100,1000】范圍內(nèi);(3) 采用直接插入和普通快速排序法;(4) 根據(jù)用戶要求,可以實(shí)現(xiàn)增序、降序兩種排序。l 實(shí)驗(yàn)步驟及核心代碼插入升序:void fun1(int a,int n)int i,j,x;for(j=0;j=0&aix)ai+1=ai;i-;ai+1=x;for(j=0;jn;j+)printf(%d ,aj);printf(n);插入降序:void fun2(int a,int n)int i,j,x;for(j=0;j=0&aix)ai+1=ai;i-;ai+1=x;for(j=0;jn;j+)printf(%d ,aj);printf(n);快速升序:void fun3(int a,int n)int i,j,p,x,t; i=0; j=n+1; x=ai;while(1)while(i=n&a+i=0&a-jx);if(i=j) break;t=ai;ai=aj;aj=t;for(p=i;ap=x & p=n;p+); p-;a0=ap;ap=x;for(j=0;jn;j+)printf(%d ,ai);printf(n);快速將序:void fun4(int a,int n)int i,j,p,x,t; i=0; j=n+1; x=ai;while(1)while(ix);while(j=0&a-j=j) break;t=ai;ai=aj;aj=t;for(p=i;ap=x & p=n;p+); p-;a0=ap;ap=x;for(j=0;jnext; int i; printf(=n); printf(所有學(xué)生信息:n); for(i=1;p!=NULL;i+) printf(%d:%s %s %fn,i,p-ID,p-name,p-score); p=p-next; getch(); void PrintCnt() /打印總?cè)藬?shù) system(cls); printf(=n); printf(學(xué)生總?cè)藬?shù):%dn,n); printf(=n); getch(); void Add(list *h) /添加 system(cls); list *p,*p1=h,*p2=h;int k=1; p2=p2-next; printf(=n); printf(輸入學(xué)生信息:n); p=(list *)malloc(sizeof(list); printf(學(xué)號:); scanf(%s,p-ID);while(strlen(p-ID)!=4) printf(輸入非法,學(xué)號必須是四位數(shù),請重新輸入!n); printf(學(xué)號:); scanf(%s,p-ID);printf(姓名:);scanf(%s,p-name);printf(分?jǐn)?shù):);scanf(%s,&p-score);printf(n); while(p1-next!=NULL) if(atol(p2-ID)atol(p-ID) p1-next=p; p-next=p2; k=0; break; p1=p2;p2=p2-next; if(k) p1-next=p;p-next=NULL; n+;void Search(list *h) /查找 list *p; char in_ID4; int k=1; while(k) p=h; system(cls); printf(=n); printf(請輸入要查找學(xué)生的學(xué)號:n); printf(學(xué)號:); scanf(%s,&in_ID); for(;p!=NULL;) if(strcmp(p-ID,in_ID)=0) printf(學(xué)號為%s的學(xué)生信息:姓名%s , 分?jǐn)?shù) %f n,in_ID,p-name,p-score); k=0;break; p=p-next; if(k) printf(找不到學(xué)號為%s的學(xué)生,請重新輸入!n,in_ID); getch(); getch(); void Edit(list *h) /編輯 list *p; char in_ID4,i; int k=1; while(k) p=h; system(cls);printf(=n); printf(請輸入要查找學(xué)生的學(xué)號:n); printf(學(xué)號:); scanf(%s,in_ID); for(;p!=NULL;) if(strcmp(p-ID,in_ID)=0) printf(學(xué)號為%s的學(xué)生信息:姓名 %s , 分?jǐn)?shù) %fn,in_ID,p-name,p-score); k=0; break; p=p-next; if(k) printf(找不到學(xué)號為%s的學(xué)生,請重新輸入!n,in_ID); getch(); printf(請選擇修改項(xiàng)目:n);printf(1: 姓名n); printf(2: 分?jǐn)?shù)n); i=getch(); if(i=1) printf(請輸入姓名:); scanf(%s,p-name); else printf(請輸入分?jǐn)?shù):); scanf(%f,&p-score);getch(); void Delete(list *h) /刪除 char in_ID4; list *p=h,*p1; int k=1; while(k) p1=p=h; system(cls);PrintAll(h); printf(=n); printf(輸入要刪除學(xué)生的學(xué)號:(如果刪除所有學(xué)生請輸入0000)n); printf(學(xué)號:); scanf(%s,in_ID);if(strcmp(in_ID,0000)=0) h-next=NULL;return; for(;p!=NULL;) if(strcmp(p-ID,in_ID)=0) printf(學(xué)號為%s的學(xué)生信息:姓名 %s ,分?jǐn)?shù) %f n,in_ID,p-name,p-score); k=0;break; p1=p;p=p-next; if(k) printf(找不到學(xué)號為%s的學(xué)生,請重新輸入!n,in_ID); getch(); p1-next=p-next;n-; 實(shí)驗(yàn)七:文本文件和二進(jìn)制文件格式的保存、讀取l 實(shí)驗(yàn)?zāi)康募皟?nèi)容采用文本文件進(jìn)行數(shù)據(jù)的存儲和讀取。采用二進(jìn)制文件進(jìn)行數(shù)據(jù)的存儲和讀取。l 實(shí)驗(yàn)要求(1) 用文本(字符)文件格式進(jìn)行數(shù)據(jù)的保存和讀??;(2) 文件的存儲路徑,提示用戶輸入;(3) 存盤成功或者失敗,輸出提示信息;(4) 數(shù)據(jù)讀入后能夠修改、保存。(5) 修改存盤及數(shù)據(jù)存儲函數(shù),添加用二進(jìn)制文件實(shí)現(xiàn)數(shù)據(jù)的保存與讀取功能;l 實(shí)驗(yàn)步驟及核心代碼void save1(list *h) /保存文件 FILE *fp; list *p=h-next; char name20; printf(輸入文件名:n); scanf(%s,name); if(fp=fopen(name,w)=NULL) printf(存盤失??!n); return; else printf(數(shù)據(jù)已經(jīng)成功保存到%sn,name); while(p != NULL) fprintf(fp, %s %s %.2fn, p-ID, p-name, p-score); p = p-next; fclose(fp); getch(); void read1(list *h) /讀取文件 FILE *fp; list *p,*p1=h; char ch,name20; printf(輸入文件名:n); scanf(%s,name); if(fp=fopen(name,r)=NULL) printf(不能打開文件!n); return; while(1) if(feof(fp) break; p=(list *)malloc(sizeof(list); fscanf(fp,%s%s%fn,p-ID,p-name,&p-score); printf(%s %s %2fn,p-ID,p-name,p-score); p1-next=p; while(1) if(feof(fp) break; p=(list *)malloc(sizeof(list); fscanf(fp,%s%s%fn,p-ID,p-name,&p-score); printf(%s %s %2fn,p-ID,p-name,p-score); p1-next=p; p-next
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 全面掌握中級經(jīng)濟(jì)師考試知識點(diǎn)的技巧與試題及答案
- 2024水利水電工程提升建議試題及答案
- 工程項(xiàng)目的可行性研究設(shè)定試題及答案
- 工程管理常見錯誤試題及答案分析
- 2025年工程項(xiàng)目管理組織治理試題及答案
- 水電工程項(xiàng)目運(yùn)作試題及答案
- 工程經(jīng)濟(jì)中的綜合風(fēng)險分析方法試題及答案
- 多元化水利工程考試試題及答案攻略
- 公共關(guān)系信息流通的影響因素試題及答案
- 2025涉外教育專家聘用合同范本
- 《阻燃材料與技術(shù)》課件 顏龍 第3、4講 阻燃基本理論、阻燃劑性能與應(yīng)用
- 高三第二輪復(fù)習(xí)之文言翻譯(李麗君)省公開課獲獎?wù)n件市賽課比賽一等獎?wù)n件
- 服務(wù)禮儀培訓(xùn)課件
- 2024年江蘇省鹽城市中考語文真題
- 教輔資料進(jìn)校園審批制度
- 九年級你準(zhǔn)備好了嗎崔喜利公開課獲獎?wù)n件百校聯(lián)賽一等獎?wù)n件
- 腸癰護(hù)理常規(guī)
- 外研版小升初必背詞匯
- 咪咕在線測評題
- 2024年全國《勞動教育》基礎(chǔ)知識考試題庫與答案
- 專題13 統(tǒng)計與概率-【好題匯編】五年(2020-2024)高考數(shù)學(xué)真題分類匯編(含答案解析)
評論
0/150
提交評論