第一篇:中南大學程序設計基礎實踐報告
中南大學
程序設計基礎實踐報告
題 目 基本知識單項訓練 學生姓名 LZJ 指導教師 穆 帥 學 院 信息科學與工程學院 專業(yè)班級 計算機科學與技術 完成時間 2014年1月10日
目錄
第一章 設計目的........................................................1 第二章 設計內容及過程..................................................1 2.1 漢諾塔程序.........................................................1 2.1.1設計目標.......................................................1 2.1.2數(shù)據(jù)結構設計...................................................1 2.1.3主要算法說明...................................................2 2.2冒泡法排序及其改良..................................................3 2.2.1設計目標.......................................................3 2.2.2數(shù)據(jù)結構設計...................................................4 2.2.3主要算法說明...................................................4 2.3選擇法排序及其改良..................................................5 2.3.1設計目標.......................................................5 2.3.2數(shù)據(jù)結構設計...................................................6 2.3.3主要算法說明...................................................6 2.4統(tǒng)計字母出現(xiàn)的頻率..................................................7 2.4.1設計目標.......................................................7 2.4.2數(shù)據(jù)結構設計...................................................7 2.4.3主要算法說明...................................................7 2.5實現(xiàn)一個程序的多次調試..............................................8
第三章 運行結果........................................................9 3.1 漢諾塔程序運行情況.................................................9 3.2 兩種冒泡法的結果及耗時對比........................................11 3.3 兩種選擇法的結果及耗時對比........................................13 3.4統(tǒng)計字符出現(xiàn)的頻率運行結果.........................................14 第四章 總結...........................................................15 4.1 本次程序設計所遇到的問題及解決過程................................15 4.2 從課程設計得到的感悟..............................................17 致 謝.................................................................17 附錄..................................................................17 參考文獻..............................................................23
第一章 設計目的
進一步加深、鞏固所學專業(yè)課程《C語言程序設計》的基本理論知識,理論聯(lián)系實際,進一步培養(yǎng)自己綜合分析問題和解決問題的能力。掌握運用C語言獨立地編寫、調試應用程序和進行其它相關設計的技能。具體來說:
一.掌握以“漢諾塔程序”為典例的遞歸思想的運用。
二.學會靈活使用“冒泡法”和“選擇排序法”等排序方法,并且通過探索,將各種方法進一步改良,提高程序運行的效率。
三.通過對以“統(tǒng)計字母出現(xiàn)的頻率”的程序設計,掌握二維數(shù)組的賦值,各字符個數(shù),所有字符的總個數(shù)等算法。四.經過這幾個單項訓練,提高自己的綜合編程能力,為今后開發(fā)高難度的程序打下良好的基礎。
第二章 設計內容
2.1 漢諾塔程序
2.1.1設計目標
用遞歸方法實現(xiàn)漢諾塔程序,顯示盤子的移動次數(shù)和移動過程,盤子總數(shù)可作為程序參數(shù)在運行程序時輸入。
漢諾塔是個古老而又經典的游戲,在用程序實現(xiàn)它之前,我們可以先了解一下相關信息與集體規(guī)定。
漢諾塔:漢諾塔(又稱河內塔)問題是源于印度一個古老傳說的益智玩具。大梵天創(chuàng)造世界的時候做了三根金剛石柱子,在一根柱子上從下往上按照大小順序摞著64片黃金圓盤。大梵天命令婆羅門把圓盤從下面開始按大小順序重新擺放在另一根柱子上。并且規(guī)定,在小圓盤上不能放大圓盤,在三根柱子之間一次只能移動一個圓盤。
2.1.2數(shù)據(jù)結構設計
本小程序使用的數(shù)據(jù)類型是主要為整型。定義變量時,部分代碼如下:
void f(int num,int t1,int t2, int t3,int &cishu)
盤子個數(shù) 整型 int num; 第一個塔 整型 int t1;第二個塔 整型 int t2;第三個塔 整型 int t3;盤子移動的次數(shù) 整型 int cishu;
2.1.3主要算法說明
1.遞歸思想
如果不使用遞歸方法進行思維,這個問題會讓人摸不著頭緒。如果運用遞歸方法,就會變得簡單。
首先,我們了解一下什么是遞歸調用思想。
遞歸調用是一種特殊的嵌套調用,是某個函數(shù)調用自己,而不是另外一個函數(shù)。遞歸調用一種解決方案,一種是邏輯思想,將一個大工作分為逐漸減小的小工作,比如說一個和尚要搬50塊石頭,他想,只要先搬走49塊,那剩下的一塊就能搬完了,然后考慮那49塊,只要先搬走48塊,那剩下的一塊就能搬完了??,遞歸是一種思想,只不過在程序中,就是依靠函數(shù)嵌套這個特性來實現(xiàn)了。
2.遞歸思想在漢諾塔程序中的具體運用
接下來,我們看看如何將遞歸思想運用到漢諾塔程序中。
若只有一個盤子,則是直接從第一個塔t1移動號到第三個塔t3(這就是這個函數(shù)的遞歸出口);
若有一個以上的盤子時(設為n個),則考慮一下的步驟:(1).借助第三個塔,將n-1盤子從第一個塔t1移到第二個塔t2;(2).將剩余的最大的盤子由第一個塔t1直接移到第三個塔 t2;
(3).借助第一個塔,將第二個塔t2上的n-1盤子移到第三個塔t3;(4.)反復進行以上操作,直到剩下最后一個盤子,到達遞歸出口。
3.主要函數(shù)的具體解析 該程序中運用到的自定義函數(shù)為
void f(int num,int t1,int t2, int t3,int &cishu)1 2
此為漢諾塔核心函數(shù);
3
(1)用if(num==1)
(2)用else{} 計算盤子數(shù)目num大于1的情況;
(3)在main()函數(shù)中,用scanf()獲取想要移動的盤子的總個數(shù)num,然后調用自定義函數(shù)f(),用printf()輸出“執(zhí)行過程”與“移動次數(shù)cishu”。
4.網(wǎng)絡上類似算法的展示:
{printf(“%d-> %dn”,t1,t3);cishu++;}作為函數(shù)的遞歸出口;
其實算法非常簡單,當盤子的個數(shù)為n時,移動的次數(shù)應等于2^n – 1(有興趣的可以自己證明試試看)。后來一位美國學者發(fā)現(xiàn)一種出人意料的簡單方法,只要輪流進行兩步操作就可以了。首先把三根柱子按順序排成品字型,把所有的圓盤按從大到小的順序放在柱子A上,根據(jù)圓盤的數(shù)量確定柱子的排放順序:若n為偶數(shù),按順時針方向依次擺放 A B C;
若n為奇數(shù),按順時針方向依次擺放 A C B。
⑴按順時針方向把圓盤1從現(xiàn)在的柱子移動到下一根柱子,即當n為偶數(shù)時,若圓盤1在柱子A,則把它移動到B;若圓盤1在柱子B,則把它移動到C;若圓盤1在柱子C,則把它移動到A。
⑵接著,把另外兩根柱子上可以移動的圓盤移動到新的柱子上。即把非空柱子上的圓盤移動到空柱子上,當兩根柱子都非空時,移動較小的圓盤。這一步沒有明確規(guī)定移動哪個圓盤,你可能以為會有多種可能性,其實不然,可實施的行動是唯一的。
⑶反復進行⑴⑵操作,最后就能按規(guī)定完成漢諾塔的移動。所以結果非常簡單,就是按照移動規(guī)則向一個方向移動盤子: 如3階漢諾塔的移動:A→C,A→B,C→B,A→C,B→A,B→C,A→C
2.2 冒泡法排序及其改良
2.2.1設計目標
冒泡法排序:敘述冒泡法排序和改進冒法泡排序的基本思想,用程序實現(xiàn)這兩種排序算法,輸入多組數(shù)據(jù)進行測試,統(tǒng)計對比這兩種排序算法的排序耗時,并說 3
明這種結果出現(xiàn)的原因。
2.2.2數(shù)據(jù)結構設計
本程序主要使用數(shù)據(jù)類型為數(shù)組類型和整型類型,具體如下:
存放一系列隨機數(shù)字 整型數(shù)組 長度為200 int a[200] 形參 整型數(shù)組 int b[]; 形參 整型 int k;
要排列的數(shù)字個數(shù) 整型 int m; 循環(huán)所用的變量 整型 int i,j;交換兩個數(shù)字的中間量 整型 Int t, 有沒有發(fā)生交換的標志 整型Int biaozhi;
2.2.3主要算法說明
1.冒泡法的主要思想
相鄰兩個數(shù)比較,若前面數(shù)打,則兩數(shù)交換位置,直到最后一個元素被處理,最大的元素“沉”到下面,從而完成排序。這樣如有n個元素,共進行n-1趟,每趟讓剩余元素中最大的元素“沉到”下面,從而完成排序。
2.冒泡法的改良思想
事實上,n-1趟是最多的排序趟數(shù),而只要在某一趟的排序中沒有進行一次元素交換,說明已經排好序,可以提前退出外循環(huán)。如此一來,就減少了循環(huán)的次數(shù),從而提高的程序的執(zhí)行效率。3.程序中主要函數(shù)的解析(1)核心函數(shù)Maopao()用外循環(huán)for(j=0;j 用內循環(huán)for(i=0;i (3)biaozhi的具體解釋: 如果有交換,biaozhi=1,繼續(xù)循環(huán); 如果沒有交換,biaozhi=0不變,用break提前結束循環(huán)。(4)在main()函數(shù)中,用scanf()獲取想要排列的數(shù)字的個數(shù); 用printf()輸入排序后的元素。 4.改良前與改良后的兩個程序的具體原因分析 兩個程序中排序是由自定義的maopao()函數(shù)實現(xiàn)的,其中數(shù)組b[]沒有說明長度,而是通過另一形參k來決定實參與形參數(shù)組元素結合的個數(shù)(簡單來說就是排序的元素是幾個由自己決定,通過scanf()來獲?。捎跀?shù)組名作為函數(shù)參數(shù)時,傳遞的是數(shù)組的起始地址,形參與實參共用相同的存儲區(qū)域,maopao()函數(shù)中將b數(shù)組排好序,也就是將a排好序。 改良的程序通過增加變量biaozhi來實現(xiàn)改良效果,具體如下:(1)如果有交換,biaozhi=1,繼續(xù)循環(huán); (2)如果沒有交換,biaozhi=0不變,用break提前結束循環(huán)。 如此一來,減少了循環(huán)次數(shù),提高程序執(zhí)行效率。 2.3選擇法排序及其改良 2.3.1設計目標 選擇法排序:敘述選擇法排序和改進選擇法排序的基本思想,用程序實現(xiàn)這兩種排序算法,輸入多組數(shù)據(jù)進行測試,統(tǒng)計對比這兩種排序算法的排序耗時,并說明這種結果出現(xiàn)的原因。 2.3.2數(shù)據(jù)結構設計 本程序主要使用數(shù)據(jù)類型為數(shù)組類型和整型類型,具體如下: 存放一系列隨機數(shù)字 整型數(shù)組 長度為200 int x[200] 要排列的數(shù)字個數(shù) 整型 int n; 循環(huán)所用的變量 整型 int a,b;始終存放本趟最小元素的下標 整型 int k;交換兩個數(shù)字的中間量 整型 Int t, 5 2.3.3主要算法說明 1.選擇法的基本思想 選擇法的基本思想是:先將第一個元素作為最小者,與后面元素比較,如第一個元素大,則與其交換(保證第一個元素總是最小的),直到與最后一個元素比較晚,第一趟就找出了最小元素,且保存在第一個元素位置。再以第二個元素作為最小者(次小)與后面元素比較,若后面元素下,則交換,直到最后一個元素,第二小的元素已找到。依此類推。經過n-1趟后排定。2.選擇法的改良思想 事實上,只要記住比較時小元素的位置,即下標,在內循環(huán)結束后做一次交換即可,從而提高程序執(zhí)行的效率。3.具體函數(shù)的解析 本程序僅使用了主函數(shù)main()(1)用第一個循環(huán)for(a=0;a<=n-1;a++);scanf(“%d,”,&x[a]);來實現(xiàn)獲取要排序的數(shù)字的總個數(shù);(2)用兩重循環(huán)來實現(xiàn)排序。 外層循環(huán)for(a=0;a<=n-1;a++)控制排序的趟次,若數(shù)組有n個元素,則共進行n-1趟。 (3)內層循環(huán) for(b=a+1;b<=n-1;b++)完成,在剩余的數(shù)中選擇最小的數(shù),比較次數(shù)隨趟數(shù)遞減,循環(huán)控制變量b的初值與外循環(huán)執(zhí)行次數(shù)有關:b=a+1,終值為n。當后面元素較大時,馬上交換。 (4)用for(a=0;a<=n-1;a++);printf(“%d,”,&x[a])輸入排序后的元素。4.改良程序比原來的程序執(zhí)行效率高的原因的分析 經過對測試結果(詳情見下章運行結果)分析,第二個改良的程序效率明顯比原來的程序高效得多,第二個程序中與第一個程序的不同點如下: for(a=0;a if(x[k]>x[b])k=b;/*記住新的小元素的序號,在內循環(huán)結束后才和最后一個數(shù)實現(xiàn)交換*/ if(k!=a){ t=x[a];/*若k不等于i,說明a[i]不是最小的數(shù),需要交換*/ x[a]=x[k];x[k]=t;} 變量K記住比較時小元素的位置,即下標,在內循環(huán)結束后做一次交換即可,從而提高程序執(zhí)行的效率。 2.4 統(tǒng)計各字母出現(xiàn)的頻率 2.4.1設計目標 統(tǒng)計字符出現(xiàn)的頻率:二維字符數(shù)組中保存了很多字母,運行程序,計算各個字母出現(xiàn)的頻率(頻率=出現(xiàn)的次數(shù)/總字母數(shù)),并將頻率顯示出來。 2.4.2數(shù)據(jù)結構設計 本程序主要使用數(shù)據(jù)類型為數(shù)組類型和整型類型,具體如下: 存放一系列隨機字母的字符型二維數(shù)組 int s[10][10];存放的所有字母的總個數(shù) 浮點型 float n; 循環(huán)所用的變量 整型 int i,j;表示26個大寫字母的各個次數(shù)的數(shù)組 整型 int da[26];表示26個小寫字母的各個次數(shù)的數(shù)組 整型 int xiao[26]; 2.4.3主要算法說明 (1)gets(s[0]);調用gets()函數(shù)計算獲取字母;(2) n=strlen(s[0]);調用strlen函數(shù),計算整個二維數(shù)組的字母總個數(shù);(3) 用外循環(huán)for(i=0;i<10;i++) 內循環(huán) for(j=0;j<10;j++)對輸入的一系列字母進行掃描 如果 if(s[i][j]>='A'&&s[i][j]<='Z')判斷是否為大寫字母 對應的大寫字母的次數(shù)自加一次 da[s[i][j]-'A']++; 如果else if(s[i][j]>='a'&&s[i][j]<='z')判斷是否為小寫字母 7 對應的小寫字母的次數(shù)自加一次 xiao[s[i][j]-'a']++; (4)最后再用一個for循環(huán)輸出運行結果 for(k=0;k<26;k++){ if(da[k]!=0)printf(“%c的個數(shù)為:%dn 出現(xiàn)頻率為:%f n”,k+'A',da[k],da[k]/n); //k+'A'為大寫字母,da[k]為此字母的個數(shù);n為總字母數(shù) if(xiao[k]!=0)printf(“%c的個數(shù)為:%dn 出現(xiàn)頻率為:%f n”,k+'a',xiao[k],xiao[k]/n);//k+'a'為小寫字母,xiao[k]為此字母的個數(shù);n為總字母數(shù) } 2.5實現(xiàn)一個程序的多次調試 最簡單的算法說明: 在主函數(shù)中增加如下一部分,可實現(xiàn)這樣的功能: 運行程序時,若輸入任意鍵,則程序開始正式進行;并且可以輸入多組數(shù)據(jù)進行調試,最后按Ctrl+Z(記得加回車)可以結束程序。char x;8 printf(“請輸入任意鍵開始程序,若輸入Ctrl+Z則結束程序n”);while(scanf(“%c”,&x)!=EOF){ /*所要運行的步驟的內容*/}; 第三章 運行結果 3.1 漢諾塔程序運行情況 9 注:以上圖片分別實現(xiàn)了盤子數(shù)為2,3,5時的漢諾塔程序的執(zhí)行過程; 同時也展示了2.5中所提到的功能 “在主函數(shù)中增加如下一部分,可實現(xiàn)這樣的功能: 運行程序時,若輸入任意鍵,則程序開始正式進行;并且可以輸入多組數(shù)據(jù)進行調試,最后按Ctrl+Z(記得加回車)可以結束程序?!? 10 3.2 兩種冒泡法的結果及耗時對比 11 12 注:此為第一種冒泡法方法的某次截圖。 輸入200個隨機數(shù)字,經過5次試驗取平均值,成功排序的時間大約1.1秒;輸入相同的隨機數(shù)據(jù):改良后的冒泡法成功排序平均時間為0.8秒。提高了不少的效率。13 3.3 兩種選擇法的結果及耗時對比 14 注:以上截圖為第一種選擇排序法方法的某次截圖。 輸入150個隨機數(shù)字,經過5次試驗取平均值,成功排序的時間大約0.9秒;輸入相同的隨機數(shù)據(jù):改良后的選擇法成功排序平均時間為0.6秒。提高了不少的效率。 3.4統(tǒng)計字符出現(xiàn)的頻率運行結果 15 注:以上截圖為分別兩次輸入一系列無序列大小寫字母后,計算出來的字母總個數(shù),每個字母的個數(shù)和頻率。 第四章 總結 4.1 本次程序設計所遇到的問題 1.怎么把遞歸思想運用到漢諾塔程序中? 剛開始我只了解遞歸出口是當盤子數(shù)目為1時,盤子由第一個塔移動到第三個塔,但是不知道當為n時應該怎么遞歸,因為這么普通的簡單遞歸函數(shù)如: 16 f(n)=5*f(n-1)還是有一定的區(qū)別的; 經過對課本的重新翻閱,我加深了對漢諾塔的理解,知道了遞歸的實現(xiàn)是要通過三步,首先是n-1個盤子借助第三個塔移到第二個塔,再把第一個塔剩下的最大的盤子移到第三個塔,然后,我們還要借助第一個塔,把n-1個盤子移到第三個塔; 如此一來,重復下去,就能實現(xiàn)遞歸的思想了。 2.冒泡法和選擇法的區(qū)別在于哪里? 起初,我對這兩個方法以及兩個方法的改良版有點混淆,只知道它們都是實現(xiàn)一系列隨機數(shù)字的有序排列。 然而,經過對這四個不同程序的認真分析和設計,我逐漸明白了: 冒泡法是在相鄰連個數(shù)之間進行比較,每趟把最大的數(shù)字放到最后面,如此循環(huán)下去(第二趟是第二大的數(shù)放到倒數(shù)第二個,依此類推)。 而改良后的冒泡法是把這些數(shù)字進行比較的同時,用一個biaozhi=0或1判斷數(shù)字是否發(fā)生了交換(也就是是否已經排好了),若沒有發(fā)生交換,則跳出循環(huán),這樣就減少了循環(huán)的次數(shù),提高了效率。 選擇法則是從第一個數(shù)開始,與后面的每一個數(shù)做比較,每比較一次,把小的數(shù)交換到第一個數(shù)的位置;(第二趟是把第二小的數(shù)放到第二個數(shù)的位置,依此類推); 而改良后的選擇法則是在第一個數(shù)字與后面的數(shù)字都比較后,最后再交換一次。 3.二維數(shù)組如何賦值,使用? 第一次寫 int s[10][10];gets(s);strlen(s);發(fā)現(xiàn)都有錯誤,程序無法通過; 經過反復測試,依然無法解決。后來我突然想起二維數(shù)組的地址問題,才知道s代表的是二維數(shù)組名,數(shù)組的首地址,無法直接賦值; 于是我嘗試了用s[0],也就是第0行第0列的元素地址替換s;程序成功運行。17 4.2 從課程設計得到的感悟 經過一個星期的上機實踐學習,使我對c語言有了更進一步的認識和了解,達到了課程設計起初的設計目的 掌握以“漢諾塔程序”為典例的遞歸思想的運用。 學會靈活使用“冒泡法”和“選擇排序法”等排序方法,并且通過探索,將各種方法進一步改良,提高程序運行的效率。 通過對以“統(tǒng)計字母出現(xiàn)的頻率”的程序設計,掌握二維數(shù)組的賦值,各字符個數(shù),所有字符的總個數(shù)等算法。 提高自己的綜合編程能力,為今后開發(fā)高難度的程序打下良好的基礎。 當然,我也體會到,要想學好C語言等編程語言,重在實踐,要通過不斷的上機操作才能更好地學習它,通過實踐,我也發(fā)現(xiàn)我的一些不足之處,比如基本的二維數(shù)組的使用還不夠熟練,不僅僅是學習c語言,還是其它的語言,以及其它的計算機方面的知識都要重在實踐,所以后在學習過程中,我會更加注視實踐操作,使自己便好地學好計算機。 [致謝] 首先,感謝廖勝輝老師對C語言的基本知識的教導,讓我對C語言的程序算法的制定,基本程序語句,選擇結構,循環(huán)結構,函數(shù)與編譯預處理,數(shù)組,指針,構造數(shù)據(jù)類型等知識有了基本的掌握; 此外,我還要感謝王建新教授,在他的新生課上,我們學到了冒泡法,選擇法,貪心法,窮舉法等一系列編程思想,這對我們有很大的啟蒙指導作用; 最后,我要感謝課程設計指導老師穆帥的悉心指導,在他的幫助下,我能學會獨立地思考一些算法,學會如何改進程序。在回答他的提問中,我也進一步提升自己的專業(yè)知識的口頭表達能力。此外,在寫課程設計的報告過程中,我也學到了寫報告的嚴謹性和規(guī)范性,這對我以后寫其他報告會有很大的幫助,十分感激。 [附錄] /*1.漢諾塔程序*/ #include printf(“%d-> %dn”,t1,t3);/*遞歸出口*/ cishu++;} else { f(num-1,t1,t3,t2,cishu); /*借助第三個塔,將n-1盤子從第一個塔移到第二個塔*/ printf(“%d-> %dn”,t1,t3); /*將剩余的最大的盤子由第一個塔直接移到第三個塔*/ cishu++; /*每移動一次盤子,cishu 的值加1*/ f(num-1,t2,t1,t3,cishu); /*借助第一個塔,將第二個塔上的n-1盤子移到第三個塔*/ } } main(){ int num;char x;printf(“請輸入任意鍵開始程序,若輸入Ctrl+Z則結束程序n”);while(scanf(“%c”,&x)!=EOF) { printf(“請輸入盤子個數(shù):n”);scanf(“%d”,&num);int cishu=0;printf(“執(zhí)行過程如下:n”);f(num,1,2,3,cishu);printf(“移動次數(shù)為: %dn”,cishu);} } /*2.1冒泡法*/ #include char x;printf(“請輸入任意鍵開始程序n”);while(scanf(“%c”,&x)!=EOF){ void maopao(int b[],int k);/*聲明實現(xiàn)排序的函數(shù) */ void shuchu(int b[],int k);/*聲明一個輸出函數(shù) */ printf(“n輸入要排序的元素的個數(shù):n”);scanf(“%d”,&m);printf(“n輸入對應的元素:n”);for(i=0;i scanf(“%d”,&a[i]);maopao(a,m);/* 調用函數(shù)*/ shuchu(a,m);} } void maopao(int b[],int k){ int i,j,t,biaozhi;for(j=0;j for(i=0;i if(b[i]>b[i+1])/*相鄰元素交換位置*/ { t=b[i]; b[i]=b[i+1]; b[i+1]=t; } } } void shuchu(int b[],int k)/*定義一個,輸出函數(shù)*/ { int i; for(i=0;i if(i%10==0) puts(“n”);/*每到十個數(shù),換行 */ printf(“%6d”,b[i]);} puts(“n”);} /*2.2冒泡法改良*/ #include main(){ int a[200];int i,m;void maopao(int b[],int k);/*聲明實現(xiàn)排序的函數(shù) */ void shuchu(int b[],int k);/*聲明一個輸出函數(shù) */ char x;printf(“請輸入任意鍵開始程序n”);while(scanf(“%c”,&x)!=EOF){ printf(“n輸入要排序的元素的個數(shù):n”);scanf(“%d”,&m);printf(“n輸入對應的元素:n”);for(i=0;i scanf(“%d”,&a[i]);maopao(a,m);/* 調用函數(shù)*/ shuchu(a,m);} } void maopao(int b[],int k){ int i,j,t,biaozhi;for(j=0;j biaozhi=0; for(i=0;i if(b[i]>b[i+1])/*相鄰元素交換位置*/ { t=b[i]; b[i]=b[i+1]; b[i+1]=t; biaozhi=1;/* 如果有元素的交換,biaozhi為1*/ } if(biaozhi==0)/*如果沒有交換,結束循環(huán) */ break;} } void shuchu(int b[],int k)/*定義一個,輸出函數(shù)*/ { int i;for(i=0;i if(i%10==0)21 } puts(“n”);/*每到十個數(shù),換行 */ printf(“%6d”,b[i]);} puts(“n”);/*3.1選擇法*/ #include printf(“請輸入%d個隨機數(shù)字:n”,n);for(a=0;a<=n-1;a++)scanf(“%d,”,&x[a]);/*用一個循環(huán)獲取n個隨機數(shù)字*/ for(a=0;a printf(“請輸入要排序的元素個數(shù):n”);scanf(“%d”,&n);printf(“請輸入%d個隨機數(shù)字:n”,n);for(a=0;a<=n-1;a++)scanf(“%d,”,&x[a]);for(a=0;a gets(s[0]);//調用gets()函數(shù)計算獲取字母 float n; printf(“%sn”,s); n=strlen(s[0]);//調用strlen函數(shù),計算整個二維數(shù)組的字母總個數(shù); printf(“字母的總個數(shù)為:n%fn”,n);int j,i,k, da[26]={0},xiao[26]={0};//每個大寫字母的個數(shù)da[k]表示,小寫字母為xiao[k], 23 // 下文通過 k+'A 得到對應的字母 //da[0]對應大寫A的個數(shù);da[1]代表B的個數(shù),以此類推 for(i=0;i<10;i++) for(j=0;j<10;j++){ if(s[i][j]>='A'&&s[i][j]<='Z')//判斷是否為大寫字母 da[s[i][j]-'A']++;//da[k]對應的字母k+'A'出現(xiàn)一次,則+1 else if(s[i][j]>='a'&&s[i][j]<='z')//判斷是否為小寫字母 xiao[s[i][j]-'a']++;} printf(“結果如下:nn”); for(k=0;k<26;k++){ if(da[k]!=0) printf(“%c的個數(shù)為:%dn 出現(xiàn)頻率為:n”,k+'A',da[k],da[k]/n); //k+'A'為大寫字母,da[k]為此字母的個數(shù);n為總字母數(shù) if(xiao[k]!=0) printf(“%c的個數(shù)為:%dn 出現(xiàn)頻率為:n”,k+'a',xiao[k],xiao[k]/n); //k+'a'為小寫字母,xiao[k]為此字母的個數(shù);n為總字母數(shù) } } [參考文獻] [1]李麗娟,馬淑萍.C語言程序設計.中國鐵道出版社,103-104,134-135.[2]譚浩強.C語言程序設計.清華大學出版社,149-155.[3]百度文庫.遞歸思想的解析 [4]嚴濤.Visual C++ 2008 程序設計簡明教程.清華大學出版社,30-55 %f %f 中南大學 本科生課程設計(實踐)任務書,設計報告 (大學計算機基礎) 題 目:武俠世界 學生姓名:張澤 指導老師:溫國海 學 院:粉末冶金研究院 專業(yè)班級:材化1401班 學生學號:0702140109 計算機基礎教學實驗中心 2014年1月7日 武俠世界 ——計算機實踐課程設計報告 一:任務內容 要想制作好一個網(wǎng)頁,首先要在整體上規(guī)劃好自己網(wǎng)站的主題和內容,確定 自己需要傳達給訪問用戶的主要信息,然后仔細斟酌,把自己所有要表達的意念合情合理地組織起來;其次,是設計一個富有個性的頁面式樣,務求盡善盡美。這樣制作出來的主頁才會清晰、明了、內容充實。我從小就受爸爸影響,喜歡武俠小說,對武俠有一種特殊的情感,并且對武俠的一些方面的情況有較深的理解,因此我 把這次計算機實踐課程的主題定為“武俠世界”。主題實踐報告由武俠概述,武俠大家,武俠各類作品以及一個著重介紹武俠小說代表人物——金庸的PPT等組成。報告以圖片和為主,而內容以武俠小說屋重點;而人物以金庸古龍為主。 二:設計步驟 因為我選擇以“武俠世界”作為我的網(wǎng)頁的主題,在設計網(wǎng)頁的時候,我強調一種俠骨柔腸,壯懷激烈的氛圍。根據(jù)我的主題內容,我將此次網(wǎng)頁設計為三個網(wǎng)頁,第一個網(wǎng)頁主要介紹“武俠文化”,簡潔地對其進行一個文化角度概述,而且我從網(wǎng)上搜集了豐富的圖片和文獻資料添到了網(wǎng)頁中,并且在圖片的選擇上我特別注重圖片色彩和材料的搭配。下面我具體介紹一下: 1、制作與我所選主題有關的PPT 我從網(wǎng)上搜集了一些關于武俠小說宗師——“金庸”的文獻和圖片,尤其是他的一些重大成果介紹和他的武俠作品,還有許多著名評論家對他的評價,并使用Powerpoint來將其制作成有七頁的PPT。 2、使用Dreamweaver來制作網(wǎng)頁 我新建了三個網(wǎng)頁,在介紹“武俠大家”的網(wǎng)頁二中,我使用了超鏈接將我制作的PPT掛到了這個網(wǎng)頁上,并且也同樣使用超鏈接連接上下一個網(wǎng)頁。在網(wǎng)頁各個網(wǎng)頁中,我尤其重視圖片的應用。實際上,一張好的圖片可以抵得上千言萬語,圖片比文字更加形象生動,也更加吸引瀏覽者的興趣。 三、方法技巧 1、制作PPT 我使用微軟公司推出的Powerpoint來制作PPT,它是最優(yōu)秀的演示文稿制作軟件之一,也是很簡單使用的多媒體整合平臺,我用Powerpoint制做了七張幻燈片,我在幻燈片制作過程中加入了藝術字,讓幻燈片變得更多彩,并且制作了幻燈片之間的動畫切換效果,插入合適的背景和圖片等等,通過圖文并茂的形式將實踐項目所要求的內容展現(xiàn)得更加生動。我在網(wǎng)頁的首頁插入了幾個動畫,一個動畫是實現(xiàn)字與“輝光”藝術效果的結合,一個動畫是圖片的轉換。并且加入了滾動式字幕,F(xiàn)lash技術的運用使得使得網(wǎng)頁“動靜結合”增加情趣與美感,從而與網(wǎng)頁所要表現(xiàn)得古箏的韻律美相呼應融合。并且我還做了圖畫運動。打開“幻燈片放映”菜單下的“自定義動畫”選項,就可以在屏幕右側出現(xiàn)“自定義動畫”任務窗口。動畫的整個設置過程就可以在這個窗口中完成,如果選中窗口底部的“自動預覽”選項,那么所添加的任何動畫效果都能在編輯區(qū)內得到實時的預覽。同時還可利用Powerpoint來做出一個自己滿意的圖片或者是文字的出現(xiàn)方式,這可讓我們的PPT更加多彩和多元化。 2、制作網(wǎng)頁 我使用Dreamweaver來制作網(wǎng)頁,Dreamweaver是世界頂級廠商adobe推出的一套擁有可視化編輯界面,它可以最快速地將PPT和Word文檔移到網(wǎng)頁上。Dreamweaver是唯一提供Roundtrip HTML、視覺化編輯與原始碼編輯同步的設計工具。1)插入表格 在文檔窗口中,將光標放在需要創(chuàng)建表格的位置,單擊“常用”快捷欄中的表格按鈕彈出的“表格”對話框,指定表格的屬性后,在文檔窗口中插入設置的表格。插入表格有助于我們規(guī)劃和美化網(wǎng)頁。2)插入圖像 點擊導航欄上的插入--->圖像,來插入圖片到頁面中,在網(wǎng)頁中插入圖片可以讓網(wǎng)頁變得更加漂亮、美觀,同時也更加吸引人。3)插入超鏈接 在常用功能下點擊超級鏈接圖標,點擊后,彈出超級鏈接對話框,在這里我們主要填寫鏈接和選擇目標,就可以了,然后點擊確定,還有一種方法添加超級鏈接就是選中文字后,在下方的屬性欄里css下的鏈接直接添加超級鏈接,設置好超級鏈接后,文字就會變成藍色的,并且在文字下方有下劃線。4)插入文本 要向Dreamweaver CS6文檔添加文本,可以直接在Dreamweaver CS6“文檔”窗口中鍵入文本,也可以剪切并粘貼。 用鼠標在文檔編輯窗口的空白區(qū)域點一下,窗口中出現(xiàn)閃動的光標,提示文字的起始位置,將文本中的文字素材復制/粘貼進來。5)保存 用鼠標點擊“文件”選項,在彈出的選項中選中“保存(S)”即可。 四:問題及解決過程 問 題1:設計網(wǎng)頁過程中無法插入圖片 解決過程:根據(jù)頁面彈出的窗口中的提示,知道了圖片無法插入的原因是之前網(wǎng)上下載的圖片的格式不對,因此我通過翻閱課本找到改格式的方法,隨后將圖片格式改了過來。 問 題2:問題二:做網(wǎng)頁時,之前放在網(wǎng)頁中的圖片無法顯示 解決過程:經上網(wǎng)查閱得知,在進行文件復制時,要連同圖片文件一起復制,并且不要改變文件名。 問 題3:制作超鏈接時總是鏈接不到自己想要的內容 解決過程:請教同學后得知,所要鏈接的內容要放到指定文件夾中,把鏈接內容放入正確位置后,連接成功。 五:總結 從完成計算機實踐任務的過程中,我收獲了很多。不光是計算機實踐技能方 面的收獲,同時還有對于學習態(tài)度及方法的思考。在制作網(wǎng)頁的過程中肯定會遇到各種各樣不同的問題,在這個發(fā)現(xiàn)問題解決問題的過程中,其實對于計算機實踐能力的培養(yǎng)能夠到積極作用。計算機實踐是一個很難得的機會去督促自己鍛煉上機能力,只有自己親自實踐才能夠從中得到一些很有價值的發(fā)現(xiàn)。通過這次實踐活動我將上課所學到的理論知識應用到了實際中,我對這門課程有了更深的理解。還有非常重要的兩點是——合作精神以及獨自解決問題的能力。不懂就問,互相幫助同時注重自我思考。這樣,我們才能不斷取得進步,不斷提高能力,最后取得成功! 張澤 2014年12月31日 中南大學 本科生課程設計(實踐)任務書、設計報告 (大學計算機基礎) 題目 學生姓名 指導教師 學院 專業(yè)班級 學生學號 計算機基礎教學實驗中心 2013年 1 月 7 日 唯美古箏 ——計算機實踐課程設計報告 一.任務內容 要想制作好一個網(wǎng)頁,首先要在整體上規(guī)劃好自己網(wǎng)站的主題和內容,確定自己需要傳達給訪問用戶的主要信息,然后仔細斟酌,把自己所有要表達的意念合情合理地組織起來;其次,是設計一個富有個性的頁面式樣,務求盡善盡美。這樣制作出來的主頁才會清晰、明了、內容充實。我從6歲就開始學習古箏,從小對古箏有一種特殊的情感,并且對古箏的各方面的情況有較深的理解,因此我把這次計算機實踐課程的主題定為了“唯美古箏”。主題實踐報告以古箏為線索展開介紹,內容包括古箏的結構、古箏的歷史、中國著名古箏曲、當代中國著名的古箏家及中外聯(lián)系之橋等五大項內容: 1)在“古箏的結構”一大內容中,介紹了古箏從拔弦古古箏、擊弦古古箏到手撥式鍵盤樂器到現(xiàn)在樂器大家族之中的“公主”的演變過程,并簡述了古箏誕生、發(fā)展的重大意義。 2)在“古箏的歷史”這部分內容中,著重寫了箏的來由,命名以及各種關于古箏的典故,并讓大家對古箏發(fā)展有所認識。 3)在“中國古箏名曲”中,展示出了中國古箏界風斐之作和中國的一些經典民族樂曲。例如《高山流水》、《廣陵散》和賀淥訂名曲《梅花三弄》等。 4)“中國當代著名古箏家”內容中則介紹了包括中國著名青年古箏家袁莎和任潔的幾個古箏名家風采。讓古箏家的魅力感染古箏愛好者學習古箏,關注古箏界的熱情。 5)在“中外聯(lián)系之橋”這一內容中,我介紹了敦煌莫高窟里美麗的壁畫,這些事古箏存于古今的證明。 通過這五大內容的介紹,旨在對唯美古箏做一個全面的解釋和分析。 二.設計步驟 首先確定了“唯美古箏”的主題后,我策劃將網(wǎng)頁的風格定為輕快明麗、簡 潔清新.主題分為確定的五大內容(即古箏的結構,古箏的歷史,中國當代古箏家簡介及中國古箏名曲,中外聯(lián)系之橋展示等方面)來分別介紹,這份設計實踐項目在首頁之下分五大分塊。 按照計算機實踐的任務要求,也為了使網(wǎng)頁制作及設計精美,我在項目中運用了5個網(wǎng)頁,制作了15張幻燈片(十五張幻燈片為一個統(tǒng)一整體介紹五大內容之一),從網(wǎng)上搜集豐富的資料添入網(wǎng)頁和幻燈片中,并且在首頁中加入了兩個簡易動畫以增添藝術效果,首頁與其它網(wǎng)頁之間,首頁與幻燈片之間用超鏈接聯(lián)系起來,使得整個項目結構緊湊,銜接緊密。在圖片的選擇上,我重視了顏色的搭配和與文字內容的較好結合,以保證達到最佳的表達效果.下面我具體介紹一下: 1.網(wǎng)頁一: 網(wǎng)頁一我把它作為主頁,主頁的設計一定要突出主題。通過精心的設計,我把主頁營造出韻味十足的畫面,給人耳目一新的感覺的同時增加好奇感。我開門見山的把我要介紹的關于主題“唯美古箏”的各大內容羅列出來,能夠簡單的明了的根據(jù)觀看興趣選擇看的內容。在界面,我選擇了一些古箏圖片,設置了字幕,加入了兩個Flash動畫(輝光和形狀補間動畫),讓界面感覺簡單而不單一并且有鮮活的動感效果。 2.網(wǎng)頁二和網(wǎng)頁 三、網(wǎng)頁 四、網(wǎng)頁五: 網(wǎng)頁二、三和四、五我都是以簡明清晰的風格設計,把各自介紹的內容展現(xiàn)出來,豐富而不繁亂。在凸顯的部分中我加入了古箏獨特的古典元素,與現(xiàn)代的flash動畫相結合,顯示出雅俗共存。并且加入與介紹內容相呼應的圖片,減少花俏的裝飾,讓頁面有錯落有致的美感。 3.PPT 在“中國著名古箏家簡介”的PPT中,首尾兩張PPT前后呼應,為了使各古箏家的介紹顯得前后統(tǒng)一,我基本上采用的相似的風格,即簡潔明快,條理清晰。但是使之“求同存異”,使PPT不顯單調,我在PPT連接上采用的不同的動畫效果,讓PPT之間呈現(xiàn)自然過渡。實踐步驟:1.設置幻燈片版式。2.輸入信息。 3.設置應用設計版式。4.應用配色反案選擇。5.幻燈片的格式化設置。6檢查、保存幻燈片。 三.方法技巧 ⑴ 我使用微軟公司推出的FrontPage來制作網(wǎng)頁,它的功能強大,簡單易用,功能豐富。FrontPage編輯器具有“所見即所得”的功能,而且有大量的模板和向導,只要使用工具欄或菜單,就能很簡便的美化網(wǎng)頁。我能將從網(wǎng)上搜集的各類文字、圖片信息按自己的喜好插入網(wǎng)頁,因而它的設計具有很大的自主選擇性。⑵ 為了使網(wǎng)頁內容更豐富,我使用PowerPoint。PowerPoint是微軟公司出品的制作幻燈片的軟件,是最優(yōu)秀的演示文稿編輯軟件之一,也是很簡單使用的多媒體整合平臺。我用PowerPoint制作了15個幻燈片。我在幻燈片中加入藝術字,給幻燈片放映添加“進入”藝術,添加幻燈片間的動畫切換效果,插入合適的背景等等,它們通過圖文并茂的形式把實踐項目所要表述的內容展現(xiàn)得更加生動。⑶ 我在網(wǎng)頁的首頁插入了幾個動畫,一個動畫是實現(xiàn)字與“輝光”藝術效果的結合,一個動畫是圖片的轉換。并且加入了滾動式字幕,F(xiàn)lash技術的運用使得使得網(wǎng)頁“動靜結合”,增加情趣與美感,從而與網(wǎng)頁所要表現(xiàn)得古箏的韻律美相呼應融合。 四.困難及解決過程 學習實踐中自然遇到很多的困難和挫折,其中的主要原因是:計算機基礎不好,平時接觸的計算機知識不夠,實戰(zhàn)演練較少。通過實踐了解到也只有實踐才能鞏固和強化理論,理論必須加以實踐才能變成活的事物。下面介紹一下我面對的其中兩個問題的情況及解決方法。 問題一:制作的動畫插入后并沒有按我的想法放映。 解決辦法:我認真查看了一下《大學計算機基礎學習與實踐指導》書上的向導與幫助。我首先檢查了一下自己動畫設置的操作過程,沒有發(fā)現(xiàn)問題出在什么地方。后來經過詢問同學,才發(fā)現(xiàn)原來是制作完Flash后應該在“文件”中按“導入”并且進行設置。只是直接把動畫保存在可移動磁盤中。 問題二:在做幻燈片時,不知道怎樣把圖片設置為背景。 解決辦法:我嘗試在“圖片屬性”中對圖片屬性進行修改使之能成為背景,但沒有作用,圖片總是覆蓋在文字上面,在“圖片屬性”中也不能通過設置環(huán)繞方式來解決。后來知道,只要單擊鼠標右鍵,把圖片“置于底部”就可以了,并且可 以任意調整圖片大小。 五.總 結 從完成計算機實踐任務的過程中,我收獲了很多。不光是計算機實踐技能方面的收獲,同時還有對于學習態(tài)度及方法的思考。我發(fā)現(xiàn)運用計算機來制作網(wǎng)頁、幻燈片并不是一件很難的事情,只要在加強理論學習的同時注重平時課后任務的實踐,就會發(fā)現(xiàn)它是能夠很輕松的完成的。當然,在制作網(wǎng)頁的過程中肯定會遇到各種各樣不同的問題,在這個發(fā)現(xiàn)問題解決問題的過程中,其實對于計算機實踐能力的培養(yǎng)能夠起到積極作用。自己的知識是靠自己努力獲得,學習是為自己而學。計算機實踐是一個很難得的機會去督促自己鍛煉上機能力,只有自己親自實踐才能夠從中得到一些很有價值的發(fā)現(xiàn)。 進一步的思考,會發(fā)現(xiàn)計算機課程的突出特點是實踐性強,上機實驗訓練是學生掌握和鞏固計算機科學理論和應用技能、引導學生通過比較、總結,促進能力培養(yǎng)的必須途徑?,F(xiàn)在薄弱的理論學習基礎和計算機應用能力制約了我們使用電腦的能力的拓展。只有掌握并應用所學的理論知識,多進行實踐活動,能力才能夠得到提升,而通過對掌握的知識才能加以總結、概括,然后廣泛地遷移,能進一步系統(tǒng)化形成“活”的技能。因此,綜合實踐是大學計算機基礎課程教學的一個重要環(huán)節(jié),是對教師課程教學和學生學習效果的集中檢閱,對推動學生自術學習,鍛煉實踐能力,培養(yǎng)創(chuàng)新意識,提高綜合應用各種知識的能力,培養(yǎng)學生的全面素質必將起到積極作用。 中南大學 本科生課程設計(實踐)任務書、設計報告 (大學計算機基礎) 題目 學生姓名 指導教師 學院 專業(yè)班級 學生學號 美食天下 黃恰 李力 建筑與藝術學院環(huán)境設計1301班 19111301 21計算機基礎教學實驗中心 2013年12 月27日 美食天下 ——計算機實踐課程設計報告 一.任務內容 要想制作好一個網(wǎng)頁,首先要在整體上規(guī)劃好自己網(wǎng)站的主題和內容,確定自己需要傳達給訪問用戶的主要信息,然后仔細斟酌,把自己所有要表達的意念合情合理地組織起來;其次,是設計一個富有個性的頁面式樣,務求盡善盡美。這樣制作出來的主頁才會清晰、明了、內容充實。美食永遠都是大家都喜歡且關注的。主題實踐報告以美食為線索展開介紹,內容包括美食的概念、美食的分類、中國各地美食、美食菜譜等內容: 1)在“美食”一大內容中,介紹到美食的定義,但是不是所有人對美食的標準都是一樣的,其實美食是不分貴賤的,只要是自己喜歡的,就可以稱之為美食。 2)在“創(chuàng)意美食”這部分內容中,分享了有關創(chuàng)意美食的精美圖片,讓大家對美食的發(fā)展有所認識。 3)在“美食菜譜”中,展示出了一些精美詳細的美食菜譜,大家可以通過菜譜學習如何烹飪美食,吃上自己親手制作的美食,從勞動中獲得快樂。 4)“中國美食”內容中則介紹了中國傳統(tǒng)美食悠久的歷史和來源,介紹了其豐富內涵,讓大家對中國美食有全面的了解。 5)在“美食分類”這一內容中,我介紹了中國美食八大菜系的詳細特征以及其各自的代表性食物。 通過這五大內容的介紹,旨在對美食做一個全面的解釋和分析。 二.設計步驟 首先確定了“美食天下”的主題后,我策劃將網(wǎng)頁的風格定為輕快明麗、簡潔清新.主題分為確定的五大內容,這份設計實踐項目在首頁之下分五大分塊。 按照計算機實踐的任務要求,也為了使網(wǎng)頁制作及設計精美,我在項目中運用了5個網(wǎng)頁,制作了5張幻燈片,從網(wǎng)上搜集豐富的資料添入網(wǎng)頁和幻燈片中,并且在首頁中加入了簡易動畫以增添藝術效果,首頁與其它網(wǎng)頁之間,首頁與幻燈片之間用超鏈接聯(lián)系起來,使得整個項目結構緊湊,銜接緊密。在圖片的選擇上,我重視了顏色的搭配和與文字內容的較好結合,以保證達到最佳的表達效果.下面我具體介紹一下: 1.網(wǎng)頁一: 網(wǎng)頁一我把它作為主頁,主頁的設計一定要突出主題。通過精心的設計,我把主頁營造出韻味十足的畫面,給人耳目一新的感覺的同時增加好奇感。我開門見山的把我要介紹的關于主題“美食天下”的各大內容羅列出來,能夠簡單的明了的根據(jù)觀看興趣選擇看的內容。在界面,我選擇了美食圖片,設置了字幕,加入了Flash動畫,讓界面感覺簡單而不單一并且有鮮活的動感效果。 2.網(wǎng)頁二和網(wǎng)頁 三、網(wǎng)頁 四、網(wǎng)頁五: 網(wǎng)頁二、三和四、五我都是以簡明清晰的風格設計,把各自介紹的內容展現(xiàn)出來,豐富而不繁亂。在凸顯的部分中我加入了美食元素,與flash動畫相結合,顯示出雅俗共存。并且加入與介紹內容相呼應的圖片,減少花俏的裝飾,讓頁面有錯落有致的美感。 3.PPT 在“美食天下”的PPT中,首尾兩張PPT前后呼應,為了使美食的介紹顯得前后統(tǒng)一,我基本上采用的相似的風格,即簡潔明快,條理清晰。但是使之“求同存異”,使PPT不顯單調,我在PPT連接上采用的不同的動畫效果,讓PPT之間呈現(xiàn)自然過渡。實踐步驟:1.設置幻燈片版式。2.輸入信息。3.設置應用設計版式。4.應用配色反案選擇。5.幻燈片的格式化設置。6檢查、保存幻燈片。 三.方法技巧 ⑴ 我使用微軟公司推出的FrontPage來制作網(wǎng)頁,它的功能強大,簡單易用,功能豐富。FrontPage編輯器具有“所見即所得”的功能,而且有大量的模板和向導,只要使用工具欄或菜單,就能很簡便的美化網(wǎng)頁。我能將從網(wǎng)上搜集的各 類文字、圖片信息按自己的喜好插入網(wǎng)頁,因而它的設計具有很大的自主選擇性。⑵ 為了使網(wǎng)頁內容更豐富,我使用PowerPoint。PowerPoint是微軟公司出品的制作幻燈片的軟件,是最優(yōu)秀的演示文稿編輯軟件之一,也是很簡單使用的多媒體整合平臺。我用PowerPoint制作了5個幻燈片。我在幻燈片中加入藝術字,給幻燈片放映添加“進入”藝術,添加幻燈片間的動畫切換效果,插入合適的背景等等,它們通過圖文并茂的形式把實踐項目所要表述的內容展現(xiàn)得更加生動。⑶ 我在網(wǎng)頁的首頁插入了動畫,動畫是圖片的轉換。并且加入了字幕,F(xiàn)lash技術的運用使得網(wǎng)頁“動靜結合”,增加情趣與美感,從而與網(wǎng)頁所要表現(xiàn)得效果相呼應融合。 四.困難及解決過程 學習實踐中自然遇到很多的困難和挫折,其中的主要原因是:計算機基礎不好,平時接觸的計算機知識不夠,實戰(zhàn)演練較少。通過實踐了解到也只有實踐才能鞏固和強化理論,理論必須加以實踐才能變成活的事物。下面介紹一下我面對的其中兩個問題的情況及解決方法。 問題一:制作的動畫插入后并沒有按我的想法放映。 解決辦法:我認真查看了一下《大學計算機基礎學習與實踐指導》書上的向導與幫助。我首先檢查了一下自己動畫設置的操作過程,沒有發(fā)現(xiàn)問題出在什么地方。后來經過詢問同學,才發(fā)現(xiàn)原來是制作完Flash后應該在“文件”中按“導入”并且進行設置。只是直接把動畫保存在可移動磁盤中。 問題二:在做幻燈片時,不知道怎樣把圖片設置為背景。 解決辦法:我嘗試在“圖片屬性”中對圖片屬性進行修改使之能成為背景,但沒有作用,圖片總是覆蓋在文字上面,在“圖片屬性”中也不能通過設置環(huán)繞方式來解決。后來知道,只要單擊鼠標右鍵,把圖片“置于底部”就可以了,并且可以任意調整圖片大小。 五.總 結 從完成計算機實踐任務的過程中,我收獲了很多。不光是計算機實踐技能方面的收獲,同時還有對于學習態(tài)度及方法的思考。我發(fā)現(xiàn)運用計算機來制作網(wǎng)頁、幻燈片并不是一件很難的事情,只要在加強理論學習的同時注重平時課后任務的實踐,就會發(fā)現(xiàn)它是能夠很輕松的完成的。當然,在制作網(wǎng)頁的過程中肯定會遇到各種各樣不同的問題,在這個發(fā)現(xiàn)問題解決問題的過程中,其實對于計算機實踐能力的培養(yǎng)能夠起到積極作用。自己的知識是靠自己努力獲得,學習是為自己而學。計算機實踐是一個很難得的機會去督促自己鍛煉上機能力,只有自己親自實踐才能夠從中得到一些很有價值的發(fā)現(xiàn)。 進一步的思考,會發(fā)現(xiàn)計算機課程的突出特點是實踐性強,上機實驗訓練是學生掌握和鞏固計算機科學理論和應用技能、引導學生通過比較、總結,促進能力培養(yǎng)的必須途徑?,F(xiàn)在薄弱的理論學習基礎和計算機應用能力制約了我們使用電腦的能力的拓展。只有掌握并應用所學的理論知識,多進行實踐活動,能力才能夠得到提升,而通過對掌握的知識才能加以總結、概括,然后廣泛地遷移,能進一步系統(tǒng)化形成“活”的技能。因此,綜合實踐是大學計算機基礎課程教學的一個重要環(huán)節(jié),是對教師課程教學和學生學習效果的集中檢閱,對推動學生自術學習,鍛煉實踐能力,培養(yǎng)創(chuàng)新意識,提高綜合應用各種知識的能力,培養(yǎng)學生的全面素質必將起到積極作用。 中南大學 本科生課程設計(實踐)任務書、設計報告 (大學計算機基礎) 題 目 理想世界 學生姓名 李杰 指導教師 邵自然 學 院 湘雅醫(yī)學院 臨床醫(yī)學與醫(yī)學技術 專業(yè)班級 1105班 學生學號 2211110512 計算機基礎教學實驗中心 年 月 日 課程設計實踐報告 理想世界 李杰 我選的主題是理想世界,我的思想是從圖片來展現(xiàn)理想世界的樣子,用圖片表達我想說的內容。 設計的步驟:從以上兩個方面入手,目錄作為主頁,主頁內容是理想世界中frontpage的一些介紹,并且引入一些優(yōu)美的圖片,再一個個的建立超鏈接。在引入一些解決手段,創(chuàng)建連接理想世界。在理想世界這個鏈接中從圖片來展現(xiàn)理想世界的樣子,用圖片表達我想說的內容。,也可以用一些flash動畫,還可以使用word鏈接一些圖片。在理想世界這個鏈接中,也可使用word鏈接一些先驅的行動,與我們自己的所處的世界對比,ppt制作幻燈片來演示一些有效提示,讓我的理想世界最好的展現(xiàn)給大家。 采取的方法與手段:用Frontpage制作網(wǎng)頁,通過鏈接使word文檔、Powerpoint幻燈片、Flash動畫得以展示。在網(wǎng)頁制作中,可以通過添加圖片來使頁面更加美麗,在word文檔中可以展示藝術字、建立文本。通過powerpoint可以把某些保護環(huán)境的行動展示。Flash動畫是以鏈接的方法來參與展示。在需要一些資料的時候,可在網(wǎng)絡上尋找,由于不是文件,這時就可以通過復制粘貼操作來獲取資料。 遇到的問題:(1).在網(wǎng)頁制作中,剛開始的時候連網(wǎng)頁的表格布局都弄不出來,不知道該如何制作,從哪些方面入手。解決方法:先看了幾遍課本,然后跟著課本的步驟上機實踐,但是發(fā)現(xiàn)制作過程還是太慢,而且不熟悉frontpage網(wǎng)頁制作工具,因此,開始幾次的實踐都是在慢慢熟悉該工具。直到熟悉該工具后才開始去制作。在word文檔制作中,因為以前在中學的時候用過該工具,現(xiàn)在還有一些印象,所以經過一系列重溫操作后,word文檔的制作就熟悉了。在Powerpoint幻燈片制作中,因為是第一次接觸和使用,許多功能和手段都不知道,較難制作出符合人意的幻燈片。通過多次實驗操作來了解和熟悉它,然后就可以使用了。(2)在flash動畫制作過程中,雖然老師上課講過制作過程,但還是遇到了難題:制作的動畫中,元件不隨引導層而動,而是在關鍵幀之間走直線,這 個問題導致了我做不出動畫,我只好一次次的嘗試去做,最后成功做出來。有時還有一些小技巧,都是從同學手中問過來的。在設置背景圖片時,會發(fā)現(xiàn)圖片太小的話,背景就會變成多張重復的圖片拼在一起,后來經過向同學詢問后,使用圖片編輯器對背景大小做了調整,使得背景和網(wǎng)頁內容能夠很好地融合在一起。二,網(wǎng)頁制作好后瀏覽時圖片顯示不出來,改文件名或者換了文件夾儲存都會導致圖片無法顯示,后來經過詢問學習之后,才知道原因即任何圖片的顯示都是依靠路徑來尋找來源,要設成相對路徑有利于在其他機子上打開。在設置主題之前插好圖片。三,剛開始做PPT時,不知道怎么插進去背景音樂和讓它連續(xù)播放,后來經過多次實踐后,發(fā)現(xiàn)可以在效果中設置這些。四,剛開始不會弄超鏈接,然后經過向同學詢問后才明白,在選定對象之后點擊右鍵,超鏈接,再選中連接的對象就可以了 總結:首先我們應該學會獨立思考和自我解決問題的能力,因為實踐和理論畢竟不同,在實踐中會遇到一些我們不了解的東西,這時候應該先自己摸索,實在不行就去向同學和老師詢問,一定要仔細閱讀課本,鞏固理論知識。否則很盲目,自信心也會受到打擊2,做計算機作業(yè)有時候也是一種享受,因為你會為你自己的一點點進步一點點成功而高興,增加生活情趣、3,做作業(yè)時要堅持不懈,不能在半途放棄。中途可能會遇到一些挫折,要記住“世界上沒有誰能隨隨便便成功”,只有經歷過多次失敗,才能尋找到解決問題的最好方法。4,在制作網(wǎng)頁的過程中,我的思想和人格也得到了升華,對大自然和地球的認識又提升到了一個另一個高度,令我受益匪淺。在全制作過程中,所有的難題都是有解決方法的,不要放棄制作機會,有難題可以去問別的同學或老師,也可以自己多次實踐來找到解決方法。我在制作過程中大部分都是自己摸索的,這樣不僅加強了自己對工具的熟悉度,同時也加強了對鍵盤的熟悉,我認為當我們自己去制作的時候,不管好壞都有助于自己,做得好,自己更有信心,鼓勵下次還能做得更好,做的不好,還可以找出錯誤,提醒自己在什么地方應該注意,在什么地方可以改正。這樣就可以更好的去改錯。有時候可以去看一看別人的作品,看一下別人是怎么做的,想一想哪里值得借鑒,如果是自己,怎么做會更好。這樣,在看的時 候可以加強對工具的熟悉,了解一些技巧,增加自己的見識。 這次的網(wǎng)頁制作對于我來說與有很大的收獲,我學會了,如何制作網(wǎng)頁,如何在網(wǎng)頁上表達自己的觀點,以及網(wǎng)頁制作的一些基本技巧,和網(wǎng)頁制作過程中 最常見,最基本問題的解決。By臨床與醫(yī)技1105 李杰 2211110512 4第二篇:中南大學計算機實踐報告
第三篇:中南大學計算機實踐報告
第四篇:中南大學計算機實踐報告
第五篇:中南大學 課程設計實踐報告