版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、程序設(shè)計語言C實(shí)驗(yàn),金鑫,實(shí)驗(yàn)一 C簡單程序設(shè)計,實(shí)驗(yàn)?zāi)康牧私釩程序的基本編輯操作,熟悉編輯界面; 掌握在Turbo C集成開發(fā)環(huán)境下編輯、編譯、連接和運(yùn)行C程序的方法 實(shí)驗(yàn)內(nèi)容使用DOS操作命令查看TC目錄下的文件。學(xué)習(xí)建立個人的C源程序文件子目錄 在Turbo C集成開發(fā)環(huán)境下,輸入教材P37例3.1的程序并進(jìn)行編譯和運(yùn)行。觀察C程序的書寫格式,學(xué)會在用戶屏幕上查看運(yùn)行結(jié)果,熟悉編輯操作,了解基本調(diào)試程序的操作。,實(shí)驗(yàn)二
2、 數(shù)據(jù)類型、運(yùn)算符和表達(dá)式,實(shí)驗(yàn)?zāi)康恼莆誄語言的基本數(shù)據(jù)類型:整型、字符型、長整型、單精度、雙精度類型,以及對它們賦值的方法學(xué)會使用C有關(guān)的運(yùn)算符和表達(dá)式,以及自加和自減運(yùn)算符的使用 實(shí)驗(yàn)內(nèi)容編寫一個程序,分別定義字符型、整型、長整型、單精度、雙精度變量,并給這些變量賦值,輸出這些變量的存儲寬度。運(yùn)行P5例1.1,模仿例1.1編寫P9的習(xí)題3程序。運(yùn)行P6例1.2、P13例2.1、P15的程序、P18頁的程序運(yùn)行課堂中的
3、有關(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)容編寫一個程序,輸入一
4、個字符,輸出它的前后鄰居編寫一個程序,求三角形的面積。其中,a、b、c為三角形的三條邊,s=(a+b+c)/2,面積為area=編寫一個程序,求攝氏溫度。公式:c=5*(f-32)/9,實(shí)驗(yàn)四 自己動手編寫一個C程序,實(shí)驗(yàn)?zāi)康睦靡褜W(xué)的知識編寫一個解決實(shí)際問題的程序 實(shí)驗(yàn)內(nèi)容設(shè)計一個程序,輸入正五邊形的邊長的長度a,按公式 計算該五邊形外接圓的半徑。設(shè)計一程序,輸入空間中兩點(diǎn)的坐標(biāo)x
5、1,y1,z1和x2,y2,z2計算兩點(diǎn)之間的距離。編寫一個C程序,輸入一個3位整數(shù),分別輸出百位數(shù)、十位數(shù)和個位數(shù)。,,實(shí)驗(yàn)五 選擇結(jié)構(gòu)基礎(chǔ),實(shí)驗(yàn)?zāi)康恼莆者x擇控制語句掌握正確使用邏輯運(yùn)算符和邏輯表達(dá)式實(shí)驗(yàn)內(nèi)容編寫程序輸入四個整數(shù),要求輸出最小的一個。編寫程序判斷體重。體指數(shù)(t)=體重(w)/身高2(h)其中,t=27時為肥胖。分別用if…else…if語句和switch語句編寫書P58⑸,實(shí)驗(yàn)六 選擇結(jié)構(gòu)的使用,實(shí)
6、驗(yàn)?zāi)康木毩?xí)根據(jù)具體問題,利用選擇控制語句編寫程序?qū)嶒?yàn)內(nèi)容有一人過獨(dú)木橋,到橋中間時看見前面有狼,后面有虎,底下是深深的河水。編程寫出此人的最后結(jié)局。從鍵盤輸入3個數(shù),判斷能否構(gòu)成三角形,若能構(gòu)成三角形,計算以這3個數(shù)為邊長的三角形面積;否則,輸出相應(yīng)的提示信息。編寫一個程序,輸入某學(xué)生成績,若成績在85分以上,則輸出“Very Good”,若成績在60分到85分之間,則輸出“Good”,若成績低于60分,則輸出“Bad”。編
7、寫程序,讀入一個年份和月份,打印出該月有多少天,實(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)輸入一個字符串,將其中的空格和數(shù)字刪除后輸出,,實(shí)驗(yàn)八 循環(huán)結(jié)構(gòu)應(yīng)用,實(shí)驗(yàn)?zāi)康恼莆赵诔绦蛟O(shè)計中用
8、循環(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)之和,顯示輸出計算結(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
9、~200之間的素數(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)容編寫一個程序,能顯示兩行文字。已知三角形的兩個邊長A,B和其夾角а,求三角形的面積S。輸入圓的半徑R和一個整數(shù)K,K=1時,計算圓的面積;當(dāng)K=2時,計算圓的周長;當(dāng)K=3時,既要求面積也要求周長。編程實(shí)現(xiàn)以上功能。編寫程序,求1-3+5-7+9……-99+101的值。,實(shí)驗(yàn)十一 一維數(shù)組的使用
10、,實(shí)驗(yàn)?zāi)康恼莆找痪S數(shù)組的定義、賦值和輸入輸出方法;掌握一維數(shù)組的基本用法。實(shí)驗(yàn)內(nèi)容1. 用篩法求100以內(nèi)的素數(shù)。2. 編寫一個程序,計算若干學(xué)生的某門功課的平均成績、標(biāo)準(zhǔn)差,找出最高分和最低分。3. 編寫一個程序,讓計算機(jī)產(chǎn)生20個隨機(jī)數(shù),用選擇法排序。4. 根據(jù)上題的內(nèi)容1,編一程序在數(shù)組中查找一個數(shù)。要求:⑴若有該數(shù),則輸出該數(shù),否則輸出找不到的信息;⑵用順序查找實(shí)現(xiàn);⑶用折半查找實(shí)現(xiàn)。,實(shí)驗(yàn)十二 一維數(shù)組,實(shí)
11、驗(yàn)內(nèi)容1、根據(jù)實(shí)驗(yàn)11中的內(nèi)容3,編寫一程序刪除指定的一個數(shù)。2、根據(jù)實(shí)驗(yàn)11中的內(nèi)容3,編寫一程序插入一個指定的數(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.找出一個二維數(shù)組的“鞍點(diǎn)”,即該位置上的元素在該行上最大,在該列上最小。也可能沒有“鞍點(diǎn)”。要求用隨機(jī)函數(shù)生成數(shù)據(jù)
12、。 2.使用二維數(shù)組,打印楊輝三角形前10行。3.編寫程序,將一個5×5的矩陣中最大的元素放在中心,4個角分別放4個最小的元素(按從左到右、從上到下的順序,依次從小到大存放。4 .編寫程序,用隨機(jī)函數(shù)產(chǎn)生一個二維迷宮(用0表示通道,1表示隔墻),實(shí)驗(yàn)十四 字符數(shù)組與字符串函數(shù)的使用,實(shí)驗(yàn)?zāi)康恼莆兆址麛?shù)組和字符串函數(shù)的使用實(shí)驗(yàn)內(nèi)容1、編寫一個程序,將字符數(shù)組s2中的全部字符拷貝到字符數(shù)組s1中。(不能使用strcp
13、y函數(shù)。)2、有一篇文章,共有3行文字,每行有80個字符。要求分別統(tǒng)計出其中英文大寫字母、小寫字母、數(shù)字、空格以及其他字符的個數(shù)。3、有n個字符串,要求找出其中最大和最小的字符串。,實(shí)驗(yàn)十五 編程實(shí)現(xiàn)非數(shù)值信息的處理,實(shí)驗(yàn)?zāi)康倪M(jìn)一步掌握字符數(shù)組的使用;了解非數(shù)值信息的處理;初步了解排序算法。實(shí)驗(yàn)內(nèi)容1、有n個字符串,要求按字母順序從小到大對其排序。2、編寫一個程序,解決騎士周游世界問題。 在國際象棋中,馬的走步
14、是“L”形(相當(dāng)于中國象棋中的馬走日),如上圖。那么,馬從國際象棋盤(棋盤為8╳8=64格)上的某一點(diǎn)出發(fā),能否跳遍全棋盤,且每個方格只跳過一次?試打印出馬的路線。,實(shí)驗(yàn)十六 排序問題,實(shí)驗(yàn)?zāi)康恼莆者x擇法排序的思想掌握冒泡法排序的思想掌握插入法排序的思想實(shí)驗(yàn)內(nèi)容1.編一程序,對n個整數(shù)用選擇法排序(從小到大);2.編一程序,對n個整數(shù)用冒泡法排序(從大到?。?;3.編一程序,輸入若干學(xué)生某門功課的成績,計算平均分、標(biāo)準(zhǔn)差,
15、并按從高分到低分的順序排列(用插入法排序)。,實(shí)驗(yàn)十六 常用算法,實(shí)驗(yàn)?zāi)康恼莆詹檎业某S盟惴ǎ樞虿檎摇⒄郯氩檎遥┱莆赵跀?shù)組中刪除一個元素或插入一個元素的算法實(shí)驗(yàn)內(nèi)容1、根據(jù)實(shí)驗(yàn)15中的內(nèi)容1,編一程序在數(shù)組中查找一個數(shù)。要求:⑴若有該數(shù),則輸出該數(shù),否則輸出未找到的信息;⑵用順序查找實(shí)現(xiàn);⑶用折半查找實(shí)現(xiàn)。2、根據(jù)實(shí)驗(yàn)內(nèi)容1,編寫一程序刪除指定的一個數(shù)。3、根據(jù)實(shí)驗(yàn)內(nèi)容1,編寫一程序插入一個指定的數(shù),插入后,數(shù)組仍
16、然有序。,實(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、寫一個判斷素數(shù)的函數(shù)。要求:⑴在主函數(shù)中輸入一個整數(shù)并輸出是否素數(shù)的信息;⑵用自定義函數(shù)判斷此數(shù)是否素數(shù);⑶測試數(shù)據(jù):17、34、2、1、0、49、39。2、編一個函數(shù),其功能是:求高于平均分的人數(shù),并作為函數(shù)值返回。要求:⑴學(xué)生的成績放在student數(shù)組中;⑵在主函數(shù)中輸入學(xué)生
17、的成績,用-1結(jié)束成績的輸入;⑶在主函數(shù)中輸出高于平均分的人數(shù);⑷測試數(shù)據(jù):78、34、65、86、54、76、65、48、29、94 87、46、88、71、68、60、83、92、57、51 69、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)一步
18、掌握函數(shù)的實(shí)參與形參的結(jié)合;掌握函數(shù)的遞歸調(diào)用;實(shí)驗(yàn)內(nèi)容1、用遞歸法求n階勒讓德多項(xiàng)式的值,遞歸公式為:2、運(yùn)行漢諾塔程序3、寫一個函數(shù),使輸入的一個字符串反序存放。,實(shí)驗(yàn)十八 函數(shù)實(shí)參、形參的結(jié)合及遞歸調(diào)用,實(shí)驗(yàn)內(nèi)容2、編輯調(diào)試下列程序:void move(char x, char y) { printf(“%c?%c\n”, x, y); } void Hanoi(int n, char one,
19、char two, char three) { if(n==1) move(one, three); else { Hanoi(n-1, one, three, two); move(one, three); Hanoi(n-1, two, one, three); } } main( ) { int m; printf(“in
20、put the number of diskes:”); scanf(“%d”, &m); printf(“The step to moving %3d diskes:\n”,m); Hanoi(m, ‘A’, ‘B’, ‘C’); } 測試用例:4,10。,實(shí)驗(yàn)十九 模塊化程序設(shè)計的綜合練習(xí)(上),實(shí)驗(yàn)?zāi)康木C合掌握程序的控制結(jié)構(gòu)和數(shù)組;進(jìn)一步學(xué)習(xí)模塊化程序設(shè)計;實(shí)驗(yàn)內(nèi)容1、有一行原文,請
21、按下面規(guī)律譯成密碼: A→Z a→z,B→Y b→y,C→X c→x,…… 即第1個字母變成第26個字母,第i個字母變成第(26-i+1)個字母。非字母字符不變。要求:⑴在主函數(shù)中輸入電文;⑵寫一個函數(shù)將密碼譯回原文;⑶在主函數(shù)中輸出密碼和原文;⑷測試用例:I am a student, you are a teather.2、有n位學(xué)生,每個學(xué)生有m門功課,請編寫程序解決:⑴在主函數(shù)中定義數(shù)組;⑵寫一個en
22、ter函數(shù)輸入學(xué)生的成績;⑶寫一個sort函數(shù),按總成績對數(shù)組排序;⑷寫一個print函數(shù)輸出成績表,每行輸出一位學(xué)生的成績。,實(shí)驗(yàn)二十 模塊化程序設(shè)計的綜合練習(xí)(下),實(shí)驗(yàn)?zāi)康倪M(jìn)一步掌握模塊化程序設(shè)計的思想;階段考核實(shí)驗(yàn)內(nèi)容1、編寫一個程序,解決以下問題: n個人圍成一圈,從第一個人開始順序報數(shù)1、2、3。凡是報到“3”的人退出圈子。找出最后留在圈子中的人的原來的序號。測試用例:15、22、39。2、用遞歸方法
23、求n階勒讓德多項(xiàng)式的值,遞歸公式為:3.打印楊輝三角形,要求:⑴用自定義函數(shù)輸出三角形;⑵輸出行數(shù)由用戶自行決定。,,實(shí)驗(yàn)二十一多文件程序的編輯、編譯及運(yùn)行,實(shí)驗(yàn)?zāi)康恼莆赵赥C下如何編輯、編譯運(yùn)行一個多文件程序 實(shí)驗(yàn)內(nèi)容編寫一段程序,用來實(shí)現(xiàn)10個學(xué)生成績的輸入、求和、求平均分,分別用三個函數(shù)來實(shí)現(xiàn)。將三個函數(shù)分別存為三個獨(dú)立的程序文件,名稱分別是f1.c 、 f2.c和f3.c 在編譯狀態(tài)下,建立一個“項(xiàng)目文件”
24、,名稱為f,將以上三個程序文件放入項(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í)行下列程序,體會宏定義的用法:#include #define P 2#define POWER(x) P*x*xmain(){ int x=1,y=2; printf(“%d,%d”,POWER(x+y),POW
25、ER(y+x)); }編寫一段程序,用來求兩個數(shù)的最小值,其中用來求最小值的部分用宏定義來實(shí)現(xiàn)。編寫完成后編譯執(zhí)行。有以下程序,將其格式輸出部分改寫成宏定義后并添加到format.h頭文件中,編寫完成后編譯執(zhí)行。#define PR printf#define NL “\n”#define F “%36.3f”#define F1 F NL#define F2 F F NL#define F3
26、F F F NL,main(){ float x,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)康恼莆罩羔樀母拍?,要求會定義和使用指針變量;了解指向指針的概念及其使用方法; 實(shí)驗(yàn)內(nèi)容編制交換整型變量值的函數(shù)swap( )。函數(shù)swap( )的功能是交換兩個整型變量的值,函數(shù)swap( )設(shè)
27、有兩個指向整型變量的指針參數(shù),函數(shù)利用指針參數(shù)間接訪問變量。調(diào)用swap( )函數(shù)時,兩個參數(shù)分別是兩個待交換值得整型變量的地址。編寫程序,用指針來實(shí)現(xiàn)數(shù)組的輸入和輸出。數(shù)組定義如下:a[10]={1,2,3,4,5,6,7,8,9,0}用指針編寫一個程序,解決以下問題: n個人圍成一圈,從第一個人開始順序報數(shù)1、2、3。凡是報到“3”的人退出圈子。找出最后留在圈子中的人的原來的序號。測試用例:15、22、39。,實(shí)驗(yàn)二十三
28、 指針和指針變量的使用,輸入10個整數(shù),將其中最小的數(shù)與第一個數(shù)對換,把最大的數(shù)與最后一個數(shù)對換。寫3個函數(shù):⑴輸入10個數(shù);⑵對換處理;⑶輸出10個數(shù)。有n個整數(shù),使前面各數(shù)順序向后移m個位置,最后m個數(shù)變成最前面m個數(shù)。寫一函數(shù)實(shí)現(xiàn)上面的功能,在主函數(shù)中輸入n個整數(shù)和輸出調(diào)整后的n個數(shù)。有一個班5個學(xué)生,5門課程。⑴求第一門課的平均成績;⑵找出有2門以上課程不及格的學(xué)生,輸出他們的學(xué)號和全部課程成績和平均分;⑶找出平均成績在9
29、0分以上或全部課程成績在85分以上的學(xué)生。分別編寫3個函數(shù)實(shí)現(xiàn)以上3個要求。,實(shí)驗(yàn)二十四 用“數(shù)組指針”和“字符串指針”解決實(shí)際問題,實(shí)驗(yàn)?zāi)康恼莆諗?shù)組指針和字符串指針二者的概念和聯(lián)系;學(xué)會使用字符串的指針的指向字符串的指針變量;學(xué)會使用數(shù)組的指針和指向數(shù)組的指針變量;學(xué)會使用指向函數(shù)的指針變量;實(shí)驗(yàn)內(nèi)容編制實(shí)現(xiàn)對整型數(shù)組前n個成分求和的函數(shù)sun()。編寫一函數(shù),將字符串按照順序的逆序存放,并在主函數(shù)中從鍵盤輸入該字符
30、串(字符串長度不超過30),輸出其逆序結(jié)果。下面的程序是用來完成將一個3×3的矩陣進(jìn)行轉(zhuǎn)置。將程序補(bǔ)充完整并調(diào)試通過。main( ){ int a[3][3],*p,i; printf(“請按行輸入3×3的矩陣:\n”); for(i=0;i<3;i++) scanf(“%d %d %d”,&a[i][0],&a[i][1],&a[i][2]); p=&am
31、p;a[0][0]; move(p); printf(“轉(zhuǎn)置后的矩陣為:\n”); for(i=0;i<3;i++) printf(“%d %d %d\n”,a[i][0],a[i][1],a[i][2]); },趣味小程序,編寫一個程序,用隨機(jī)數(shù)發(fā)生器生成句子。程序中要使用以下4個char類型的指針數(shù)組:article、noun、verb、preposition。每個數(shù)組指向一組單詞。程序按以下順序抽取單
32、詞: article、noun、verb、preposition、article、noun。抽取的單詞放入一個足夠大的字符型數(shù)組(用于存放句子)中,每抽取一個單詞,放到前一個單詞的后面,單詞中間用空格分隔。最后輸出整個句子。輸出時,第一個字符要大寫,最后要有句號。冠詞article指向:“the”,“a”,“one”,“some”,“any”名詞noun指向:“boy”,“girl”,“dog”,“town”,“car”動詞v
33、erb指向:“drove”,“jumped”,“ran”,“walked”,“skipped”介詞preposition指向:“to”,“from”, “over”,“under”,“on”用上述程序生成20個句子并調(diào)試運(yùn)行。修改上述程序,使其能夠生成一個小故事。,趣味小程序,洗牌和發(fā)牌模擬用int deck[4][13]表示一副牌,其中0~3行分別表示紅心、方塊、梅花和黑桃,0~12列分別表示A、2、…、K;用char *fa
34、ce[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ù)這個過程,把數(shù)2、3、…、52隨機(jī)地插入到數(shù)組deck中,表示從洗好的牌中發(fā)出的第2、第3、…、第52張牌。
35、在把發(fā)牌序號插入到數(shù)組deck中的過程中,一張牌被選擇兩次以上是可能的,第二次及以后的選中應(yīng)該忽略,因此第二次及以后選中時,應(yīng)重新隨機(jī)得到row、column本算法效率低下,請重新設(shè)計算法,提高效率。,實(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個人的姓名和年齡并存到結(jié)構(gòu)
36、數(shù)組中,編寫程序從中查找年齡最大和最小的人的姓名和年齡,并輸出。利用結(jié)構(gòu)體來實(shí)現(xiàn)一個簡單的數(shù)據(jù)庫,該數(shù)據(jù)庫可以完成添加、按序號查詢、顯示等功能。下面將該程序的主函數(shù)部分給出,要求學(xué)生將給出自定義函數(shù)補(bǔ)充完整,并在機(jī)器上調(diào)試通過。#include #include #include void add(void); /*向數(shù)據(jù)庫中添加記錄*/void query(void); /*按指定的序號查找相應(yīng)的記錄*/
37、void listall(void); /*列出數(shù)據(jù)庫中的全部記錄*/void list(int n); /*列出給定序號的記錄*/ struct employee{ int no; /*序號*/ char name[15]; /*姓名*/ char phone[12]; /*電話號碼*/ int age; }; /*年齡*/,實(shí)驗(yàn)二十五 結(jié)構(gòu)體數(shù)據(jù)類
38、型的定義和應(yīng)用,實(shí)驗(yàn)內(nèi)容(續(xù))int index;struct employee record[20];main(){ char ch; system(“cls”); while(1) { printf(“\n1.Enter new employee\n”); printf(“2.Query employee\n”); printf(“3.List all\n”); pri
39、ntf(“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);
40、default:break; } } }…………,實(shí)驗(yàn)二十六 單鏈表的建立和操作,實(shí)驗(yàn)?zāi)康脑谡莆罩羔樅徒Y(jié)構(gòu)體的基礎(chǔ)上學(xué)習(xí)單鏈表的使用,讓學(xué)生初步掌握基本數(shù)據(jù)結(jié)構(gòu)的操作方法;掌握鏈表的概念,初步學(xué)會對鏈表進(jìn)行操作。實(shí)驗(yàn)內(nèi)容建立一個包含學(xué)生信息的單鏈表,要求包含三個學(xué)生,每個學(xué)生具有學(xué)號、姓名、成績?nèi)?xiàng)基本信息。在以上單鏈表中再加入一個學(xué)生。將一個鏈表按逆序排列,即將鏈頭當(dāng)鏈尾,鏈尾當(dāng)鏈頭。,實(shí)驗(yàn)二十七 綜合練習(xí)
41、,實(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),從終端輸入名字表,然后按字符串從小到大順序排序名字表,最后輸出排序后的名字表。將一個5×5的矩陣中最大的元素放在中心,4個角分別放4個最小的元素(按從左到右、從上到下的的順序,依次從小到大存放),編程實(shí)現(xiàn)。,實(shí)驗(yàn)二十八 上機(jī)測試,測試內(nèi)容編程實(shí)現(xiàn)從鍵盤輸入以字符串,要求將每個單詞中的第
42、一個字母改寫成大寫字母(如果原來已經(jīng)是大寫字母則保持不變)然后輸出轉(zhuǎn)換結(jié)果。利用指針數(shù)組實(shí)現(xiàn),在主函數(shù)中輸入10個等長的字符串,用另一個函數(shù)對它們進(jìn)行排序,然后在主函數(shù)中輸出已排好序的字符串。 請詳細(xì)說明實(shí)現(xiàn)上述兩題的基本思想和算法。,實(shí)驗(yàn)二十九 文件的基本操作,實(shí)驗(yàn)?zāi)康恼莆瘴募幕臼褂?;掌握基本文件庫函?shù)的用法;掌握文件以及緩沖文件系統(tǒng)、文件指針的概念。實(shí)驗(yàn)內(nèi)容編程實(shí)現(xiàn)從鍵盤輸入一個字符串,將其中的小寫字母全部轉(zhuǎn)換成
43、大寫字母,然后輸出到磁盤文件“test”中保存。輸入的字符串以“!”結(jié)束。先有兩個文件A和B,文件A存放的信息是“QingHai University”,文件B中存放的信息是“”,現(xiàn)要求將這兩個文件中的信息進(jìn)行合并,最后輸出“QingHai University I am a student”,并存放到文件C中去。,實(shí)驗(yàn)三十 用文件實(shí)現(xiàn)一個具體的應(yīng)用,實(shí)驗(yàn)?zāi)康耐ㄟ^編制該程序讓學(xué)生初步掌握用C語言文件來實(shí)現(xiàn)具體的應(yīng)用程序的開發(fā);進(jìn)一
44、步熟悉如何利用文件進(jìn)行世紀(jì)應(yīng)用程序開發(fā)的技巧。實(shí)驗(yàn)內(nèi)容有5個學(xué)生,每個學(xué)生有3門課的成績,從鍵盤輸入以上數(shù)據(jù)(包括學(xué)生學(xué)號、姓名、三門課的成績),要輸入的5個學(xué)生的信息如下:99101 Wang 89, 98, 67.5 99103 Li 60, 80, 9099106 Fun 75.5, 91.5, 99 99110 Ling
45、100, 50, 62.599113 Yuan 58, 68, 71現(xiàn)編程實(shí)現(xiàn)以下操作:計算出平均成績,將原有數(shù)據(jù)和計算出的平均分?jǐn)?shù)存放在磁盤文件stud。將stud文件中的學(xué)生數(shù)據(jù)按平均分進(jìn)行排序處理,并將已排序的學(xué)生數(shù)據(jù)存入一個新文件stud_sort中。在已排好序的學(xué)生成績中插入一個學(xué)生的3門課成績,實(shí)現(xiàn)方法如下:先計算新插入學(xué)生的平均成績,然后將它按平均成績高低順序插入,插入后建立一個新文件new_sort
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《程序設(shè)計語言c》
- 1程序設(shè)計語言1程序設(shè)計語言的分類
- 程序設(shè)計語言(c)復(fù)習(xí)題-
- 《程序設(shè)計語言(c++)》課程設(shè)計
- 《c#程序設(shè)計語言》課程標(biāo)準(zhǔn)
- c++課程設(shè)計--c++程序設(shè)計語言
- 《程序設(shè)計語言(c)》課程教學(xué)大綱
- 編程解決問題之程序設(shè)計語言c語言
- 邏輯式程序設(shè)計語言
- 如何學(xué)習(xí)程序設(shè)計語言
- 程序設(shè)計語言基礎(chǔ)答案
- c與c++程序設(shè)計語言大作業(yè)項(xiàng)目開發(fā)
- c++程序設(shè)計語言作業(yè)題及解析
- c語言程序設(shè)計實(shí)驗(yàn)答案
- 程序設(shè)計語言的層次體系
- c語言程序設(shè)計實(shí)驗(yàn)大綱
- 書名《編程解決問題之程序設(shè)計語言(c語言)》 《編程
- c++程序設(shè)計語言課程設(shè)計-收銀臺結(jié)算程序
- c++程序設(shè)計語言課程設(shè)計-收銀臺結(jié)算程序
- 重大2016年c++程序設(shè)計語言 ( 第3次 )
評論
0/150
提交評論