語言上機實驗例題_第1頁
語言上機實驗例題_第2頁
語言上機實驗例題_第3頁
語言上機實驗例題_第4頁
語言上機實驗例題_第5頁
已閱讀5頁,還剩5頁未讀, 繼續免費閱讀

下載本文檔

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

文檔簡介

1、實驗一 C語言的運行環境、運行過程和表達式的使用一、目的與要求1、了解Dos、Windows環境下C語言的運行環境,了解所用的計算機系統的基本操作方法,學會獨立使用該系統。2、了解在該系統上如何編輯、編譯、連接和運行一個C程序。3、通過運行簡單的C程序,初步了解C源程序的特點。4、掌握C語言數據類型,熟悉如何定義一個整型、字符型、實型變量,以及對它們賦值的方法,了解以上類型數據輸出時所用的格式轉換符。5、學會使用C的有關算術運算符,以及包含這些運算符的表達式二、實驗例題【例1】編程實現在屏幕上顯示如下三行文字 Hello, world ! Wolcome to the C language w

2、orld! Everyone has been waiting for.  在Turbo C的集成環境下,鍵入如下源文件。敲Alt+F組合鍵打開File菜單,File菜單中Write to或save as選項可將默認noname.c文件名改為任意文件名。程序example.c如下:main()printf("Hello,World!n");printf("Wolcome to the C language world!n");printf("Everyone has been waiting for.n");然后用Ctrl+

3、F9執行example.c,用Alt+F5查看結果,即在屏幕上顯示題目要求的三行文字。按回車鍵重新返回Turbo C的編輯環境。注意,在運行程序之前最好先存盤。【例2】輸入并運行程序,寫出運行結果。main()int a,b,sum; a=123;b=456; sum=a+b; printf(“sum is %dn”,sum);運行方法同上,最后結果為:sum is 579?!纠?】輸入并運行程序,寫出運行結果。main()int a,b,c;int max(int,int);scanf(“%d,%d”,&a,&b);c=max(a,b);printf(“max=%d”,c);

4、int max(int x,int y)int z;if (x>y) z=x;else z=y;return(z);這個程序的功能是對于任意輸入的兩個整數,輸出較大的那個數。所以程序運行之后,光標將停留在用戶屏幕上,等待用戶輸入兩個整數,比如輸入“3,5”,回車,在用戶屏幕上就會輸出“max=5”。 【例4】輸入并運行下程序,寫出運行結果。mian()char c1 , c2;c1=97;c2=98;printf(“%c %c”, c1, c2);在此基礎上1)加一個printf語句,并運行之。printf(“%d,%d”, c1, c2 );2)再將第二行改為: int c1

5、, c2;再使之運行。3)再將第三行改為: c1=300; c2=400;再使之運行,分析其運行結果。在該程序中,說明了字符型數據在特定情況下可作為整型數據處理,整型數據有時也可以作為字符型數據處理?!纠?】分析下面程序,寫出運行結果,再輸入計算機運行,將得到的結果與你分析得到的結果比較對照。main() char c1=a,c2=b,c3=c,c4=101,c5=116;printf(“a%c b%ctc%ctabcn”,c1,c2,c3);printf(“t%c %c”,c4,c5);在該程序中,主要考查對轉義字符的掌握情況?!纠?】分析下面程序,寫出運行結果,再輸入計算機運行,將得到的結

6、果與你分析得到的結果比較對照。main()int i , j , m , n ;i=8; j=10;m=+i; n=j+;printf(“%d,%d,%d,%d”,i,j,m,n);分別作以下改動之后,先分析再運行:1)將第四行改為:m=i+; n= +j;2)程序改為:main() int i , j ;i=8; j=10;printf(“%d,%d”, i+, j+);3)在2)的基礎上,將printf語句改為:printf(“%d,%d”, + i, + j );4)再將printf語句改為:printf(“%d,%d,%d,%d”,i,j,i+,j+);5)程序改為:main()int

7、 i , j , m=0 , n=0 ;i=8; j=10;m+= i +; n -= -j;printf(“i=%d,j=%d,m=%d,n=%d”,i,j,m,n);此程序主要考查自加、自減運算符以及復合運算符的用法。三、上機內容1用turbo c輸入并運行前面6道例題中程序,記下運行結果,熟悉調試C程序的方法與步驟。2參照例題,編寫一個C程序,輸出以下信息:* Hello,World!*四、實驗結果分析對實驗結果進行檢驗,如結果出現錯誤,分析產生錯誤的原因并修改程序、改正錯誤。實驗二 順序結構與選擇結構程序設計 一、實驗目的及要求1 理解C語言程序的順序結構;2 掌握常用的C語言語句,熟

8、練應用賦值、輸入、輸出語句;3 了解C語句表示邏輯量的方法(以0代表“假”以1代表“真”);4 學會正確使用邏輯運算符和邏輯表達式;5 熟練掌握if語句和switch語句。二、實驗內容1、已知圓半徑r=1.5,圓柱高h=3, 求圓周長,圓面積,圓球表面積,圓球體積,圓柱體積。2、輸入一個華氏溫度,要求輸出攝氏溫度。公式為c=5/9*(f-32)。3、有3個整數a、b、c,由鍵盤輸入,編程序按從小到大的順序將它們排序并輸出。4、編程序計算下面的函數: e-1 0<x<1 y= |x|+2 3x4 sin(x2) 當x取其他值時5、輸入一個整數m,判斷它能否被7、11、17整除,如果能

9、被以上三個數之一整除,則輸出它能被整除的信息,否則輸出m不能被7、11、17整除的信息。6、電文加密的算法是:將字母A變成字母G,a變成g,B變成H,b變成h,依此類推,并且U變成A,V變成B,等等。從鍵盤輸入一個電文字符,輸出其相應的密碼。7、企業發放的獎金根據利潤提成。若利潤I10萬元,獎金可提10%;若10萬<I20萬時,則低于等于10萬元的部分按10%提成,高于10萬元部分,可提成7.5%;若20萬<I40萬時,低于等于20萬元的部分仍按上述辦法提成,高于20萬元部分按5%提成;按類似的辦法,若40萬<I60萬元時,高于40萬元部分按3%提成;若60萬<I100

10、萬元時,高于60萬元的部分按1.5%提成;若I>100萬時,超過100萬元部分按1%提成。從鍵盤輸入當月利潤I,求應發獎金總數。三、實驗結果分析對實驗結果進行檢驗,如結果出現錯誤,分析產生錯誤的原因并修改程序、改正錯誤。實驗三 循環結構程序設計一、實驗目的及要求1熟練掌握while、dowhile和for三種循環語句的應用。2掌握基本的編程算法。二、實驗內容1、利用公式 sinx=x-x3/3!+x5/5!-x7/7!+x9/9!-+(-1)(n-1)·x(2n-1) /(2n-1)! 編程計算sinx的值。設x=0.5,n=9。2、編寫程序求:3、輸入20個有符號整數,統計正

11、整數、零、負整數的個數。4、輸入m個數,求其最大數、最小數和平均值。5、在100和1000之間,有多少個其數字之和等于9而且該數可被5整除的整數?6、一位同學問老師和老師夫人的年齡是多少,老師說:“我年齡的平方加上我夫人的年齡恰好等于1053,而我夫人年齡的平方加上我的年齡等于873?!痹囉嬎憷蠋熀推浞蛉说哪挲g。7、打印下列圖案*三、實驗結果分析對實驗結果進行檢驗,如結果出現錯誤,分析產生錯誤的原因并修改程序、改正錯誤。實驗四、數組程序設計一、實驗目的及要求1掌握一維、二維數組的定義、賦值和輸入輸出的方法;2掌握字符數組的使用;3掌握與數組有關的算法(例如排序算法)。二、實驗內容1、給整型二維

12、數組 b34輸入12個數據,計算并輸出數組中所有正數之和、所有負數之和。2、青年歌手參加歌曲大獎賽,有10個評委進行打分,試編程求這位選手的平均得分(去掉一個最高分和一個最低分)。分析:這道題的核心是排序。將評委所打的10個分數利用數組按增序(或降序)排列,計算數組中除第一個和最后一個分數以外的數的平均分。3、設二維數組 b54中有鞍點,即bij元素值在第i行中最小,且在第j列中最大,試編寫一程序找出所有的鞍點,并輸出其下標值。也可能沒有。4、從鍵盤輸入一數,然后在一個整型一維數組a20中,用折半查找法找出該數是數組中第幾個元素的值。如果該數不在數組中,則打印”No found”。5、編程打印

13、如下圖形: * * * * * * * *6、有一電文,已按下列規律譯成譯碼: AZ az BY by CX cx即第一個字母變成第26個字母,第i個字母變成第(26-i+1)個字母。非字母字符不變。編寫一個程序將密碼譯成原文,并輸出密碼和原文。三、實驗結果分析對實驗結果進行檢驗,如結果出現錯誤,分析產生錯誤的原因并修改程序、改正錯誤。實驗五 函數程序設計 一、目的與要求1、掌握C語言函數的定義方法、函數的聲明及函數的調用方法。2、了解主調函數和被調函數之間的參數傳遞方式。二、實驗內容1、分別編寫求圓面積和圓周長的函數,另編寫一主函數調用之, 要求主函數能輸入多個圓半徑,且顯示相應的圓面積和周

14、長。2、編寫一程序,把M×N矩陣a的元素逐列按降序排列。假設M、N不超過10。分別編寫求一維數組元素值最大和元素值最小的函數,主函數中初始化一個二維數組a1010,調用定義的兩函數輸出每行、每列的最大值和最小值。3、編寫一判別素數的函數,在主函數中輸入一個整數,輸出該數是否為素數的信息。4、編寫一個將兩個字符串連接起來函數(即實現strcat函數的功能),兩個字符串由主函數輸入, 連接后的字符串也由主函數輸出。5、編寫計算最小公倍數的函數,試由主函數輸入兩個正整數a和b調用之。計算最小 公倍數的公式為: lcm(u,v)=u*v/gcd(u,v) (u,v0) 其中,gcd(u,v)

15、是u、v的最大公約數。lcm(u,v)是u、v的最小公倍數。三、實驗結果分析對實驗結果進行檢驗,如結果出現錯誤,分析產生錯誤的原因并修改程序、改正錯誤。實驗六 指針程序設計一、目的與要求1、通過實驗進一步掌握指針的概念,會定義和使用指針變量;2、能正確使用數組的指針和指向數組的指針變量;3、能正確使用字符串的指針和指向字符串的指針變量;4、能正確使用指向函數的指針變量;5、了解指向指針的指針的概念及其使用方法。二、實驗內容1、編寫子函數,對傳送過來的三個數按由小到大的順序排列,并通過形參傳回調用函數。2、編寫函數int find(int *p,int n,int x),在指針p所指的數組中查找

16、整型數x,如果x在數組中,則該函數返回1,否則返回0。n為數組的大小。3、(選做)有n個整數,使前面各數順序向后移m個位置,最后m個數變成最前m個數(如下圖所示)。寫一函數實現以上功能,在主函數中輸入n個整數和輸出調整后的n個整數。4、(選做)在主函數中輸入10個不等長的字符串。用另一個函數對它們按升序排序,然后在主函數中輸出這10個已排序的字符串。5、(選做)用指針型指針對五個字符串進行排序,并將排序后的結果按順序輸出。6、(選做)編寫一程序,統計從鍵盤輸入的命令行中第二個參數所包含的英文字符個數。三、實驗結果分析對實驗結果進行檢驗,如結果出現錯誤,分析產生錯誤的原因并修改程序、改正錯誤。實

17、驗七 結構體、共用體程序設計一、目的與要求1、掌握結構體類型變量的定義和使用;2、掌握結構體類型數組的概念和使用;4、了解共用體的概念與使用。二、實驗內容編程序,然后上機調試運行下列程序。1. 有10個學生,每個學生的數據包括學號、姓名、3門課的成績,從鍵盤輸入10個學生數據,要求打印出3門課總平均成績,以及最高分的學生的數據(包括學號、姓名、3門課的成績、平均分數)。要求用input函數輸入10個學生數據;用average函數求總平均分;用max函數找出最高分的學生數據;總平均分和最高分學生的數據都在主函數中輸出。2. 設有兩個人員的數據,一個學生,一個教師。學生的數據中包括:學號、姓名、班級,、教師的數據中包括:工號、姓名、職稱?,F將兩人的數據放在同一表格中,要求輸入兩人的數據,再將輸入的內容輸出。提示:參考教材例11.12(P311)三、實驗結果分析對實驗結果進行檢驗,如結果出現錯誤,分析產生錯誤的原因并修改

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論