版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Word1/1c語言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告模板篇二:C語言程序設(shè)計(jì)試驗(yàn)報(bào)告
(一)試驗(yàn)?zāi)康?/p>
(1)熟識和把握結(jié)構(gòu)的說明和引用、結(jié)構(gòu)的指針、結(jié)構(gòu)數(shù)組,以及函數(shù)中使用結(jié)構(gòu)的方
法。
(2)把握動(dòng)態(tài)存儲(chǔ)安排函數(shù)的用法,把握自引用結(jié)構(gòu)和單向鏈表的創(chuàng)建、遍歷、結(jié)點(diǎn)的
增刪、查找等操作。
(3)了解字段結(jié)構(gòu)和聯(lián)合的用法。
(二)試驗(yàn)內(nèi)容及要求
1.表達(dá)式求值的程序驗(yàn)證設(shè)有說明:
charu=UVWXYZ;charv=xyz;structT{intx;charc;char*t;
}a={{11,A,u},{100,B,v}},*p=a;
請先自己計(jì)算表2.1中表達(dá)式的值,然后編寫程序并運(yùn)行來加以驗(yàn)證。(各表達(dá)式相互無關(guān))
2.源程序修改、替換
下面所給源程序的功能是:給定一批整數(shù),以0作為結(jié)束標(biāo)志且不作為結(jié)點(diǎn),將其建成一個(gè)先進(jìn)先出的鏈表。先進(jìn)先出鏈表的頭指針始終指向最先創(chuàng)建的結(jié)點(diǎn)(鏈頭),先建結(jié)點(diǎn)指向后建結(jié)點(diǎn),后建結(jié)點(diǎn)始終是尾結(jié)點(diǎn)。請完成以下工作:
(1)源程序中存在什么樣的錯(cuò)誤(先觀看執(zhí)行結(jié)果)?對程序進(jìn)行修改、調(diào)試。使之能
夠正確完成指定任務(wù)。
(2)修改替換creat_list函數(shù),將其建成一個(gè)后進(jìn)先出的鏈表。后進(jìn)先出的鏈表的頭指針
始終指向最終創(chuàng)建的結(jié)點(diǎn)(鏈頭),后建結(jié)點(diǎn)指向先建結(jié)點(diǎn),先建結(jié)點(diǎn)始終是尾結(jié)點(diǎn)。
源程序
#include
#includestructs_list{intdata;
structs_list*next;};
voidcreat_list(structs_list*headp,int*p);intmain(void){
structs_list*head=NULL,*p;ints={1,2,3,4,5,6,7,8,0};creat_list(head,s);p=head;while(p){
printf(%d,p-data);p=p-next;}
printf();return0;}
voidcreat_list(structs_list*headp,int*p){
structs_list*loc_head=NULL,*tail;if(p[0]==0);else{
loc_head=(structs_list*)malloc(sizeof(structs_list));loc_head-data=*p++;tail=loc_head;while(*p){
tail-next=(structs_list*)malloc(sizeof(structs_list));tail=tail-next;tail-data=*p++;}
tail-next=NULL;}
headp=loc_head;}
3.程序設(shè)計(jì)
編寫并上機(jī)調(diào)試運(yùn)行能實(shí)現(xiàn)以下功能的程序或函數(shù):
(1)編寫一個(gè)程序,實(shí)現(xiàn)以下功能:定義一個(gè)字段結(jié)構(gòu)structbits,它將一個(gè)8位無符號字節(jié)從最低位向最高位聲明為8個(gè)字段,各字段依次為bit0,bit1,……bit7,且bit0的優(yōu)先級
最高。同時(shí)設(shè)計(jì)8個(gè)函數(shù),第i個(gè)函數(shù)以biti(i=0,1,……7)為參數(shù),并且在函數(shù)體內(nèi)輸出biti的值。將8個(gè)函數(shù)的名字存入一個(gè)函數(shù)指針數(shù)組p_fun。假如bit0為1,調(diào)用p_fun[0]指向的函數(shù)。假如structbits中有多位為1,則依據(jù)優(yōu)先級從高到低依次調(diào)用函數(shù)指針數(shù)組p_fun中相應(yīng)元素指向的函數(shù)。8個(gè)函數(shù)中的第0個(gè)函數(shù)可以設(shè)計(jì)為Voidf0(structbitsb){
Printf(“thefunction%discalled!”,b);}
(3)設(shè)計(jì)用單詞鏈表建立一張班級成果單,包括每個(gè)同學(xué)的學(xué)號、姓名、英語、高等數(shù)
學(xué)、一般物理、C語言程序設(shè)計(jì)四門課程的成果,試用函數(shù)編程實(shí)現(xiàn)下列功能:
①輸入每個(gè)同學(xué)的各項(xiàng)信息。②輸出每個(gè)同學(xué)的各項(xiàng)信息。③修改指定同學(xué)的指定數(shù)據(jù)項(xiàng)的內(nèi)容。④統(tǒng)計(jì)每個(gè)同學(xué)的平均成果(保留兩位小數(shù))。⑤輸出各位同學(xué)的學(xué)號、姓名、四門課程的總成果和平均成果。4.選做題
(1)對上述程序設(shè)計(jì)題中第(2)題的程序,增加根據(jù)平均成果進(jìn)行升序排序的函數(shù),試寫出用交換結(jié)點(diǎn)數(shù)據(jù)域的方法升序排序的函數(shù),排序可用選擇法或冒泡法。
(2)對選做題第(1)題,進(jìn)一步寫出用交換結(jié)點(diǎn)指針域的方法升序排序的函數(shù)。(3)采納雙向鏈表重做編程設(shè)計(jì)題中的第(2)題。
(三)試驗(yàn)步驟及結(jié)果
1.表達(dá)式求值的程序驗(yàn)證的試驗(yàn)步驟及結(jié)果
表2.1表達(dá)式值的計(jì)算
結(jié)果正確!
2.源程序修改、替換的試驗(yàn)步驟及結(jié)果
(1)改錯(cuò):headp類型應(yīng)為雙重指針,即:voidcreat_list(structs_list**headp,int*p);同時(shí)第40行應(yīng)當(dāng)改為*headp=loc_head;第12行改為creat_list(head,s);修改后的程序如下:#include#includestructs_list{intdata;
structs_list*next;};
voidcreat_list(structs_list**headp,int*p);intmain(void)
{
structs_list*head=NULL,*p;ints={1,2,3,4,5,6,7,8,0};creat_list(head,s);p=head;while(p){
printf(%d,p-data);p=p-next;}
printf();return0;}
voidcreat_list(structs_list**headp,int*p){
structs_list*loc_head=NULL,*tail;if(p[0]==0);else{
loc_head=(structs_list*)malloc(sizeof(structs_list));loc_head-data=*p++;tail=loc_head;while(*p){
tail-next=(structs_list*)malloc(sizeof(structs_list));tail=tail-next;tail-data=*p++;}
tail-next=NULL;}
*headp=loc_head;}
程序運(yùn)行結(jié)果如圖所示:
結(jié)果正確!
(2)建立一個(gè)后進(jìn)先出的鏈表如下:
修改后程序如下:#include#includestructs_list{intdata;
structs_list*next;};
voidcreat_list(structs_list**headp,int*p);intmain(void){
structs_list*head=NULL,*p;ints={1,2,3,4,5,6,7,8,0};creat_list(head,s);p=head;while(p){
printf(%d,p-data);p=p-next;}
printf();return0;}
voidcreat_list(structs_list**headp,int*p){
structs_list*loc_head=NULL,*tail;structs_list*temp;if(p[0]==0);
篇三:C語言程序設(shè)計(jì)上機(jī)試驗(yàn)報(bào)告
一、試驗(yàn)?zāi)康模?/p>
1.熟識WinTC或者VC++6.0的軟件環(huán)境,把握使用其進(jìn)行編輯、編譯、連接和運(yùn)行的方法。2.通過運(yùn)行簡潔的C程序,把握C源程序的特點(diǎn)。
二、試驗(yàn)內(nèi)容:(由同學(xué)選擇WinTC或者VC之一完成相關(guān)試驗(yàn))1.運(yùn)行WinTC程序,進(jìn)入C程序設(shè)計(jì)環(huán)境。2.建立工程文件3.編輯源文件4.編譯、連接
(1)單文件源程序的編譯、連接
源程序先經(jīng)過編譯,生成目標(biāo)文件(.obj文件),然后將目標(biāo)文件進(jìn)行連接,生成可執(zhí)行文件(.exe)。假如編譯、連接中發(fā)生錯(cuò)誤,在Message窗口中顯示出錯(cuò)信息,修改錯(cuò)誤后,可重新編譯、連接。(2)多文件源程序的編譯、連接
可以用長的源程序分割成幾個(gè)文件,分別編譯然后生成可執(zhí)行文件。此時(shí)使用Project菜單。步驟:第一步:有三個(gè)文件f1.c、f2.c、f3.c組成一個(gè)完整的C程序,分別建立三個(gè)文件,將f1.c、f2.c、f3.c三個(gè)文件保存到同一個(gè)文件夾中(如d:cproject)。f1.c:
#includestdio.hexterna,b;
externmax(intx,inty);main{inte
=1,f=2;
printf(%d,max(a,b));printf(%d,max(e,f));}f2.c:inta=3,b=4;f3.c:
intmax(intx,inty){returnxyx:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025安全生產(chǎn)月計(jì)劃例文
- 幼兒園工作計(jì)劃匯編
- 2025年度高中美術(shù)班教學(xué)計(jì)劃范文
- 關(guān)于幼兒園下半年工作計(jì)劃模板錦集
- 2025年1月外貿(mào)業(yè)務(wù)員工作計(jì)劃
- 中小學(xué)學(xué)籍管理工作計(jì)劃
- 2025年行政人事主管工作計(jì)劃
- 2025年中學(xué)體育教研組工作計(jì)劃例文
- 《食品添加劑概述》課件
- 《多目標(biāo)決策分析》課件
- 大學(xué)學(xué)院輔導(dǎo)員工作室建設(shè)與管理辦法(試行)
- 微生物學(xué)(細(xì)胞型)智慧樹知到期末考試答案章節(jié)答案2024年哈爾濱師范大學(xué)
- 嚴(yán)重精神障礙患者隨訪服務(wù)記錄表
- 學(xué)前衛(wèi)生學(xué)智慧樹知到期末考試答案章節(jié)答案2024年杭州師范大學(xué)
- 2024年成都環(huán)境投資集團(tuán)有限公司招聘筆試沖刺題(帶答案解析)
- 二年級美術(shù)上冊第14課奇特的夢全國公開課一等獎(jiǎng)百校聯(lián)賽微課賽課特等獎(jiǎng)?wù)n件
- 農(nóng)民專業(yè)合作社財(cái)務(wù)報(bào)表(三張報(bào)表)
- 版《公路工程機(jī)械臺班費(fèi)用定額》
- 應(yīng)急管理部宣傳教育中心招聘筆試試卷2021
- 2024-2030年全球智能垃圾桶行業(yè)市場發(fā)展分析及前景趨勢與投資研究報(bào)告
- 《電站爐水循環(huán)泵電機(jī)運(yùn)行導(dǎo)則》
評論
0/150
提交評論