c語言程序設計實驗報告模板_第1頁
c語言程序設計實驗報告模板_第2頁
c語言程序設計實驗報告模板_第3頁
c語言程序設計實驗報告模板_第4頁
c語言程序設計實驗報告模板_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、c語言程序設計實驗報告模板篇一:C語言程序設計實驗報告一、實驗目的:1、掌握C語言的數(shù)據(jù)類型和變量的聲明。2、掌握不同類型數(shù)據(jù)之間賦值的規(guī)律。3、掌握C語言的運算符和表達式的使用。4、熟悉C程序的編輯、編譯、連接和運行的過程。二、實驗內(nèi)容: 輸人程序:#includevoidmaininta,b;floatd,e;charc1,c2;doublef,g;longm,n;unsignedintp,q;a=61;b=62;c1='a'c2='b'd=3.56;e=-6.87;f=3157.*;g=0.*-*9;m=*;n=-p=*;q=printf( “ a=%d,

2、b=%dc1=%c,c2=%cd=%6.2f,e=%6.2f",a,b,c1,c2,d,e);printf("f=%15.6f,g=%15.6fm=%ld,n=%ldp=%u,q=%u",f,g,m,n,p,q); 運行此程序并分析結果(2)按習題4.8要求編寫程序題目為:設圓半徑r=l.5,圓柱高h=3,求圓周長、圓面積、圓球表面積、圓球體積、圓柱體積。用scanf輸人數(shù)據(jù),輸出計算結果口輸出時要有文字說明,取小數(shù)點后兩位數(shù)字。程序:三、實驗步驟:輸人程序:#includevoidmaininta,b;floatd,e;charc1,c2;doublef,g;l

3、ongm,n;unsignedintp,q;a=61;b=62;c1='a'c2='b'd=3.56;e=-6.87;f=3157.*;g=0*C1一*C一*-9;m-ji;printf("a=%d,b=%dc1=%c,c2=%cd=%6.2f,e=%6.2f",a,b,c1,c2,d,e);printf("f=%15.6f,g=%15.6fm=%ld,n=%ldp=%u,q=%u",f,g,m,n,p,q);運行此程序并分析結果。預計結果:a=61,b=62c1=a,c2=bd='、3.56,e='687

4、f=''''3157.*,g=0.*m=*,n=-*,q=*('代表空格)結果:g的輸出看來是四舍五入了。在此基礎上,將程序第914行改為:a=61;b=62;c1=a;c2=b;f=3157.*;g=0* *9;d=f;e=g;p=a=m=;q=b=n=-;運行程序,分析結果。p=a=m=*;q=b=n=-*;這兩條語句將p、a、m的值和q、b、n的值都重新賦了相應的新值。除m、n外都是整型、無符號整型或字符型,因此輸出會按數(shù)據(jù)類型強制截取,因此得到的值會不盡相同,但可以從理論上做出推測,但由于編譯系統(tǒng)的不同,真正得到的結果也可能不盡相同。 改用sca

5、nf函數(shù)輸人數(shù)據(jù)而不用賦值語句,scanf函數(shù)如下:scanf("%d,%d,%c,%c,%f,%f,%lf,%lf,%ld,%ld,%u,%u",a,b,c1,c2,d,e,f,g,m,n,%p,%q);輸入的數(shù)據(jù)如下:分析運行結果。(說明甘和ld格式符分別用于輸人double型和long型數(shù)據(jù)) 在的基礎上將printf語句改為:printf("a=%d,b=%dc1=%c,c2=%cd=%15.6f,e=%15.6f",a,b,c1,c2,d,e);printf("f=%f,g=%fm=%ld,n=%ldp=%u,q=%u",f

6、,g,m,n,p,q);運行程序:將p、q改用o格式符輸出。將scanf函數(shù)中的1缽口%改為秣口&運行程序并觀察分析結果。出現(xiàn)錯誤,提示為:浮點錯誤:超出范圍。程序異常中止。(2)按習題4.8要求編寫程序題目為:設圓半徑r=l.5,圓柱高h=3,求圓周長、圓面積、圓球表面積、圓球體積、圓柱體積。用scanf輸人數(shù)據(jù),輸出計算結果口輸出時要有文字說明,取小數(shù)點后兩位數(shù)字。程序:#includevoidmainfloath,r,s,sq,vq,vz;floatpi=3.*-*;printf("Pleaseinputthecircinalr,andthecylindricalh:&

7、quot;);scanf("%f,%f",r,l=2*pi*r;sq=4*pi*r*r;vq=4.0/3.0*pi*r*r*r;vz=pi*r*r*h;printf("circinalgirthis:l=%6.2f",l);printf("circinalareais:s=%6.2f",s);printf("spheresurfaceareais:sq=%6.2f",sq);printf("spherecubageis:vq=%6.2f",vq);printf("cylindrical

8、cubageis:vz=%6.2f",vz);(3)編程序,用getchar函數(shù)讀人兩個字符給cl,c2然后分別用putchar函數(shù)和printf輸出這兩個字符。上機運行程序,比較用printf和putchar函數(shù)輸出字符的特點。程序如下:#includevoidmaincharc1,c2;printf("Pleaseinputtowletters:");c1=get);c2=get);printf("Putcharis:");putc1);putc2);printf("");printf("Printfis:&q

9、uot;);printf("%c%c",c1,c2);可見有putchar輸出的結果是一個字符一個字符順序輸出的。每個putchar函數(shù)只能輸出一個字符,且只能輸出字符,而printf可以輸出多個數(shù)據(jù),且為任意類四、實驗心得(體會):通過本次C語言上機實驗,我對順序結構程序設計有了一定的了解。通過幾個例題,我對順序結構中scanf和printf語句的基本實用情況有了一定的理解。我相信這些都為后來的編程打下基礎。對C語言學習,我會更加努力。篇二:C語言程序設計實驗報告(1) 實驗目的( 1)熟悉和掌握結構的說明和引用、結構的指針、結構數(shù)組,以及函數(shù)中使用結構的方法。( 2)掌

10、握動態(tài)存儲分配函數(shù)的用法,掌握自引用結構和單向鏈表的創(chuàng)建、遍歷、結點的增刪、查找等操作。( 3)了解字段結構和聯(lián)合的用法。(2) 實驗內(nèi)容及要求1 .表達式求值的程序驗證設有說明:charu="UVWXYZ"charv="xyz"structTintx;charc;char*t;a=11,'A',u,100,'B',v,*p=a;請先自己計算表2.1中表達式的值,然后編寫程序并運行來加以驗證。(各表達式相互無關)2 .源程序修改、替換下面所給源程序的功能是:給定一批整數(shù),以0作為結束標志且不作為結點,將其建成一個先進先出的

11、鏈表。先進先出鏈表的頭指針始終指向最先創(chuàng)建的結點(鏈頭),先建結點指向后建結點,后建結點始終是尾結點。請完成以下工作:(1)源程序中存在什么樣的錯誤(先觀察執(zhí)行結果)?對程序進行修改、調試。使之能夠正確完成指定任務。(2)修改替換creat_list函數(shù),將其建成一個后進先出的鏈表。后進先出的鏈表的頭指針始終指向最后創(chuàng)建的結點(鏈頭),后建結點指向先建結點,先建結點始終是尾結點。源程序#include#includestructs_listintdata;structs_list*next;voidcreat_list(structs_list*headp,int*p);intmain(voi

12、d)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);elseloc_head=(structs_list*)malloc(sizeof(structs_list);loc_head-d

13、ata=*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 .程序設計編寫并上機調試運行能實現(xiàn)以下功能的程序或函數(shù):( 1)編寫一個程序,實現(xiàn)以下功能:定義一個字段結構structbits,它將一個8位無符號字節(jié)從最低位向最高位聲明為8個字段,各字段依次為bit0,bitl,bBbit0的優(yōu)先級最高。同時設計8個函數(shù),第i個函數(shù)以biti(i=0,1,91為參數(shù),并且

14、在函數(shù)體內(nèi)輸出biti的值。將8個函數(shù)的名字存入一個函數(shù)指針數(shù)組p_fun。如果bit0為1,調用p_fun指向的函數(shù)。如果structbits中有多位為1,則根據(jù)優(yōu)先級從高到低依次調用函數(shù)指針數(shù)組p_fun中相應元素指向的函數(shù)。8個函數(shù)中的第0個函數(shù)可以設計為Voidf0(structbitsb)Printf(“thefunction%discalled!”,b);( 3)設計用單詞鏈表建立一張班級成績單,包括每個學生的學號、姓名、英語、高等數(shù)學、普通物理、C語言程序設計四門課程的成績,試用函數(shù)編程實現(xiàn)下列功能:輸入每個學生的各項信息。輸出每個學生的各項信息。修改指定學生的指定數(shù)據(jù)項的內(nèi)容。

15、統(tǒng)計每個同學的平均成績(保留兩位小數(shù))。輸出各位同學的學號、姓名、四門課程的總成績和平均成績。4.選做題( 1)對上述程序設計題中第(2)題的程序,增加按照平均成績進行升序排序的函數(shù),試寫出用交換結點數(shù)據(jù)域的方法升序排序的函數(shù),排序可用選擇法或冒泡法。( 2)對選做題第(1)題,進一步寫出用交換結點指針域的方法升序排序的函數(shù)。(3)采用雙向鏈表重做編程設計題中的第(2)題。( 三)實驗步驟及結果1 .表達式求值的程序驗證的實驗步驟及結果表2.1表達式值的計算結果正確!2 .源程序修改、替換的實驗步驟及結果3 1)改錯:headp類型應為雙重指針,即:voidcreat_list(structs

16、_list*headp,int*p);同時第40行應該改為*headp=loc_head;第12行改為creat_list(head,s);修改后的程序如下:#include#includestructs_listintdata;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);

17、p=p-next;printf("");return0;voidcreat_list(structs_list*headp,int*p)structs_list*loc_head=NULL,*tail;if(p=0);elseloc_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+;ta

18、il-next=NULL;*headp=loc_head;程序運行結果如圖所示:結果正確!(2)建立一個后進先出的鏈表如下:修改后程序如下:#include#includestructs_listintdata;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)10/12printf("%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);篇三:C語言程序設計上機實驗報告一、實驗目的:1熟悉WinTC或者VC+6.0的軟件環(huán)境,掌握使用其進行編輯、編譯、連接和運行的方法。2通過運行簡單的C程序,掌握C源程序的特點。二、實驗內(nèi)容:(由學生選擇WinTC或者VC之一完成相關實驗)1運行WinTC程序,進入C程序設計環(huán)境。2建立工程文件3編輯源文件4編譯、連接(1)單文件

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論