程序設(shè)計(jì)語言C實(shí)驗(yàn).ppt
《程序設(shè)計(jì)語言C實(shí)驗(yàn).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《程序設(shè)計(jì)語言C實(shí)驗(yàn).ppt(38頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
程序設(shè)計(jì)語言C實(shí)驗(yàn),金鑫,實(shí)驗(yàn)一C簡單程序設(shè)計(jì),實(shí)驗(yàn)?zāi)康牧私釩程序的基本編輯操作,熟悉編輯界面;掌握在TurboC集成開發(fā)環(huán)境下編輯、編譯、連接和運(yùn)行C程序的方法實(shí)驗(yàn)內(nèi)容使用DOS操作命令查看TC目錄下的文件。學(xué)習(xí)建立個(gè)人的C源程序文件子目錄在TurboC集成開發(fā)環(huán)境下,輸入教材P37例3.1的程序并進(jìn)行編譯和運(yùn)行。觀察C程序的書寫格式,學(xué)會(huì)在用戶屏幕上查看運(yùn)行結(jié)果,熟悉編輯操作,了解基本調(diào)試程序的操作。,實(shí)驗(yàn)二數(shù)據(jù)類型、運(yùn)算符和表達(dá)式,實(shí)驗(yàn)?zāi)康恼莆誄語言的基本數(shù)據(jù)類型:整型、字符型、長整型、單精度、雙精度類型,以及對它們賦值的方法學(xué)會(huì)使用C有關(guān)的運(yùn)算符和表達(dá)式,以及自加和自減運(yùn)算符的使用實(shí)驗(yàn)內(nèi)容編寫一個(gè)程序,分別定義字符型、整型、長整型、單精度、雙精度變量,并給這些變量賦值,輸出這些變量的存儲(chǔ)寬度。運(yùn)行P5例1.1,模仿例1.1編寫P9的習(xí)題3程序。運(yùn)行P6例1.2、P13例2.1、P15的程序、P18頁的程序運(yùn)行課堂中的有關(guān)自加(減)的例題。,實(shí)驗(yàn)三數(shù)據(jù)類型、運(yùn)算符和表達(dá)式,實(shí)驗(yàn)?zāi)康倪M(jìn)一步理解數(shù)據(jù)類型的概念,理解運(yùn)算符的含義;掌握運(yùn)用編程的方法來分析表達(dá)式值的方法;重點(diǎn)分析整型表達(dá)式運(yùn)算結(jié)果、邏輯表達(dá)式運(yùn)算結(jié)果實(shí)驗(yàn)內(nèi)容編程完成第二章的習(xí)題,實(shí)驗(yàn)三數(shù)據(jù)的輸入和輸出,實(shí)驗(yàn)?zāi)康恼莆蛰敵龊瘮?shù)printf、輸入函數(shù)scanf的幾種常用的控制格式的用法掌握字符輸入函數(shù)getchar、輸出函數(shù)putchar的用法實(shí)驗(yàn)內(nèi)容編寫一個(gè)程序,輸入一個(gè)字符,輸出它的前后鄰居編寫一個(gè)程序,求三角形的面積。其中,a、b、c為三角形的三條邊,s=(a+b+c)/2,面積為area=編寫一個(gè)程序,求攝氏溫度。公式:c=5*(f-32)/9,實(shí)驗(yàn)四自己動(dòng)手編寫一個(gè)C程序,實(shí)驗(yàn)?zāi)康睦靡褜W(xué)的知識(shí)編寫一個(gè)解決實(shí)際問題的程序?qū)嶒?yàn)內(nèi)容設(shè)計(jì)一個(gè)程序,輸入正五邊形的邊長的長度a,按公式計(jì)算該五邊形外接圓的半徑。設(shè)計(jì)一程序,輸入空間中兩點(diǎn)的坐標(biāo)x1,y1,z1和x2,y2,z2計(jì)算兩點(diǎn)之間的距離。編寫一個(gè)C程序,輸入一個(gè)3位整數(shù),分別輸出百位數(shù)、十位數(shù)和個(gè)位數(shù)。,,實(shí)驗(yàn)五選擇結(jié)構(gòu)基礎(chǔ),實(shí)驗(yàn)?zāi)康恼莆者x擇控制語句掌握正確使用邏輯運(yùn)算符和邏輯表達(dá)式實(shí)驗(yàn)內(nèi)容編寫程序輸入四個(gè)整數(shù),要求輸出最小的一個(gè)。編寫程序判斷體重。體指數(shù)(t)=體重(w)/身高2(h)其中,t=27時(shí)為肥胖。分別用if…else…if語句和switch語句編寫書P58⑸,實(shí)驗(yàn)六選擇結(jié)構(gòu)的使用,實(shí)驗(yàn)?zāi)康木毩?xí)根據(jù)具體問題,利用選擇控制語句編寫程序?qū)嶒?yàn)內(nèi)容有一人過獨(dú)木橋,到橋中間時(shí)看見前面有狼,后面有虎,底下是深深的河水。編程寫出此人的最后結(jié)局。從鍵盤輸入3個(gè)數(shù),判斷能否構(gòu)成三角形,若能構(gòu)成三角形,計(jì)算以這3個(gè)數(shù)為邊長的三角形面積;否則,輸出相應(yīng)的提示信息。編寫一個(gè)程序,輸入某學(xué)生成績,若成績在85分以上,則輸出“VeryGood”,若成績在60分到85分之間,則輸出“Good”,若成績低于60分,則輸出“Bad”。編寫程序,讀入一個(gè)年份和月份,打印出該月有多少天,實(shí)驗(yàn)七循環(huán)結(jié)構(gòu)的實(shí)現(xiàn),實(shí)驗(yàn)?zāi)康恼莆杖N基本循環(huán)語句注意循環(huán)條件的控制實(shí)驗(yàn)內(nèi)容請分別用while語句和do-while語句編程求的值請分別用while語句和do-while語句編程求12/(1+1)+22/(2+1)+32/(3+1)+…+n2/(n+1)輸入一個(gè)字符串,將其中的空格和數(shù)字刪除后輸出,,實(shí)驗(yàn)八循環(huán)結(jié)構(gòu)應(yīng)用,實(shí)驗(yàn)?zāi)康恼莆赵诔绦蛟O(shè)計(jì)中用循環(huán)的方法編寫程序?qū)崿F(xiàn)各種算法實(shí)驗(yàn)內(nèi)容編寫程序求出滿足不等式1+2+3+…+n<500的最大n值及總和。編程實(shí)現(xiàn)求數(shù)列1/2,3/4,5/8,7/16…的所有大于等于0.000001的數(shù)據(jù)項(xiàng)之和,顯示輸出計(jì)算結(jié)果。編程找出1000以內(nèi)的完數(shù)。所謂完數(shù)是它等于它的因子之和。如:6=1+2+3。,實(shí)驗(yàn)九綜合訓(xùn)練,實(shí)驗(yàn)?zāi)康恼莆沼庙樞蚪Y(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)編寫程序,解決實(shí)際問題掌握程序的調(diào)試方法實(shí)驗(yàn)內(nèi)容求100~200之間的素?cái)?shù)。求20+21+22+…+263。完成P55~58的練習(xí)。,實(shí)驗(yàn)十上機(jī)測試,實(shí)驗(yàn)?zāi)康木C合測驗(yàn)實(shí)驗(yàn)內(nèi)容編寫一個(gè)程序,能顯示兩行文字。已知三角形的兩個(gè)邊長A,B和其夾角а,求三角形的面積S。輸入圓的半徑R和一個(gè)整數(shù)K,K=1時(shí),計(jì)算圓的面積;當(dāng)K=2時(shí),計(jì)算圓的周長;當(dāng)K=3時(shí),既要求面積也要求周長。編程實(shí)現(xiàn)以上功能。編寫程序,求1-3+5-7+9……-99+101的值。,實(shí)驗(yàn)十一一維數(shù)組的使用,實(shí)驗(yàn)?zāi)康恼莆找痪S數(shù)組的定義、賦值和輸入輸出方法;掌握一維數(shù)組的基本用法。實(shí)驗(yàn)內(nèi)容1.用篩法求100以內(nèi)的素?cái)?shù)。2.編寫一個(gè)程序,計(jì)算若干學(xué)生的某門功課的平均成績、標(biāo)準(zhǔn)差,找出最高分和最低分。3.編寫一個(gè)程序,讓計(jì)算機(jī)產(chǎn)生20個(gè)隨機(jī)數(shù),用選擇法排序。4.根據(jù)上題的內(nèi)容1,編一程序在數(shù)組中查找一個(gè)數(shù)。要求:⑴若有該數(shù),則輸出該數(shù),否則輸出找不到的信息;⑵用順序查找實(shí)現(xiàn);⑶用折半查找實(shí)現(xiàn)。,實(shí)驗(yàn)十二一維數(shù)組,實(shí)驗(yàn)內(nèi)容1、根據(jù)實(shí)驗(yàn)11中的內(nèi)容3,編寫一程序刪除指定的一個(gè)數(shù)。2、根據(jù)實(shí)驗(yàn)11中的內(nèi)容3,編寫一程序插入一個(gè)指定的數(shù),插入后,數(shù)組仍然有序。3、完成《C語言復(fù)習(xí)》中第六章的練習(xí)題(選擇、填空),實(shí)驗(yàn)十三二維數(shù)組的使用,實(shí)驗(yàn)?zāi)康恼莆斩S數(shù)組的定義、賦值和輸入輸出的方法。練習(xí)用二維數(shù)組解決實(shí)際問題。實(shí)驗(yàn)內(nèi)容1.找出一個(gè)二維數(shù)組的“鞍點(diǎn)”,即該位置上的元素在該行上最大,在該列上最小。也可能沒有“鞍點(diǎn)”。要求用隨機(jī)函數(shù)生成數(shù)據(jù)。2.使用二維數(shù)組,打印楊輝三角形前10行。3.編寫程序,將一個(gè)55的矩陣中最大的元素放在中心,4個(gè)角分別放4個(gè)最小的元素(按從左到右、從上到下的順序,依次從小到大存放。4.編寫程序,用隨機(jī)函數(shù)產(chǎn)生一個(gè)二維迷宮(用0表示通道,1表示隔墻),實(shí)驗(yàn)十四字符數(shù)組與字符串函數(shù)的使用,實(shí)驗(yàn)?zāi)康恼莆兆址麛?shù)組和字符串函數(shù)的使用實(shí)驗(yàn)內(nèi)容1、編寫一個(gè)程序,將字符數(shù)組s2中的全部字符拷貝到字符數(shù)組s1中。(不能使用strcpy函數(shù)。)2、有一篇文章,共有3行文字,每行有80個(gè)字符。要求分別統(tǒng)計(jì)出其中英文大寫字母、小寫字母、數(shù)字、空格以及其他字符的個(gè)數(shù)。3、有n個(gè)字符串,要求找出其中最大和最小的字符串。,實(shí)驗(yàn)十五編程實(shí)現(xiàn)非數(shù)值信息的處理,實(shí)驗(yàn)?zāi)康倪M(jìn)一步掌握字符數(shù)組的使用;了解非數(shù)值信息的處理;初步了解排序算法。實(shí)驗(yàn)內(nèi)容1、有n個(gè)字符串,要求按字母順序從小到大對其排序。2、編寫一個(gè)程序,解決騎士周游世界問題。在國際象棋中,馬的走步是“L”形(相當(dāng)于中國象棋中的馬走日),如上圖。那么,馬從國際象棋盤(棋盤為8╳8=64格)上的某一點(diǎn)出發(fā),能否跳遍全棋盤,且每個(gè)方格只跳過一次?試打印出馬的路線。,實(shí)驗(yàn)十六排序問題,實(shí)驗(yàn)?zāi)康恼莆者x擇法排序的思想掌握冒泡法排序的思想掌握插入法排序的思想實(shí)驗(yàn)內(nèi)容1.編一程序,對n個(gè)整數(shù)用選擇法排序(從小到大);2.編一程序,對n個(gè)整數(shù)用冒泡法排序(從大到?。?;3.編一程序,輸入若干學(xué)生某門功課的成績,計(jì)算平均分、標(biāo)準(zhǔn)差,并按從高分到低分的順序排列(用插入法排序)。,實(shí)驗(yàn)十六常用算法,實(shí)驗(yàn)?zāi)康恼莆詹檎业某S盟惴ǎ樞虿檎?、折半查找)掌握在?shù)組中刪除一個(gè)元素或插入一個(gè)元素的算法實(shí)驗(yàn)內(nèi)容1、根據(jù)實(shí)驗(yàn)15中的內(nèi)容1,編一程序在數(shù)組中查找一個(gè)數(shù)。要求:⑴若有該數(shù),則輸出該數(shù),否則輸出未找到的信息;⑵用順序查找實(shí)現(xiàn);⑶用折半查找實(shí)現(xiàn)。2、根據(jù)實(shí)驗(yàn)內(nèi)容1,編寫一程序刪除指定的一個(gè)數(shù)。3、根據(jù)實(shí)驗(yàn)內(nèi)容1,編寫一程序插入一個(gè)指定的數(shù),插入后,數(shù)組仍然有序。,實(shí)驗(yàn)十七函數(shù)的定義與調(diào)用,實(shí)驗(yàn)?zāi)康恼莆斩x函數(shù)的方法;掌握函數(shù)的調(diào)用方法;掌握函數(shù)實(shí)參和形參的對應(yīng)關(guān)系;實(shí)驗(yàn)內(nèi)容1、寫一個(gè)判斷素?cái)?shù)的函數(shù)。要求:⑴在主函數(shù)中輸入一個(gè)整數(shù)并輸出是否素?cái)?shù)的信息;⑵用自定義函數(shù)判斷此數(shù)是否素?cái)?shù);⑶測試數(shù)據(jù):17、34、2、1、0、49、39。2、編一個(gè)函數(shù),其功能是:求高于平均分的人數(shù),并作為函數(shù)值返回。要求:⑴學(xué)生的成績放在student數(shù)組中;⑵在主函數(shù)中輸入學(xué)生的成績,用-1結(jié)束成績的輸入;⑶在主函數(shù)中輸出高于平均分的人數(shù);⑷測試數(shù)據(jù):78、34、65、86、54、76、65、48、29、9487、46、88、71、68、60、83、92、57、5169、89、79、39、55、44、21、99、96、703、P103第三題的第三小題。,實(shí)驗(yàn)十八函數(shù)實(shí)參、形參的結(jié)合及遞歸調(diào)用,實(shí)驗(yàn)?zāi)康倪M(jìn)一步掌握函數(shù)的實(shí)參與形參的結(jié)合;掌握函數(shù)的遞歸調(diào)用;實(shí)驗(yàn)內(nèi)容1、用遞歸法求n階勒讓德多項(xiàng)式的值,遞歸公式為:2、運(yùn)行漢諾塔程序3、寫一個(gè)函數(shù),使輸入的一個(gè)字符串反序存放。,實(shí)驗(yàn)十八函數(shù)實(shí)參、形參的結(jié)合及遞歸調(diào)用,實(shí)驗(yàn)內(nèi)容2、編輯調(diào)試下列程序:voidmove(charx,chary){printf(“%c?%c\n”,x,y);}voidHanoi(intn,charone,chartwo,charthree){if(n==1)move(one,three);else{Hanoi(n-1,one,three,two);move(one,three);Hanoi(n-1,two,one,three);}}main(){intm;printf(“inputthenumberofdiskes:”);scanf(“%d”,}測試用例:4,10。,實(shí)驗(yàn)十九模塊化程序設(shè)計(jì)的綜合練習(xí)(上),實(shí)驗(yàn)?zāi)康木C合掌握程序的控制結(jié)構(gòu)和數(shù)組;進(jìn)一步學(xué)習(xí)模塊化程序設(shè)計(jì);實(shí)驗(yàn)內(nèi)容1、有一行原文,請按下面規(guī)律譯成密碼:A→Za→z,B→Yb→y,C→Xc→x,……即第1個(gè)字母變成第26個(gè)字母,第i個(gè)字母變成第(26-i+1)個(gè)字母。非字母字符不變。要求:⑴在主函數(shù)中輸入電文;⑵寫一個(gè)函數(shù)將密碼譯回原文;⑶在主函數(shù)中輸出密碼和原文;⑷測試用例:Iamastudent,youareateather.2、有n位學(xué)生,每個(gè)學(xué)生有m門功課,請編寫程序解決:⑴在主函數(shù)中定義數(shù)組;⑵寫一個(gè)enter函數(shù)輸入學(xué)生的成績;⑶寫一個(gè)sort函數(shù),按總成績對數(shù)組排序;⑷寫一個(gè)print函數(shù)輸出成績表,每行輸出一位學(xué)生的成績。,實(shí)驗(yàn)二十模塊化程序設(shè)計(jì)的綜合練習(xí)(下),實(shí)驗(yàn)?zāi)康倪M(jìn)一步掌握模塊化程序設(shè)計(jì)的思想;階段考核實(shí)驗(yàn)內(nèi)容1、編寫一個(gè)程序,解決以下問題:n個(gè)人圍成一圈,從第一個(gè)人開始順序報(bào)數(shù)1、2、3。凡是報(bào)到“3”的人退出圈子。找出最后留在圈子中的人的原來的序號(hào)。測試用例:15、22、39。2、用遞歸方法求n階勒讓德多項(xiàng)式的值,遞歸公式為:3.打印楊輝三角形,要求:⑴用自定義函數(shù)輸出三角形;⑵輸出行數(shù)由用戶自行決定。,,實(shí)驗(yàn)二十一多文件程序的編輯、編譯及運(yùn)行,實(shí)驗(yàn)?zāi)康恼莆赵赥C下如何編輯、編譯運(yùn)行一個(gè)多文件程序?qū)嶒?yàn)內(nèi)容編寫一段程序,用來實(shí)現(xiàn)10個(gè)學(xué)生成績的輸入、求和、求平均分,分別用三個(gè)函數(shù)來實(shí)現(xiàn)。將三個(gè)函數(shù)分別存為三個(gè)獨(dú)立的程序文件,名稱分別是f1.c、f2.c和f3.c在編譯狀態(tài)下,建立一個(gè)“項(xiàng)目文件”,名稱為f,將以上三個(gè)程序文件放入項(xiàng)目文件中并存盤。編譯執(zhí)行,并得出結(jié)果。,實(shí)驗(yàn)二十二預(yù)處理命令的使用,實(shí)驗(yàn)?zāi)康恼莆疹A(yù)處理命令(重點(diǎn)是宏定義)的使用方式,并用預(yù)處理命令來解決實(shí)際問題實(shí)驗(yàn)內(nèi)容編譯執(zhí)行下列程序,體會(huì)宏定義的用法:#include#defineP2#definePOWER(x)P*x*xmain(){intx=1,y=2;printf(“%d,%d”,POWER(x+y),POWER(y+x));}編寫一段程序,用來求兩個(gè)數(shù)的最小值,其中用來求最小值的部分用宏定義來實(shí)現(xiàn)。編寫完成后編譯執(zhí)行。有以下程序,將其格式輸出部分改寫成宏定義后并添加到format.h頭文件中,編寫完成后編譯執(zhí)行。#definePRprintf#defineNL“\n”#defineF“%36.3f”#defineF1FNL#defineF2FFNL#defineF3FFFNL,main(){floatx,y,z;x=1.2;y=2.3;z=3.4;PR(F1,x);PR(F2,x,y);PR(F3,x,y,z);},實(shí)驗(yàn)二十三指針和指針變量的使用,實(shí)驗(yàn)?zāi)康恼莆罩羔樀母拍?,要求?huì)定義和使用指針變量;了解指向指針的概念及其使用方法;實(shí)驗(yàn)內(nèi)容編制交換整型變量值的函數(shù)swap()。函數(shù)swap()的功能是交換兩個(gè)整型變量的值,函數(shù)swap()設(shè)有兩個(gè)指向整型變量的指針參數(shù),函數(shù)利用指針參數(shù)間接訪問變量。調(diào)用swap()函數(shù)時(shí),兩個(gè)參數(shù)分別是兩個(gè)待交換值得整型變量的地址。編寫程序,用指針來實(shí)現(xiàn)數(shù)組的輸入和輸出。數(shù)組定義如下:a[10]={1,2,3,4,5,6,7,8,9,0}用指針編寫一個(gè)程序,解決以下問題:n個(gè)人圍成一圈,從第一個(gè)人開始順序報(bào)數(shù)1、2、3。凡是報(bào)到“3”的人退出圈子。找出最后留在圈子中的人的原來的序號(hào)。測試用例:15、22、39。,實(shí)驗(yàn)二十三指針和指針變量的使用,輸入10個(gè)整數(shù),將其中最小的數(shù)與第一個(gè)數(shù)對換,把最大的數(shù)與最后一個(gè)數(shù)對換。寫3個(gè)函數(shù):⑴輸入10個(gè)數(shù);⑵對換處理;⑶輸出10個(gè)數(shù)。有n個(gè)整數(shù),使前面各數(shù)順序向后移m個(gè)位置,最后m個(gè)數(shù)變成最前面m個(gè)數(shù)。寫一函數(shù)實(shí)現(xiàn)上面的功能,在主函數(shù)中輸入n個(gè)整數(shù)和輸出調(diào)整后的n個(gè)數(shù)。有一個(gè)班5個(gè)學(xué)生,5門課程。⑴求第一門課的平均成績;⑵找出有2門以上課程不及格的學(xué)生,輸出他們的學(xué)號(hào)和全部課程成績和平均分;⑶找出平均成績在90分以上或全部課程成績在85分以上的學(xué)生。分別編寫3個(gè)函數(shù)實(shí)現(xiàn)以上3個(gè)要求。,實(shí)驗(yàn)二十四用“數(shù)組指針”和“字符串指針”解決實(shí)際問題,實(shí)驗(yàn)?zāi)康恼莆諗?shù)組指針和字符串指針二者的概念和聯(lián)系;學(xué)會(huì)使用字符串的指針的指向字符串的指針變量;學(xué)會(huì)使用數(shù)組的指針和指向數(shù)組的指針變量;學(xué)會(huì)使用指向函數(shù)的指針變量;實(shí)驗(yàn)內(nèi)容編制實(shí)現(xiàn)對整型數(shù)組前n個(gè)成分求和的函數(shù)sun()。編寫一函數(shù),將字符串按照順序的逆序存放,并在主函數(shù)中從鍵盤輸入該字符串(字符串長度不超過30),輸出其逆序結(jié)果。下面的程序是用來完成將一個(gè)33的矩陣進(jìn)行轉(zhuǎn)置。將程序補(bǔ)充完整并調(diào)試通過。main(){inta[3][3],*p,i;printf(“請按行輸入33的矩陣:\n”);for(i=0;i<3;i++)scanf(“%d%d%d”,},趣味小程序,編寫一個(gè)程序,用隨機(jī)數(shù)發(fā)生器生成句子。程序中要使用以下4個(gè)char類型的指針數(shù)組:article、noun、verb、preposition。每個(gè)數(shù)組指向一組單詞。程序按以下順序抽取單詞:article、noun、verb、preposition、article、noun。抽取的單詞放入一個(gè)足夠大的字符型數(shù)組(用于存放句子)中,每抽取一個(gè)單詞,放到前一個(gè)單詞的后面,單詞中間用空格分隔。最后輸出整個(gè)句子。輸出時(shí),第一個(gè)字符要大寫,最后要有句號(hào)。冠詞article指向:“the”,“a”,“one”,“some”,“any”名詞noun指向:“boy”,“girl”,“dog”,“town”,“car”動(dòng)詞verb指向:“drove”,“jumped”,“ran”,“walked”,“skipped”介詞preposition指向:“to”,“from”,“over”,“under”,“on”用上述程序生成20個(gè)句子并調(diào)試運(yùn)行。修改上述程序,使其能夠生成一個(gè)小故事。,趣味小程序,洗牌和發(fā)牌模擬用intdeck[4][13]表示一副牌,其中0~3行分別表示紅心、方塊、梅花和黑桃,0~12列分別表示A、2、…、K;用char*face[13]表示牌面點(diǎn)數(shù),記錄A、2、…、K;用char*suit[4]表示牌面花色,記錄紅心、方塊、梅花和黑桃;洗牌步驟:首先把數(shù)組deck清0;然后,隨機(jī)地從0~3中選擇一行(row),從0~12中選擇一列(column)。把數(shù)1插入到deck[row][column]中,表示這張牌將是從洗好的牌中發(fā)出的第一張牌;繼續(xù)這個(gè)過程,把數(shù)2、3、…、52隨機(jī)地插入到數(shù)組deck中,表示從洗好的牌中發(fā)出的第2、第3、…、第52張牌。在把發(fā)牌序號(hào)插入到數(shù)組deck中的過程中,一張牌被選擇兩次以上是可能的,第二次及以后的選中應(yīng)該忽略,因此第二次及以后選中時(shí),應(yīng)重新隨機(jī)得到row、column本算法效率低下,請重新設(shè)計(jì)算法,提高效率。,實(shí)驗(yàn)二十五結(jié)構(gòu)體數(shù)據(jù)類型的定義和應(yīng)用,實(shí)驗(yàn)?zāi)康恼莆战Y(jié)構(gòu)體的定義方式和使用,并可以地用結(jié)構(gòu)體來處理一些簡單問題;掌握結(jié)構(gòu)體類型變量的定義和使用;掌握結(jié)構(gòu)體類型數(shù)組的概念和應(yīng)用。實(shí)驗(yàn)內(nèi)容從鍵盤輸入10個(gè)人的姓名和年齡并存到結(jié)構(gòu)數(shù)組中,編寫程序從中查找年齡最大和最小的人的姓名和年齡,并輸出。利用結(jié)構(gòu)體來實(shí)現(xiàn)一個(gè)簡單的數(shù)據(jù)庫,該數(shù)據(jù)庫可以完成添加、按序號(hào)查詢、顯示等功能。下面將該程序的主函數(shù)部分給出,要求學(xué)生將給出自定義函數(shù)補(bǔ)充完整,并在機(jī)器上調(diào)試通過。#include#include#includevoidadd(void);/*向數(shù)據(jù)庫中添加記錄*/voidquery(void);/*按指定的序號(hào)查找相應(yīng)的記錄*/voidlistall(void);/*列出數(shù)據(jù)庫中的全部記錄*/voidlist(intn);/*列出給定序號(hào)的記錄*/structemployee{intno;/*序號(hào)*/charname[15];/*姓名*/charphone[12];/*電話號(hào)碼*/intage;};/*年齡*/,實(shí)驗(yàn)二十五結(jié)構(gòu)體數(shù)據(jù)類型的定義和應(yīng)用,實(shí)驗(yàn)內(nèi)容(續(xù))intindex;structemployeerecord[20];main(){charch;system(“cls”);while(1){printf(“\n1.Enternewemployee\n”);printf(“2.Queryemployee\n”);printf(“3.Listall\n”);printf(“4.Quit\n”);printf(“Select:”);ch=getchar();,實(shí)驗(yàn)內(nèi)容(續(xù))switch(ch){case‘1’:add();break;case‘2’:query();break;case‘3’:listall();break;case‘4’:exit(0);default:break;}}}…………,實(shí)驗(yàn)二十六單鏈表的建立和操作,實(shí)驗(yàn)?zāi)康脑谡莆罩羔樅徒Y(jié)構(gòu)體的基礎(chǔ)上學(xué)習(xí)單鏈表的使用,讓學(xué)生初步掌握基本數(shù)據(jù)結(jié)構(gòu)的操作方法;掌握鏈表的概念,初步學(xué)會(huì)對鏈表進(jìn)行操作。實(shí)驗(yàn)內(nèi)容建立一個(gè)包含學(xué)生信息的單鏈表,要求包含三個(gè)學(xué)生,每個(gè)學(xué)生具有學(xué)號(hào)、姓名、成績?nèi)?xiàng)基本信息。在以上單鏈表中再加入一個(gè)學(xué)生。將一個(gè)鏈表按逆序排列,即將鏈頭當(dāng)鏈尾,鏈尾當(dāng)鏈頭。,實(shí)驗(yàn)二十七綜合練習(xí),實(shí)驗(yàn)?zāi)康脑谇懊鎸W(xué)習(xí)的基礎(chǔ)上,要求學(xué)生掌握C的綜合使用;復(fù)習(xí)C語言中最基本的結(jié)構(gòu),如數(shù)組、函數(shù)、指針、結(jié)構(gòu)體等。實(shí)驗(yàn)內(nèi)容編程實(shí)現(xiàn),從終端輸入名字表,然后按字符串從小到大順序排序名字表,最后輸出排序后的名字表。將一個(gè)55的矩陣中最大的元素放在中心,4個(gè)角分別放4個(gè)最小的元素(按從左到右、從上到下的的順序,依次從小到大存放),編程實(shí)現(xiàn)。,實(shí)驗(yàn)二十八上機(jī)測試,測試內(nèi)容編程實(shí)現(xiàn)從鍵盤輸入以字符串,要求將每個(gè)單詞中的第一個(gè)字母改寫成大寫字母(如果原來已經(jīng)是大寫字母則保持不變)然后輸出轉(zhuǎn)換結(jié)果。利用指針數(shù)組實(shí)現(xiàn),在主函數(shù)中輸入10個(gè)等長的字符串,用另一個(gè)函數(shù)對它們進(jìn)行排序,然后在主函數(shù)中輸出已排好序的字符串。請?jiān)敿?xì)說明實(shí)現(xiàn)上述兩題的基本思想和算法。,實(shí)驗(yàn)二十九文件的基本操作,實(shí)驗(yàn)?zāi)康恼莆瘴募幕臼褂?;掌握基本文件庫函?shù)的用法;掌握文件以及緩沖文件系統(tǒng)、文件指針的概念。實(shí)驗(yàn)內(nèi)容編程實(shí)現(xiàn)從鍵盤輸入一個(gè)字符串,將其中的小寫字母全部轉(zhuǎn)換成大寫字母,然后輸出到磁盤文件“test”中保存。輸入的字符串以“!”結(jié)束。先有兩個(gè)文件A和B,文件A存放的信息是“QingHaiUniversity”,文件B中存放的信息是“”,現(xiàn)要求將這兩個(gè)文件中的信息進(jìn)行合并,最后輸出“QingHaiUniversityIamastudent”,并存放到文件C中去。,實(shí)驗(yàn)三十用文件實(shí)現(xiàn)一個(gè)具體的應(yīng)用,實(shí)驗(yàn)?zāi)康耐ㄟ^編制該程序讓學(xué)生初步掌握用C語言文件來實(shí)現(xiàn)具體的應(yīng)用程序的開發(fā);進(jìn)一步熟悉如何利用文件進(jìn)行世紀(jì)應(yīng)用程序開發(fā)的技巧。實(shí)驗(yàn)內(nèi)容有5個(gè)學(xué)生,每個(gè)學(xué)生有3門課的成績,從鍵盤輸入以上數(shù)據(jù)(包括學(xué)生學(xué)號(hào)、姓名、三門課的成績),要輸入的5個(gè)學(xué)生的信息如下:99101Wang89,98,67.599103Li60,80,9099106Fun75.5,91.5,9999110Ling100,50,62.599113Yuan58,68,71現(xiàn)編程實(shí)現(xiàn)以下操作:計(jì)算出平均成績,將原有數(shù)據(jù)和計(jì)算出的平均分?jǐn)?shù)存放在磁盤文件stud。將stud文件中的學(xué)生數(shù)據(jù)按平均分進(jìn)行排序處理,并將已排序的學(xué)生數(shù)據(jù)存入一個(gè)新文件stud_sort中。在已排好序的學(xué)生成績中插入一個(gè)學(xué)生的3門課成績,實(shí)現(xiàn)方法如下:先計(jì)算新插入學(xué)生的平均成績,然后將它按平均成績高低順序插入,插入后建立一個(gè)新文件new_sort。要插入的學(xué)生的數(shù)據(jù)如下:99108Xin90,95,60,- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 程序設(shè)計(jì)語言 實(shí)驗(yàn)
鏈接地址:http://m.appdesigncorp.com/p-3497838.html