第一篇:C程序?qū)嶒?yàn)報告
工程學(xué)院 實(shí) 驗(yàn) 報 告
課 程 名 稱: c程序設(shè)計(jì) 課 程 代 碼: 8234510 學(xué)院(直屬系): 年級/專業(yè)/班:
2010級汽電1班
學(xué) 生 姓 名: 學(xué) 號: 31201008030 實(shí)驗(yàn)總成績: 任 課
教 師: 開 課 學(xué) 院: 工程學(xué)院 實(shí)驗(yàn)中心名稱: 交通實(shí)驗(yàn)中心
西華大學(xué)實(shí)驗(yàn)報告(理工類)
開課學(xué)院及實(shí)驗(yàn)室:汽車學(xué)院機(jī)房(5d-215)實(shí)驗(yàn)時間: 年 月 日
1、實(shí)驗(yàn)?zāi)康?/p>
2、實(shí)驗(yàn)設(shè)備、儀器及材料
3、實(shí)驗(yàn)內(nèi)容
一般實(shí)驗(yàn): 3.1實(shí)驗(yàn)方案設(shè)計(jì)與選擇(設(shè)計(jì)性、創(chuàng)新性實(shí)驗(yàn)需寫該項(xiàng)內(nèi)容)3.2實(shí)驗(yàn)原理及實(shí)驗(yàn)步驟(實(shí)驗(yàn)工作原理或?qū)嶒?yàn)的主要操作過程)3.3實(shí)驗(yàn)記錄(核心代碼及調(diào)試過程)
注解:理工科實(shí)驗(yàn)需記錄實(shí)驗(yàn)過程中的數(shù)據(jù)、圖表、計(jì)算、現(xiàn)象觀察等,實(shí)驗(yàn)過程中出現(xiàn)的問題; 其它如在計(jì)算機(jī)上進(jìn)行的編程、仿真性或模擬性實(shí)驗(yàn)需記錄程序核心代碼以及程序在調(diào)式過程中出現(xiàn)的問題及解決方法;記錄程序執(zhí)行的結(jié)果。
上機(jī)實(shí)驗(yàn):
3.1上機(jī)實(shí)驗(yàn)的內(nèi)容及要求
3.2算法設(shè)計(jì)思想與算法實(shí)現(xiàn)步驟 3.3程序核心代碼,程序調(diào)試過程中出現(xiàn)的問題及解決方法 3.4 程序運(yùn)行的結(jié)果
4、實(shí)驗(yàn)總結(jié)
4.1實(shí)驗(yàn)結(jié)果分析及問題討論 4.2實(shí)驗(yàn)總結(jié)心得體會
注解:實(shí)驗(yàn)總結(jié)的內(nèi)容根據(jù)不同學(xué)科和類型實(shí)驗(yàn)要求不一樣,一般理工科類的實(shí)驗(yàn)需要對實(shí)驗(yàn)結(jié)果進(jìn)行分析,并且對實(shí)驗(yàn)過程中問題進(jìn)行討論;在計(jì)算機(jī)上進(jìn)行的編程、仿真性或模擬性實(shí)驗(yàn)需要對上機(jī)實(shí)踐結(jié)果進(jìn)行分析,上機(jī)的心得體會及改進(jìn)意見。其它實(shí)驗(yàn)應(yīng)總結(jié)實(shí)驗(yàn)過程寫出心得體會及改進(jìn)意見。
1、實(shí)驗(yàn)?zāi)康?1)熟悉c語言的集成環(huán)境,了解菜單的使用方法。(2)掌握c語言程序上機(jī)的編輯、編譯、連接、運(yùn)行的基本步驟。(3)了解c語言程序的結(jié)構(gòu)。
2、實(shí)驗(yàn)設(shè)備、儀器及材料(1)硬件環(huán)境
微型計(jì)算機(jī)(intel x86系列cpu)一臺(2)軟件環(huán)境 windows98/2000/xp操作系統(tǒng) vc6.0集成開發(fā)環(huán)境
3、實(shí)驗(yàn)內(nèi)容
3.1上機(jī)實(shí)驗(yàn)的內(nèi)容及要求(1)熟悉vc中常用菜單項(xiàng)及對應(yīng)快捷鍵的使用方法。(2)熟悉c語言程序上機(jī)的編輯、編譯、連接、運(yùn)行的基本步驟。(3)編程實(shí)現(xiàn)一個字符串的輸出。(4)編程輸出兩個數(shù)的最大值。(5)計(jì)算由鍵盤輸入的任意兩個整數(shù)的積。3.2算法設(shè)計(jì)思想與算法實(shí)現(xiàn)步驟(1)編程實(shí)現(xiàn)一個字符串的輸出為程序一,編程中,定義一個空函數(shù)后,直接由利用printf輸出字符串。(2)編程輸出兩個數(shù)的最大值為程序二,編程中,用scanf函數(shù)輸入兩個數(shù),再用選擇函數(shù)判定兩數(shù)大小,最后用printf函數(shù)輸出最大值。(3)計(jì)算由鍵盤輸入的任意兩個整數(shù)的積為程序三,編程中,用scanf函數(shù)輸入兩數(shù),再由乘積函數(shù)進(jìn)行求積運(yùn)算。
3.3程序核心代碼,程序調(diào)試過程中出現(xiàn)的問題及解決方法
(1)程序核心代碼
程序一:
#include
#include
#include
當(dāng)分別添加上丟失的符號后,問題解決,程序編輯成功。3.4 程序運(yùn)行的結(jié)果
程序一運(yùn)行結(jié)果:
程序二運(yùn)行結(jié)果:
程序三運(yùn)行結(jié)果:
4、實(shí)驗(yàn)總結(jié)
4.1程序運(yùn)行結(jié)果分析及思考題討論
根據(jù)程序運(yùn)行結(jié)果和編程之前的預(yù)期結(jié)果一致,說明編程成功。
對于程序的結(jié)構(gòu)應(yīng)該熟記在心,而且在vc6.0集成開發(fā)環(huán)境中不需要用戶去進(jìn)行連接的操作,這一步的操作電腦會自動完成。4.2實(shí)驗(yàn)總結(jié)心得體會
對第一次c語言編程上機(jī)實(shí)驗(yàn),對編程還有很多不是很熟悉的地方,需要在接下來的學(xué)習(xí)中進(jìn)一步熟
練掌握操作。而且在以后的編程中對于printf,csanf函數(shù)的運(yùn)用將會更多。在編程中還必須小心翼翼,如果出現(xiàn)編譯錯誤,可參看界面下方的錯誤提示,這對于編程成功很有幫助。
1、實(shí)驗(yàn)?zāi)康钠篶程序設(shè)計(jì)實(shí)驗(yàn)三實(shí)驗(yàn)報告
實(shí) 驗(yàn) 報 告
工學(xué)院 土木工程專業(yè) 09級 2011 至 2012 學(xué)年度 第 1 學(xué)期
學(xué)號:xxxxxx 姓名:xxxxxx 2011 年10月 08日 第3~4節(jié) 綜合 樓 325教室 篇三:c語言實(shí)驗(yàn)報告1 實(shí)驗(yàn)名稱:熟悉c程序的運(yùn)行環(huán)境
一、實(shí)驗(yàn)?zāi)康暮鸵?/p>
了解turbo c++ 3.0的基本操作方法,學(xué)會獨(dú)立使用該系統(tǒng)
編輯、編譯、連接和運(yùn)行一個c程序
通過運(yùn)行簡單的c程序,初步了解c源程序的特點(diǎn)
二、實(shí)驗(yàn)內(nèi)容和原理
1.輸入并運(yùn)行一個簡單、正確的程序 # include
三、實(shí)驗(yàn)環(huán)境 1.硬件:pc機(jī);
2.軟件:windows操作系統(tǒng)、turboc++ 3.0。
四、算法描述及實(shí)驗(yàn)步驟 1.內(nèi)容1(1)啟動tc++3.0,新建一個c文件;
(2)輸入程序1;
(3)保存文件;
(4)編譯源程序,觀察屏幕上顯示的編譯信息,修改出現(xiàn)的錯誤,直到編譯成功,再次保存文件;
(5)連接程序、運(yùn)行程序,觀察運(yùn)行結(jié)果。2.內(nèi)容2(1)啟動tc++3.0,新建一個c文件;
(2)輸入程序2;
(3)保存文件;
(4)編譯源程序,觀察屏幕上顯示的編譯信息,修改出現(xiàn)的錯誤,直到編譯成功;
(5)連接程序、運(yùn)行程序,觀察運(yùn)行結(jié)果。3.內(nèi)容3(1)啟動tc++3.0,新建一個c文件;
(2)輸入程序2;
(3)保存文件;
(4)編譯源程序,觀察屏幕上顯示的編譯信息,修改出現(xiàn)的錯誤,直到編譯成功;
(5)連接程序、運(yùn)行程序;
(6)輸入數(shù)據(jù),觀察運(yùn)行結(jié)果。
五、調(diào)試過程
1.輸入后,按alt+f9編譯,出現(xiàn)如下信息:
成功編譯。
2.輸入后,按alt+f9編譯,出現(xiàn)如下信息:
經(jīng)分析是由于int a, b, sum與sum=a+b倆句未加;導(dǎo)致。3.輸入后,按alt+f9編譯,出現(xiàn)如下信息:
經(jīng)分析是由于int a, b, c句未加;導(dǎo)致。
修改后編譯結(jié)果如下:
六、實(shí)驗(yàn)結(jié)果
1.2.3.輸入123,654運(yùn)行結(jié)果如下:
輸入1989,1988運(yùn)行結(jié)果如下:
七、總結(jié)
經(jīng)過本次上機(jī)實(shí)驗(yàn),我基本了解turbo c++ 3.0的操作方法,學(xué)會在該系統(tǒng)上編輯、編譯、連接和運(yùn)行一個c程序。同時也明白在編譯過程中應(yīng)留心一些細(xì)節(jié)問題(如一個語句結(jié)束要加“;”),也學(xué)會通過編譯錯誤信息找出錯誤,并修正錯誤。
實(shí)驗(yàn)名稱:數(shù)據(jù)類型、函數(shù)和表達(dá)式
八、實(shí)驗(yàn)?zāi)康暮鸵?/p>
掌握c語言數(shù)據(jù)類型,熟悉如何定義整型、字符型和實(shí)型變量并賦值 掌握不同類型數(shù)據(jù)之間賦值的規(guī)律
學(xué)會使用c的有關(guān)算法運(yùn)算符及表達(dá)式,特別是自加(++)和自減(--)運(yùn)算符的使用 進(jìn)一步熟悉c程序的編輯、編譯、連接和運(yùn)行的過程
九、實(shí)驗(yàn)內(nèi)容和原理
2.輸入并運(yùn)行下面程序,分析運(yùn)行結(jié)果。# include
m=++i; n=j++; printf(%d,%d,%d,%d,i,j,m,n); }
十、實(shí)驗(yàn)環(huán)境 1.硬件:pc機(jī);
2.軟件:windows操作系統(tǒng)、turboc++ 3.0。
十一、算法描述及實(shí)驗(yàn)步驟
(1)啟動tc++3.0,新建一個c文件;
(2)輸入程序;
(3)保存文件;
(4)編譯源程序,觀察屏幕上顯示的編譯信息,修改出現(xiàn)的錯誤,直到編譯成功;
(5)連接程序、運(yùn)行程序,觀察分析運(yùn)行結(jié)果。
十二、調(diào)試過程 1.經(jīng)分析錯誤是由于printf(%c%c, c1, c2)后未加;導(dǎo)致。
修改后運(yùn)行如下:
2.成功運(yùn)行 3.printf(%u, %un a, b);改成printf(%u, %un, a, b);成功運(yùn)行 4.
成功運(yùn)行。
十三、實(shí)驗(yàn)結(jié)果 1.2.3.4.十四、總結(jié)篇四:c程序?qū)嶒?yàn)報告
《程序設(shè)計(jì)綜合訓(xùn)練》
第一部分 設(shè) 計(jì) 報 告 專 業(yè): 軟件工程 班 級: 12軟件1 學(xué) 號: 12144131 姓 名: 陳 雷 指導(dǎo)教師: 錢 進(jìn)、呂 萍 成 計(jì)算機(jī)工程學(xué)院 2013年3月 目 錄
(1)題目名稱、內(nèi)容、來源(如2010年省計(jì)算機(jī)等級考試秋季上機(jī)試卷2)。
(2)解題的基本思路,(3)設(shè)計(jì)方案,功能模塊框圖與程序流程圖等。
(4)算法設(shè)計(jì):算法描述、實(shí)現(xiàn)方法、詳細(xì)流程圖等。
(5)源代碼:主要模塊的代碼與注釋。
(6)程序調(diào)試:調(diào)試過程與步驟,發(fā)現(xiàn)的問題,解決的辦法等。
(7)測試:運(yùn)行程序,輸入測試數(shù)據(jù),判斷是否達(dá)到預(yù)期目的。測試數(shù)據(jù)要有
典型意義,要注意臨界值的選取,注意測試數(shù)據(jù)的廣泛性和普適性。第二部分
(1)題目名稱、內(nèi)容。
(2)解題的基本思路,(3)設(shè)計(jì)方案,功能模塊框圖與程序流程圖等。
(4)算法設(shè)計(jì):算法描述、實(shí)現(xiàn)方法、詳細(xì)流程圖等。
(5)程序調(diào)試:調(diào)試過程與步驟,發(fā)現(xiàn)的問題,解決的辦法等。
(6)測試:運(yùn)行程序,輸入測試數(shù)據(jù),判斷是否達(dá)到預(yù)期目的。測試數(shù)據(jù)要有
典型意義,要注意臨界值的選取,注意測試數(shù)據(jù)的廣泛性和普適性。
(7)總結(jié):收獲與體會,有實(shí)際內(nèi)容,忌空洞無物,忌千篇一律,400字左右。
(8)附錄:源代碼(含注釋)。
第一部分
2010秋03等級考試 1.編寫函數(shù)int noco(int n,int *a)。函數(shù)動能是驗(yàn)證是驗(yàn)證n的立方可表示為n個連續(xù)奇數(shù)之和,若找到這樣的表示則將連續(xù)奇數(shù)按從小到大的順序存放到a指向的數(shù)組中并且函數(shù)返回1,否則函數(shù)返回0。2.編寫函數(shù)main。函數(shù)功能是聲明數(shù)組a,分別用整數(shù)1~10及數(shù)組a作為實(shí)參調(diào)用函數(shù)noco,并將結(jié)果數(shù)據(jù)按以下屏幕輸出所示形式輸出到屏幕及文件myf2.out中。#include
printf(%d^3=,n);
} else {
printf(false);} fprintf(fp,false);fprintf(fp,%d^3=,n);for(i=0;i } k=k-2;for(j=0;j 1.編寫函數(shù)long find_m(int n)。函數(shù)功能是查找滿足以下條件的整數(shù)m:(1)m是 n的整數(shù)倍;(2)m的十進(jìn)制表示中僅由0和1組成。函數(shù)返回找到的m的值。2.編寫main 函數(shù)。函數(shù)功能是聲明變量n和m,輸入一個整數(shù)到n中(n<100), 用n作實(shí)參調(diào)用函數(shù)find_m,將n及找到的整數(shù)m輸出到屏幕及文件myf2.out.#include 一列(列下標(biāo)為0)和第二列(列下標(biāo)為1)的值按如下規(guī)則生成第3列各元素的值,再以行為單位重排a數(shù)組各行元素的值,使得所有行按第3列元素從小到大有序。 第3列生成規(guī)則: 用數(shù)組a作為實(shí)參調(diào)用cresort函數(shù),將a數(shù)組中數(shù)據(jù)輸出到屏幕及文件myf2.out.#include stdio.h #define n 5 int isprime(int m){ int i;} void cresort(int a[][3],int n){ int i,j,k,m,c,t;for(i=0;i switch(c){ case 0:a[i][2]=1;break;case 2:a[i][2]=4;break;for(i=2;i<=m/2;i++)if(m%i==0)return 0;return 1;篇五:c程序設(shè)計(jì)實(shí)驗(yàn)報告 《c語言程序設(shè)計(jì)》實(shí)驗(yàn)報告 學(xué)號 不告訴你哦~ 班級 信管一班 姓名 你猜猜~哈哈 一、實(shí)驗(yàn)題目 一、編程實(shí)驗(yàn) 猜數(shù)問題:輸入兩個整數(shù),并求這兩個整數(shù)的和,輸入所猜的結(jié)果,如果輸入數(shù)比正確的結(jié)果要大,提示“猜大了”;如果輸入數(shù)比正確的結(jié)果要小,提示“猜小了”;當(dāng)猜對結(jié)果時提示“猜對了”,結(jié)束游戲(用函數(shù)調(diào)用方式編程)。 二、程序改錯實(shí)驗(yàn) 輸入一個數(shù)字 b,求sum=b+bb+bbb+?,改正下列程序中的錯誤。#include “stdio.h” main(){ int i,j;long int b,sum,temp;scanf(“%d”,&b);do { i++;for(j=0;j<=i;j++)temp+=(long int)pow(10,j-1)*b;sum+=temp;} while(i<=3)printf(“sum=%d”,sum);} 三、編程實(shí)驗(yàn) 編寫兩個矩陣相加減的程序,兩矩陣的行列數(shù)均由用戶輸入(兩矩陣的行列數(shù)要限制最大值),在屏幕上分行列打印出結(jié)果(矩陣元素為整型變量)。 解析:兩個矩陣可以定義兩個二維數(shù)組matrixl[m][n],matrix2[m][n]存放,用二重循環(huán)進(jìn)行輸入輸出或?qū)崿F(xiàn)對應(yīng)元素的相加或相減運(yùn)算,相加后矩陣元素存放在matrixl中,相減后矩陣元素存放在matrix2中(上機(jī)實(shí)驗(yàn)時輸入矩陣的行數(shù)m=10, 矩陣的列數(shù)n=10)。 一、寫一個函數(shù)intdigit(int n,int k),它返回?cái)?shù)n的從右邊向左的第k個十進(jìn)數(shù)字位值。例如,函數(shù)調(diào)用digit(1234,2)將返回值3。 二、寫一個函數(shù)intisprime(intn),當(dāng)n是質(zhì)數(shù)時,函數(shù)返回非零值;當(dāng)n是合數(shù)時,函數(shù)返回零值。 三、寫一個函數(shù)reverse(chars[]),將字符串s[]中的字符存儲位置顛倒后重新存于s[]中。試分別用遞歸和非遞歸兩種形式編寫。 四、寫一個主函數(shù)輸入測試數(shù)據(jù)(自己指定),并調(diào)用上述函數(shù),檢查函數(shù)功能的正確性。要求:把預(yù)備知識、步驟、程序框圖、調(diào)試好的程序及存在的問題寫在下面(不夠可以附頁)。 #include #include intdigit(int n,int k); intisprime(intn); void reverse(chars[]);//非遞歸實(shí)現(xiàn) void reverse1(chars[]);//遞歸實(shí)現(xiàn) int digit(int n,int k) { int m1,m2,i; m1=n; m2=0; while(m1!=0)//統(tǒng)計(jì)n數(shù)字的位數(shù) { m1=m1/10; m2=m2+1; } if(k<=0||k>m2)return 0;//不能正確截取 m1=n; for(i=1;i m1=m1/10; m2=m1%10;//取第k位 return m2; } intisprime(intn)//是素?cái)?shù)返回1,是合數(shù)返回0 { int i; if(n<0) n=-n; if(n==1)return 0; for(i=2;i<=n/2;i++) if(n%i==0) break; if(i>n/2) return 1; else return 0; } void reverse(chars[],int len)//非遞歸,字符串倒置 { int i;char ch; for(i=0;i { ch=s[i];s[i]=s[len-1-i];s[len-1-i]=ch; } } voidreverse1(chars[],int m,int n)//遞歸方法實(shí)現(xiàn) { char ch; ch=s[m];s[m]=s[n];s[n]=ch; if(m<=n) reverse1(s,m+1, n-1); } void main() { int n=123456,k=4,len; char str[80]=“abcdefghij”,str1[80],str2[80]; if(digit(n,k)==0) printf(“%d輸入錯誤n”,k); else printf(“%d的右邊第%d位是:%dn”,n,k,digit(n,k)); if(isprime(k)==0) printf(“%d是合數(shù)n”,k); else printf(“%d是素?cái)?shù)n”,k); len=strlen(str); printf(“原字符串n”); strcpy(str1,str); puts(str1); reverse(str1,len); printf(“倒置以后的字符串n”); puts(str1); }printf(“原字符串n”);strcpy(str2,str);puts(str2);reverse1(str2,0,len-1);printf(“倒置以后的字符串n”);puts(str2); 實(shí)驗(yàn)報告 一、實(shí)驗(yàn)?zāi)康?/p> 通過使用一定的處理工具,用軟件方式實(shí)現(xiàn)光束入射到介質(zhì)界面上的反射和折射特性模擬。通過程序?qū)崿F(xiàn)自定參數(shù)以及隨機(jī)獲取參數(shù)的光路顯示。最終通過該實(shí)驗(yàn)使得自己對光學(xué)的折反射定律有更深的了解。 二、實(shí)驗(yàn)原理及方法 原理1(光的反射定律):在反射現(xiàn)象中,?反射光線,入射光線和法線都在同一個平面內(nèi);?反射光線,入射光線分居法線兩側(cè);?反射角等于入射角;(“三線共面,兩線分居,兩角相等”)。 原理2(光的折射定律):在折射現(xiàn)象中,?折射光線位于有入射光線和發(fā)現(xiàn)所決定的平面內(nèi);?折射角的正弦與入射角的正下按之比與入射角大小無關(guān),僅有兩種介質(zhì)的性質(zhì)決定。對于一定波長的光線而言,在一定溫度和壓力下,該比值是一常數(shù),等于入射光所在介質(zhì)的折射率n與折射光所在介質(zhì)n’之比,即:n’sinI’=nsinI(其中I,I’分別為入射角與折射角大小)。 在本次實(shí)驗(yàn)中,為了實(shí)現(xiàn)對光的折反射的模擬,我們采用了Matlab軟件,進(jìn)行仿真。利用Matlab中的GUI界面,進(jìn)行效果的顯示。 三、實(shí)驗(yàn)內(nèi)容及步驟 首先通過開啟Matlab軟件,打開其中的GUI窗口,效果如圖1.1所示 圖1.1 GUI開啟界面圖 然后通過適當(dāng)?shù)卦鎏硭璋存I及選項(xiàng),繪制如圖1.2所示的GUI窗口圖。 在圖1.2中,ni,nt,thi,thr,tht分別表示入射介質(zhì)的折射率,折射介質(zhì)的折射率,入射角大小,反射角大小以及折射角大小。 S1按鍵的作用:按下S1前需要手動在為“EditText”類型的ni,nt,thi中輸入三個參數(shù),當(dāng)按下S1時,在界面“axes1”中將顯示滿足上述三個參數(shù)的入射光線反射光線以及折射光線,并且會在其更新顯示各個“Edit Text”類型中的值。 S2按鍵的作用:按下S2按鍵后,將自動獲取“Edit Text”類型中ni,nt,thi三個參數(shù),并且將thi進(jìn)行8等分,將入射光線,反射光線,折射光線進(jìn)行動態(tài)顯示,并且更新顯示結(jié)果。 S3按鍵的作用:按下S3按鍵后,用鼠標(biāo)在“axes1”界面中的區(qū)域內(nèi)(當(dāng)前由于程序的設(shè)定,只能獲取鼠標(biāo)在0 在其中按鍵“Update”作用不大,僅僅是在對界面進(jìn)行初始化(沒有這一按鍵也可,因?yàn)樵赟1,S2,S3按鍵中,都有初始化了)??梢赃m當(dāng)刪除不需要的按鍵。 圖1.2 GUI仿真界面圖 當(dāng)將一些要實(shí)現(xiàn)的功能定好后,就可以通過GUI所產(chǎn)生的M-file進(jìn)行編程了??梢酝ㄟ^右擊GUI仿真界面圖,如圖1.3所示。 圖1.3 GUI進(jìn)入M-file編輯示意圖 進(jìn)入M-file后,如圖1.4所示??梢酝ㄟ^各個按鍵的函數(shù)進(jìn)行編程,并且各個函數(shù)之間通過句柄(類似C語言中的指針)進(jìn)行相互之間的訪問以及數(shù)據(jù)的調(diào)用。 圖1.4 M-file編輯界面圖 最后通過適當(dāng)?shù)恼{(diào)節(jié)與不斷的修該,可以達(dá)到較好的仿真效果。 四、實(shí)驗(yàn)結(jié)果 當(dāng)按下S1按鍵后,結(jié)果如圖1.5所示。 圖1.5 S1按鍵后結(jié)果顯示效果圖 當(dāng)按下S2按鍵后,結(jié)果如圖1.6(其中動態(tài)顯示一步的截圖)所示。 圖1.6 S2按鍵后結(jié)果的效果顯示圖 當(dāng)按下S3按鍵后,結(jié)果如圖1.6所示。 圖1.6 S3按鍵后結(jié)果的效果顯示圖 在實(shí)驗(yàn)過程中,通過三個按鍵可以進(jìn)行自定參數(shù)以及隨機(jī)參數(shù)的選擇,并且將所得參數(shù)進(jìn)行顯示以及繪制光路。在按下S1按鍵時,實(shí)現(xiàn)自定參數(shù)的畫圖,所以需要先在左上角輸入3個參數(shù)(在實(shí)驗(yàn)內(nèi)容中已有介紹),在參數(shù)的輸入中,入射角要求小于90度,否則雖然有顯示,但是顯示出錯。在按下S3按鍵時,實(shí)現(xiàn)隨機(jī)獲取參數(shù)的畫圖,可以自動獲取鼠標(biāo)的位置坐標(biāo),但是對鼠標(biāo)的放置的位置范圍有要求(在實(shí)驗(yàn)內(nèi)容中已有介紹),這是由于在繪制光線的過程中的程序設(shè)定所限制的。否則當(dāng)鼠標(biāo)的位置超出所設(shè)定的要求范圍時,將自動按輸入的入射角為0度處理(這也是程序設(shè)定的)。這樣設(shè)定的目的是為了方便一般的視覺視圖,左上部分是入射光線,右上部分是反射光線,右下部分是折射光線。 五、實(shí)驗(yàn)分析 在本次實(shí)驗(yàn)中,遇到的主要問題有以下幾個: 問題 1、參數(shù)的限定條件。在實(shí)驗(yàn)過程中,按下S1按鍵后,只能通過設(shè)定3個參數(shù)(ni,nt,thi)進(jìn)行定參數(shù)的光線光路繪制,而不能通過其他參數(shù)的設(shè)定如ni,nt,tht或者ni,thi,tht等進(jìn)行光路的繪制。 問題 2、光路中的箭頭表示。在仿真圖中,當(dāng)入射角度過大(或者說折射角過大時),出現(xiàn)在折射光線上的箭頭很小甚至消失?,F(xiàn)象如圖1.7所示。 圖1.7 箭頭問題示意圖 可以看到,在圖1.7中,折射光線上的箭頭已經(jīng)看不見了。 對于問題1的解決方法可以在GUI界面中增加按鍵進(jìn)行指定參數(shù)的選擇,這個問題并不能反應(yīng)多少實(shí)質(zhì)性的光路問題,所以沒有對該問題進(jìn)行過多的探討。有時間可以通過增加按鍵進(jìn)行參數(shù)的設(shè)定選擇。 對于問題2的解決方法,因?yàn)楣馐鞘噶?,沒有方向就不能稱之為光線,所以應(yīng)該對其進(jìn)行詳細(xì)的解決。目前由于沒有做過合適的檢測,只能是通過優(yōu)化矢量函數(shù)quiver()來對達(dá)到預(yù)初效果。修改如圖1.8 所示。 圖1.8 箭頭問題修改后光路圖 可以明顯看到修改后在入射角56.0257(圖1.7中的入射角為54.9841)比之前的入射角還大的情況下,折射光線的箭頭很明顯可以觀察到。這是因?yàn)樵谔幚韱栴}2中,利用了quiver()進(jìn)行了優(yōu)化處理。為詳化分析有必要將此函數(shù)進(jìn)行簡單說明。 quiver(x,y,u,v,n,’m’)函數(shù),是畫二維矢量的函數(shù),其中x,y,表示矢量的起點(diǎn);u,v分別表示在矢量方向上的x,y方向上的增量;n表示對u,v的增量,并且該參數(shù)影響箭頭顯示的大小,系統(tǒng)默認(rèn)是1(實(shí)際上是0.9),可以通過調(diào)節(jié)n的值進(jìn)行箭頭大小的調(diào)節(jié),m表示進(jìn)行矢量畫線的顏色(b表示藍(lán)色,r表示紅色等等)。該函數(shù)使用的效果不理想的最終原因就是因?yàn)樵谶x定n以后,對于不同的u,v給出的箭頭大小不理想,而如何優(yōu)化箭頭大小以及箭頭顯示的位置成了一對矛盾的統(tǒng)一體。 由于該函數(shù)沒有確定終點(diǎn),所以在進(jìn)行畫線的時候沒有辦法準(zhǔn)確定好箭頭所在的位置,當(dāng)u,v較小時,如果(x,y)離(5,5)也很近,此時會使得箭頭接近折射光線的起點(diǎn),使得箭頭看起來不明顯,效果如圖1.9所示。 圖1.9 變量偏小時的問題示意圖 當(dāng)然,在增量u,v(此處指u,v的絕對值)較大的情況下,雖然(x,y)離(5,5)較近時會有較明顯的效果,但是當(dāng)(x,y)離(5,5)在遠(yuǎn)離一點(diǎn)點(diǎn),便會發(fā)生很大的偏差,可能突然就沒有了箭頭。不過,在此次編寫的程序中,我們固定了折射光線的起點(diǎn),即選擇(x,y)=(5,5)進(jìn)行折射光的光路繪制。顯然,當(dāng)u,v有較大的值,即在程序中折射角過大時,容易產(chǎn)生圖1.7中的現(xiàn)象,所以,我們選擇了在不同的角度下,選擇不同的矢量增量,即優(yōu)化了u,v的選擇,以及在不同的u,v情況下,對n給予不同的值,防止箭頭在某些情況下過大或者過小。當(dāng)然解決問題2的方法有很多,這只是其中的一種,也可以使用annotation()函數(shù),但是由于該函數(shù)需要對GUI窗口進(jìn)行歸一化,難以建立鼠標(biāo)坐標(biāo)與GUI窗口的對應(yīng)關(guān)系,所以沒有用該方法。對問題2的細(xì)節(jié)描述在程序中都有較詳細(xì)的說明(可以在M-file文件中的232至236即pushbutton4的Callback函數(shù)中查看)。 六、實(shí)驗(yàn)總結(jié) 通過本次實(shí)驗(yàn)加深了對光的折反射定律的理解以及對于Matlab中關(guān)于相關(guān)繪圖和仿真的應(yīng)用操作的了解。 《體育測量與評價》實(shí)驗(yàn)報告模板 課程名稱:體育測量與評價 實(shí)驗(yàn)名稱:ISAK全套人體測量指標(biāo)(共39項(xiàng))測試 一、預(yù)習(xí)報告 1.實(shí)驗(yàn)?zāi)康蘑偻ㄟ^實(shí)驗(yàn)強(qiáng)化體格及身體成分測量的有關(guān)知識和操作技能,培養(yǎng)系統(tǒng)的積累有關(guān)數(shù)據(jù)資料,樹立求真務(wù)實(shí)的風(fēng)氣,培養(yǎng)嚴(yán)謹(jǐn)?shù)目茖W(xué)研究工作能力和協(xié)作精神。 ②通過實(shí)際測量,準(zhǔn)確掌握測試點(diǎn)的定位,正確使用測量儀器,準(zhǔn)確讀數(shù);提高學(xué)習(xí)興趣,培養(yǎng)動手能力,理論聯(lián)系實(shí)際,將基本理論知識聯(lián)系到體育教學(xué)、運(yùn)動訓(xùn)練和科研的實(shí)際中去,培養(yǎng)對實(shí)際問題的分析處理能力,進(jìn)而為體育運(yùn)動實(shí)踐提供科學(xué)指導(dǎo)。 2.實(shí)驗(yàn)內(nèi)容 量度:體重(1項(xiàng)) 長度:身高、坐高、上臂、前臂、手長、髂前上棘高、大轉(zhuǎn)子高、大腿、小腿、脛骨長(10項(xiàng)) 寬度:肩寬、髂嵴、足長、胸寬、胸厚、肱骨、股骨(7項(xiàng)) 圍度:頭圍、頸圍、上臂放松、緊張圍、前臂、手腕、胸圍、腰圍、臀圍、大腿、大腿中、小腿、踝圍(13項(xiàng))身體成分:肱 三、肩胛、肱 二、髂嵴、髂前、腹部、、大腿前、小腿內(nèi)(8項(xiàng)) 3.實(shí)驗(yàn)條件 量度測量:杠桿式體重秤 長度測量:身高/坐高儀,長、短鋼直尺,兩米以上的卷尺,足長測量計(jì) 寬度測量:測徑規(guī) 圍度測量:帶狀軟尺 體成分測量:皮褶厚度計(jì) 二、實(shí)驗(yàn)操作與結(jié)果 1.實(shí)驗(yàn)方法、步驟 ①學(xué)習(xí)ISAK全套人體測量指標(biāo)(共39項(xiàng))測試的相關(guān)理論知識;測量方法、相關(guān)儀器使用方法、讀數(shù)、產(chǎn)生誤差的原因等。 ②測量上述指標(biāo),3人一組(被測人、測量員、記錄員)相互測量,完成3次測量,并將測量的結(jié)果填寫在表格中,計(jì)算出平均值或取中間值記錄,檢查準(zhǔn)確無誤后,再填寫電子版,打印后貼在實(shí)驗(yàn)報告的實(shí)驗(yàn)數(shù)據(jù)處。 ③討論交流測試各項(xiàng)指標(biāo)的心得體會,為自己或同學(xué)制定個人鍛煉計(jì)劃、體質(zhì)健康增強(qiáng)方案等提供參考數(shù)據(jù)。 2.實(shí)驗(yàn)現(xiàn)象、數(shù)據(jù)及觀察結(jié)果 見附表(要求將測試數(shù)據(jù)輸入表格后打印粘貼) 3.分析討論 圍繞受試者各項(xiàng)指標(biāo)的測量結(jié)果,根據(jù)以往學(xué)習(xí)基礎(chǔ),參考《國家學(xué)生體質(zhì)健康標(biāo)準(zhǔn)》,分析其目前體格和身體成分狀況,提出制定個人鍛煉計(jì)劃的設(shè)想或個人增強(qiáng)體質(zhì)健康的重點(diǎn)方向。 針對出現(xiàn)較多或較大誤差的測試項(xiàng)目,探尋原因,提出改進(jìn)措施。 西華大學(xué)學(xué)生上機(jī)實(shí)踐報告 西華大學(xué)上機(jī)實(shí)踐報告 課程名稱:網(wǎng)絡(luò)程序設(shè)計(jì)方法 指導(dǎo)教師:陳克力 上機(jī)實(shí)踐名稱:根據(jù)實(shí)驗(yàn)指導(dǎo)書填寫實(shí)驗(yàn)名稱 上機(jī)實(shí)踐編號:填寫第幾個實(shí)驗(yàn)(如實(shí)驗(yàn)1) 年級:2004 姓名: 學(xué)號: 組號:1 上機(jī)實(shí)踐成績:上機(jī)實(shí)踐日期:哪一天上機(jī)就填寫哪一天,不得隨意亂寫 上機(jī)實(shí)踐時間:例如9:40-11:40 一、目的本次上機(jī)實(shí)踐所涉及并要求掌握的知識點(diǎn)。 二、內(nèi)容與設(shè)計(jì)思想 上機(jī)實(shí)踐內(nèi)容(填寫自己實(shí)驗(yàn)的具體題目)、算法設(shè)計(jì)思想與算法實(shí)現(xiàn)步驟等。 三、使用環(huán)境 奔4計(jì)算機(jī),windows xp, Edipplus+IIS50+ACCESS編程環(huán)境 四、核心代碼及調(diào)試過程 詳細(xì)記錄核心代碼以及程序在調(diào)式過程中出現(xiàn)的問題及解決方法。 記錄程序執(zhí)行的結(jié)果。 五、總結(jié) 對上機(jī)實(shí)踐結(jié)果進(jìn)行分析,問題回答,上機(jī)的心得體會及改進(jìn)意見。 六、附錄 下面說明內(nèi)容,在正式上次實(shí)驗(yàn)報告時刪除之 (陳克力老師EMAIL:click_ckl@163.com 實(shí)驗(yàn)報告上交注意事項(xiàng):實(shí)驗(yàn)報告只上交電子檔,每一個實(shí)驗(yàn)單獨(dú)交一個文檔,文件名取名規(guī)則為:完整的學(xué)號+姓名+實(shí)驗(yàn)N.doc例如:200409010527封寅達(dá)實(shí)驗(yàn)1.doc;如果文件名取錯,造成的遺失由學(xué)生自己負(fù)責(zé)認(rèn)真準(zhǔn)備填寫實(shí)驗(yàn)報告表頭信息,不得有誤第二篇:C語言實(shí)驗(yàn)報告,含遞歸(帶程序)
第三篇:工程光學(xué)實(shí)驗(yàn)報告及程序完美總結(jié)
第四篇:實(shí)驗(yàn)報告
第五篇:實(shí)驗(yàn)報告