實(shí)驗(yàn)三簡(jiǎn)單的C程序設(shè)計(jì)_第1頁(yè)
實(shí)驗(yàn)三簡(jiǎn)單的C程序設(shè)計(jì)_第2頁(yè)
實(shí)驗(yàn)三簡(jiǎn)單的C程序設(shè)計(jì)_第3頁(yè)
實(shí)驗(yàn)三簡(jiǎn)單的C程序設(shè)計(jì)_第4頁(yè)
實(shí)驗(yàn)三簡(jiǎn)單的C程序設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、【目的與要求】1理解C語(yǔ)言程序的順序結(jié)構(gòu)2掌握常用的C語(yǔ)言語(yǔ)句,熟練應(yīng)用賦值、輸入、輸出語(yǔ)句。【一般實(shí)例】【例1】按格式要求輸入/輸出數(shù)據(jù)#includestdio.h“main()int a,b;float x,y;char c1,c2;scanf(“a=%d,b=%d”,&a,&b);scanf(“%f,%e”,&x,&y);scanf(“&c&c”,&c1,&c2);printf(“a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%cn”,a,b,x,y,c1,c2);運(yùn)行該程序,必須按如下方式在鍵盤上輸入數(shù)據(jù)a=

2、3,b=78.5,71.82aA請(qǐng)同學(xué)們寫出輸出結(jié)果【例2】輸入三角形三邊長(zhǎng),求三角形面積。#include“math.h”main()float a,b,c,s,area;scanf(“%f,%f,%f”,&a,&b,&c);s=1.0/2*(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c);printf(“area=%f”,area);【例3】已知圓半徑,圓柱高,求圓周長(zhǎng),圓柱體積。main()float r,h,l,v,pi;pi=3.1415926;scanf(“%f,%f”,&r,&h);l=2*pi*r;v=pi*r*

3、r*h;printf(“圓周長(zhǎng)為:%6.2fn”,l);printf(“%圓柱體積為:6.2f”,v);【例4】輸入一個(gè)攝氏溫度,要求輸出華氏溫度。公式為f=5/9*c+32.main()float c,f;scanf(“%f”,&c);f=5.0/9*c+32;printf(“%5.2fn”,c);【作業(yè)】1.已知圓半徑r=1.5,圓柱高h(yuǎn)=3,求圓周長(zhǎng),圓面積,圓球表面積,圓球體積,圓柱體積。2.輸入一個(gè)華氏溫度,要求輸出攝氏溫度。公式為c=5/9*(f-32). 【目的與要求】1了解C語(yǔ)句表示邏輯量的方法(以0代表“假”以1代表“真”);2學(xué)會(huì)正確使用邏輯運(yùn)算符和邏輯表達(dá)式;3熟

4、練掌握if語(yǔ)句和switch語(yǔ)句。【例1】已知三個(gè)數(shù)a,b,c,找出最大值放于max中。分析:由已知可得在變量定義時(shí)定義四個(gè)變量a,b,c和max,a,b,c是任意輸入的三個(gè)數(shù),max是用來(lái)存放結(jié)果最大值的。第一次比較a和b,把大數(shù)存入max中,因a,b都可能是大值,所以用if語(yǔ)句中ifelse形式。第二次比較max和c,把最大數(shù)存入max中,用if語(yǔ)句的第一種形式if形式。Max即為a,b,c中的最大值。includestdio.hmain()inta,b,c,max;/*定義四個(gè)整型變量*/scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);if(a=

5、b)max=a;/*a=b*/elsemax=b;/*amax)max=c;/*c是最大值*/printf(max=%d,max);若輸入下列數(shù)據(jù),分析程序的執(zhí)行順序并寫出運(yùn)行結(jié)果(1)a=1,b=2,c=3(2)a=2,b=1,c=3(3)a=3,b=2,c=1(4)a=3,b=1,c=2(5)a=3,b=3,c=2(6)a=2,b=1,c=2【例2】輸入某學(xué)生的成績(jī),經(jīng)處理后給出學(xué)生的等級(jí),等級(jí)分類如下:90分以上(包括90):A80至90分(包括80):B70至80分(包括70):C60至70分(包括60):D60分以下:E方法一:(用if嵌套)分析:由題意知如果某學(xué)生成績(jī)?cè)?0分以上,

6、等級(jí)為A;否則,如果成績(jī)大于80分,等級(jí)為B;否則,如果成績(jī)大于70分,等級(jí)為C;否則,如果成績(jī)大于60分為D;否則,如果成績(jī)小于60分,等級(jí)為E;但當(dāng)我們輸入成績(jī)時(shí)也可能輸錯(cuò),出現(xiàn)小于0或大于100,這時(shí)也要做處理,輸出出錯(cuò)信息。因此,再用if嵌套前,應(yīng)先判斷輸入的成績(jī)是否在0100之間。#includestdio.hmain()int score;char grade;printf(npleaseinputastudentscore:);scanf(%f,&score);if(score100|score=90)grade=A;elseif(score=80)grade=B;els

7、eif(score=70)grade=C;elseif(score=60)grade=D;else grade=E;printf(nthestudentgrade:%c,grade);輸入測(cè)試數(shù)據(jù),調(diào)試程序。測(cè)試數(shù)據(jù)要覆蓋所有路徑,注意臨界值,例如此題中得100分,60分,0分以及小于0和大于100的數(shù)據(jù)。方法二:用switch語(yǔ)句分析:switch語(yǔ)句是用于處理多分支的語(yǔ)句。注意,case后的表達(dá)式必須是一個(gè)常量表達(dá)式,所以在以用switch語(yǔ)句之前,必須把0100之間的成績(jī)分別化成相關(guān)的常量。所有A(除100以外),B,C,D類的成績(jī)的共同特點(diǎn)是十位數(shù)相同,此外都是E類。則由此可得把sco

8、re除十取整,化為相應(yīng)的常數(shù)。#includestdio.hmain()int g,s;char ch;printf(ninputastudentgrade:);scanf(%d,&g);s=g/10;if(s10)printf(ninputerror!);elseswitch(s)case 10: case 9:ch=A;break; case 8:ch=B;break; case 7:ch=C;break; case 6:ch=D;break; default:ch=E;printf(nthestudentscort:%c,ch);【作業(yè)】1.c語(yǔ)言如何表示“真”與“假”?系統(tǒng)如何

9、判斷一個(gè)量的“真”與“假”?2.寫出下面各邏輯表達(dá)式的值。設(shè)a=3,b=4,c=5(1)a+bc&b=c(2)a|b+c&b-c(3)!(ab)&!c|1(4)!(x=a)&(y=b)&0(5)!(a+b)+c-1&b+c/23.有3個(gè)整數(shù)a、b、c,由鍵盤輸入,輸出其中最大的數(shù)。4給一個(gè)不多于5位的正整數(shù),要求:a.求出它是幾位數(shù);b.分別打出每一位數(shù)字;c.按逆序打出各位數(shù)字,例如原數(shù)為321,應(yīng)輸出123。5輸入4個(gè)整數(shù),要求按由小到大的順序輸出。【目的與要求】 熟練掌握while、dowhile和for三種循環(huán)語(yǔ)句的應(yīng)用。【例1】求5!【

10、例2】求和s=1!+2!+3!【例3】求和s=1!+3!+5!【例4】求和s= 3+33+333【例5】有一數(shù)列:2/1,3/2,5/3,8/5,求出這個(gè)數(shù)列的前10項(xiàng)之和。【例6】打印500以內(nèi)的“水仙花數(shù)”。“水仙花數(shù)”是一個(gè)三位數(shù),其各位數(shù)立方和等于該數(shù)本身。 【例7】一個(gè)數(shù)如果恰好等于它的因子之和,這個(gè)數(shù)就稱為完數(shù)。求100之內(nèi)的所有完數(shù)。【典型示例】【例1】計(jì)算兩個(gè)數(shù)的最大公約數(shù); 分析:首先,隨機(jī)輸入兩個(gè)數(shù)m,n(默認(rèn)mn);其次,算法:使k為m除以n的余數(shù),如果m能被n整除,則k值為0,n為這兩個(gè)數(shù)的最大公約數(shù),否則,使k代替n,n代替m,重復(fù)以上過(guò)程,直到k值為0。【例3】打印下列圖案*【例4】判斷m是否是素?cái)?shù)。【作業(yè)】1輸入兩個(gè)正整數(shù)m和n,求其最大公約數(shù)和最小公倍數(shù)。 2求Sn=a+aa+aaa+aaa 之值,其中a是一個(gè)數(shù)字。例如:2+22+222+2222+22222(此時(shí)n=5), n由鍵盤輸入。3求和1!+2!+3!+4!+20!4 打印100-999之間所有的“水仙花數(shù)”。“水仙花數(shù)”是一個(gè)三位數(shù),其各位數(shù)立方和等于該數(shù)本身。5 一個(gè)數(shù)如果恰好等于它的因子之和,這個(gè)數(shù)就稱為完數(shù)。求1000之內(nèi)的所有完數(shù)。6 有一數(shù)列:2/1,3/2,5/3,8/5,求出這個(gè)數(shù)列的前20項(xiàng)之和。8 打印下列圖案*實(shí)驗(yàn)六實(shí)驗(yàn)六 一維數(shù)組一維數(shù)組【目的與要求】

溫馨提示

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

評(píng)論

0/150

提交評(píng)論