C語言程序設計實驗實驗指導書及答案_第1頁
C語言程序設計實驗實驗指導書及答案_第2頁
C語言程序設計實驗實驗指導書及答案_第3頁
C語言程序設計實驗實驗指導書及答案_第4頁
C語言程序設計實驗實驗指導書及答案_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、常熟理工學院 電氣與自動化工程學院0«C語言程序設計實驗指導書實驗一熟悉C程序運行環(huán)境班級學號姓名成績一、實驗目的1 .熟悉C語言Visual C+6.0 調試環(huán)境。2 .掌握C程序的編輯、調試及運行。二、實驗內容項目1.調試并運行下面程序,并寫出運行結果:#include <stdio.h>int main()printf( "Good morning!);printf( Hello,world!n "力return 0;運行結果(注意,按照屏幕輸出格式寫):項目2.調試并運行下面程序,并寫出運行結果:#include <stdio.h>

2、int main()int a , b , sum;/* 定義變量 */a=23; b=56;/*為變量賦值*/sum=a+b;/*計算兩個變量的和*/printf( sum is %dn”,sum);/*輸出計算結果 */return 0; 運行結果:1常熟理工學院 電氣與自動化工程學宛 «C語言程序設計實驗指導書運行結果:3項目3.調試并運行下面程序,并寫出運行結果:#include <stdio.h>int max(int,int);int main()int a , b , c;a=23; b=56;c=max(a,b);printf( max is %dn ”,

3、c); return 0;int max(int x,int y)int z;if(x>y)z=x;else/*定義變量*/*為變量賦值*/*調用max函數(shù),將得到的值賦給c*/*輸出c的值*/*定義max函數(shù),函數(shù)值為整型 */*定義變量*/z=y;return(z);/*將z的值返回*/運行結果:三、提高部分1.試想,如果求10個數(shù)中的最大者,則程序該如何編寫。 程序代碼常熟理工學院 電氣與自動化工程學骷 «C語言程序設計實驗指導書實驗二數(shù)據(jù)及其運算班級學號姓名成績一、實驗目的1 .掌握C數(shù)據(jù)類型的概念、 熟悉整型、字符型和實型基本類型的常量的用法;學會三種基本類型變量的定

4、義、賦值和使用方法。2 .掌握算術表達式、關系表達式及邏輯表達式的特點及用法。3 .熟悉運算符的優(yōu)先級和結合性的概念。4 .學習簡單程序的編寫方法。二、實驗內容項目1.編輯運行下面程序,并分析運行結果。#include<stdio.h>d=m/4;int main()e=m%5;printf(“a=m+1;a=i%)d ,a);int m,a,b,c,d,e;/*定義整型變量 */printf(“b=mn” ,b);printf( " please input a data:m=");printf(“c=m*3; n” ,c);scanf(%d ,&m/

5、*從鍵盤輸入一個整數(shù) */printf(“d=m/4;d=%d ,d);a=m+1;printf(“e=m%n” ,e);b=m-2;return 0;c=m*3;運行結果:項目2.編輯運行下面程序,并分析運行結果。#include<stdio.h>printf(n=);int main()scanf(“f”,&n)/*輸入矩形的邊長*/s=m*n;/*計算矩形的面積*/float m,n,s;n",s);/*輸出矩形的面積*/printf ( "m=,);return 0;scanf("%f” ,&m/*輸入矩形的邊長*/(1)輸入2

6、4和5,運行結果:分析結果是否正確?(3)對上面程序進行修改,當輸入一個非法的邊長(負數(shù)或零),會給出提示而不計算矩形的面積。輸入一 24和5,運行結果:項目3.先閱讀程序,并寫出結果,再運行程序并分析結果。#include<stdio.h>int main()(int i,j,m,n,p,q,x,y;i=8;j=10;p=0;q=0;x=1;y=1;m=+i;/m=9,i=9n=j+;/n=10,j=11;p+=i+;/p=p+i+;/p=9,i=10q-=-j;/q=q-(-j);/q=-10,j=10x+=m+10;/x=x+( m+10)/x=20,y=p=q;/y=0pr

7、intf( " i=%d,j=%d,m=%d,n=%d,p=%d,q=%d,x=%d,y=%d ,m,nip,q,x,y);return 0;分析結果:i=_10;j=_10;m=9_;n=_10;p=_9;q=_-10;x=_20;y=_0運行結果:項目4.(選做)5常熟理工學院 電氣與自動化工程學院C語言程序設計實驗指導書根據(jù)矩形面積的計算方法,編寫一個輸入圓半徑 r,計算園周長L和圓面積S的程序。注意判斷圓半徑r是否大于零。(程序代碼和運行結果可寫在指導書背面)實驗三 程序控制結構(選擇)班級學號姓名成績 項目1.三角形成立條件判斷及面積計算【項目任務】輸入三個整型數(shù)據(jù),判斷這

8、三個整型數(shù)據(jù)能否圍成三角形,如果能組成三角形,計算并輸 出它的面積,如果不能圍成三角形輸出“三條邊不能圍成三角形”。【項目說明】C語言實現(xiàn)選擇結構筑要用if語句,按照判斷所給定的條件是否滿足,根據(jù)判定結果的真或假來決定執(zhí)行在if語句中給出的兩種操作之一?!卷椖磕康摹?1)正確使用關系表達式和邏輯表達式表達條件。(2)學習分支語句if的使用方法。(3)進一步熟悉 VC集成環(huán)境的使用方法,學習VC環(huán)境提供的調試工具?!卷椖恳c】(1)已知三邊求三角形面積的公式:p=(a+b+c)/2 s= sqrt(p*(p-a)*( p-b)*( p-c)(2)已知三邊能圍成三角形的條件是:任意兩邊之和大于第三

9、邊。(3) C語言中求平方根的函數(shù)是sqrt(double x),該函數(shù)在 math.h頭文件中。(4) if語句中“表達式”必須用“(”和“)”括起來,它的值為邏輯值。除常見的關系表達式或邏輯表 達式外,也允許是其他類型的數(shù)據(jù),如整型、實型、字符型等。(5) else子句(可選)是if語句的一部分,必須與 if配對使用,不能單獨使用。程序代碼:運行結果:項目2.百分制成績轉換為成績等級【項目任務】輸入一個百分制成績,輸出對應的等級?!卷椖磕康摹?1)正確使用關系表達式和邏輯表達式表達條件。(2)學習多switch分支選擇語句的使用方法?!卷椖恳c】解決本項目的關鍵是如何將輸入的百分制成績與c

10、ase常量聯(lián)系起來,不難想到將百分制成績(用score表示)除以10之后再取整,一定得到 0到10之間的數(shù)。9、10對應'a' ,8對應'b ,5、4、 3、2、1、0對應e'既不及格。 程序代碼:運行結果:項目3.選做2x +1x > 0y =0x = 0Cx-1x < 0(程序代碼和運行結果可寫在指導書背面)實驗四 程序控制結構(循環(huán))班級學號姓名成績項目1:使用循環(huán)結構實現(xiàn)重復處理【項目說明】從鍵盤輸入一個班的成績,把百分制轉換成等級制。將百分制成績(用 score表示)除以10之后再 取整,一定得到 0到10之間的數(shù)。9、10對應'a

11、' ,8對應'b ,5、4、3、2、1、0對應e'既 不及格。要求分別使用三種循環(huán)結構實現(xiàn)。該項目中,假設班級人數(shù)不固定,規(guī)定輸入若干0至100的成績,如果成績不在此范圍,則表示結束。該項目中,同時要使用switch語句實現(xiàn)多分支選擇結構。【項目目的】(1)掌握用while語句和do - while語句實現(xiàn)循環(huán)的方法。(2)掌握用for語句實現(xiàn)循環(huán)的方法。(3)掌握三種語句的特點和應用技巧。(4)掌握用break語句和continue語句改變循環(huán)狀態(tài)的方法?!卷椖績热荨?、用while語句實現(xiàn)的程序代碼:2、用dowhile和break語句實現(xiàn)的程序代碼:3、用do -

12、 while和continue語句實現(xiàn)的程序代碼:4、用for語句實現(xiàn)的程序代碼:項目2.(選彳)10求Z n!(即求1!+2!+3! + |十10!)(程序代碼和運行結果可寫在指導書背面)n 1實驗五數(shù)組班級學號姓名成績項目1.冒泡排序法【項目說明】輸入10個數(shù),用“冒泡法”對10個數(shù)排序(由小到大)。冒泡法的基本思想:通過相鄰兩個數(shù)之間 的比較和交換,使(數(shù)值)較小的數(shù)逐漸從底部移向頂部,較大的數(shù)逐漸從頂部移向底部。就像水底的 氣泡一樣逐漸向上冒,故而得名?!卷椖磕康摹?1)掌握冒泡排序算法的編程。(2)掌握與數(shù)組有關的算法。程序代碼:運行結果:項目2.字符統(tǒng)計【項目說明】有一篇文章,共有

13、3行文字,每行80個字符。要求分別統(tǒng)計出其中英文字母和數(shù)字的個數(shù)?!卷椖磕康摹?1)掌握鍵盤輸入字符串方法。(2)掌握二維數(shù)組的處理方法。【技術要點】(1)3行文字可定義一個二維字符數(shù)組來表示。(2)使用gets()函數(shù)對字符串進行輸入。程序代碼:#include <stdio.h>int main。int i,j,upp,low,dig,spa,oth;char text380;upp=low=dig=spa=oth=0;for (i=0;i<3;i+) printf("please input line %d:n",i+1);gets(texti);f

14、or (j=0;j<80 && textij!='0'j+)if (textij>='A'&& textij<='Z')upp+;else if (textij>='a' && textij<='z')low+;else if (textij>='0' && textij<='9')dig+;else if (textij=' ')spa+;elseoth+;pr

15、intf("nupper case: %dn",upp);printf("lower case: %d'n",low);printf("digit : %d'n",dig);printf("space : %dn",spa);printf("other : %d'n",oth);return 0;運行結果:項目3.(選彳)在二維數(shù)組中,若某一位置上的元素在該行中最大,而在該列中最小,則該元素即為該二維數(shù)組的 一個鞍點。要求從鍵盤上輸入一個二維數(shù)組,當鞍點存在時,把鞍點找出

16、來。(程序代碼和運行結果可寫在指導書背面)常熟理工學院 電氣與自動化工程學院0«C語言程序設計實驗指導書實驗六函數(shù)班級學號姓名成績項目1:使用函數(shù)實現(xiàn)對二維數(shù)組轉置?!卷椖空f明】寫一個函數(shù),使給定的 3*3的二維整型數(shù)組轉置,即行列互換。要求輸出轉換之前和轉換之后的結果?!卷椖磕康摹?1)掌握函數(shù)的定義和調用。(2)掌握二維數(shù)組名作為函數(shù)的參數(shù)的使用技巧。【技術要點】(1)使用二重循環(huán)對二維數(shù)組進行輸入,處理和輸出;(2)二維數(shù)組名作為函數(shù)的參數(shù),定義函數(shù)需要給出第二維的大小。程序代碼:運行結果:項目2:使用函數(shù)實現(xiàn)成績處理【項目說明】輸入3個學生4門課的成績,分別用函數(shù)實現(xiàn)以下功能

17、:(1)計算每個學生的平均分。(2)計算每門課的平均分。(3)找出12個分數(shù)中最高分數(shù)所對應的學生和課程?!卷椖磕康摹浚?)掌握函數(shù)的定義和調用。(2)掌握全局變量的使用?!炯夹g要點】學生成績可定義成全局的二維數(shù)組,這樣自定義函數(shù)可以直接使用,而不需要進行參數(shù)的傳遞。 程序代碼:運行結果:項目3.(選彳)io求Z n!(即求1!十2!十3!十III+10!)(階乘要求使用遞歸函數(shù)來實現(xiàn),程序代碼和運行結果可寫在指導 n 1書背面)實驗七指針班級學號姓名成績項目1.使用指針參數(shù)交換兩個變量值【項目說明】用函數(shù)實現(xiàn)兩個變量值的交換,使其在主調函數(shù)和被調函數(shù)中的值一致,并且返回這兩個變量的和 以及乘

18、積。要求用指針變量作為函數(shù)參數(shù)?!卷椖磕康摹?1)熟悉如何定義指針變量,掌握將指針變量作為函數(shù)參數(shù)的方法。(2)掌握通過指針參數(shù)由被調函數(shù)向主調函數(shù)傳遞多個值的方法?!炯夹g要點】由于變量的值始終存放在內存單元中,因此,要交換兩個變量的值,只需交換這兩個 變量對應的存儲單元的值即可,這就需要知道兩個變量的地址。也就是說,需要保證主調 函數(shù)與被調函數(shù)中所要交換的兩個數(shù)的內存單元是同一內存單元,即傳遞的參數(shù)是內存單 元的地址,而不是內存單元中的值。程序代碼:運行結果:項目2.數(shù)組的排序和的插入【項目目的】(1)熟悉如何定義指針變量,掌握將指針變量指向一維數(shù)組元素的方法。(2)掌握如何對數(shù)組進行排序。(3)掌握如何在一個有序的數(shù)列中查找合適的位置。(4)掌握如何將一個數(shù)插入到一個有序數(shù)列中?!炯夹g要點】(1)排序可采用冒泡法或者選擇法。(2)有序數(shù)組中

溫馨提示

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

評論

0/150

提交評論