c語(yǔ)言選擇結(jié)構(gòu)程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第1頁(yè)
c語(yǔ)言選擇結(jié)構(gòu)程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第2頁(yè)
c語(yǔ)言選擇結(jié)構(gòu)程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第3頁(yè)
c語(yǔ)言選擇結(jié)構(gòu)程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第4頁(yè)
c語(yǔ)言選擇結(jié)構(gòu)程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)題目:選擇結(jié)構(gòu)程序設(shè)計(jì)實(shí)驗(yàn)?zāi)康模海?) 了解C語(yǔ)言表示邏輯量的方法(以0代表“假”以非0代表“真”)。(2) 學(xué)會(huì)正確使用邏輯運(yùn)算算符和邏輯表達(dá)式。(3) 熟練掌握if語(yǔ)句的使用(包括if語(yǔ)句的嵌套)。(4) 熟練掌握多分支選擇語(yǔ)句switch語(yǔ)句。(5) 結(jié)合程序掌握一些簡(jiǎn)單的算法。(6) 進(jìn)一步學(xué)習(xí)調(diào)試程序的方法。實(shí)驗(yàn)內(nèi)容:本實(shí)驗(yàn)要求事先編好解決下面問(wèn)題的程序,然后上級(jí)輸入程序并調(diào)試運(yùn)行程序。(1) 有一函數(shù):輸入的值,輸出相應(yīng)的值。用scanf函數(shù)輸入的值,求值(第四章第六題)運(yùn)行程序,輸入的值(分別為x<1、這三種情況),檢查輸出y值是否正確

2、。答:1)調(diào)試通過(guò)的程序清單如下:#include<stdio.h>void main()int x,y;printf("請(qǐng)輸入X:");scanf("%d",&x);if(x<1)y=x;else if(x<10)y=2*x-1;else y=3*x-11;printf("y=%dn",y);3)調(diào)試過(guò)程出現(xiàn)的問(wèn)題說(shuō)明及處理方法:編譯提示信息如下:Compiling.c4_4.cF:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(10) : error C2059: syntax error : '

3、bad suffix on number'F:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(10) : error C2146: syntax error : missing '' before identifier 'x'F:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(10) : warning C4552: '-' : operator has no effect; expected operator with side-effectF:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(11) : error C2181: illegal else

4、 without matching ifF:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(11) : error C2059: syntax error : 'bad suffix on number'F:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(11) : error C2146: syntax error : missing '' before identifier 'x'F:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(11) : warning C4552: '-' : operator has no effect; expect

5、ed operator with side-effect執(zhí)行 cl.exe 時(shí)出錯(cuò).c4_4.obj - 1 error(s), 0 warning(s)原因分析:由于習(xí)慣在數(shù)學(xué)上習(xí)慣于用2x表示2*x,導(dǎo)致在這里忽略了“*”,以致程序出現(xiàn)嚴(yán)重錯(cuò)誤。(2) 從鍵盤(pán)輸入一個(gè)小于1000的正數(shù),要求輸出它的平方根(如平方根不是整數(shù),則輸出其整數(shù)部分)。要求在輸入數(shù)據(jù)后先對(duì)其進(jìn)行檢查是否小于1000的正數(shù)。若不是,則要求重新輸入。1)調(diào)試通過(guò)的程序清單如下:#include<stdio.h>#include<math.h>#define M 1000int main()int

6、 i,k;printf("請(qǐng)輸入一個(gè)小于%d的整數(shù)i:",M);scanf("%d",&i);if(i>1000)printf("輸入的數(shù)據(jù)有誤,請(qǐng)重新輸入:",M);scanf("%d",&i);k=sqrt(i);printf("%d的平方根的整數(shù)部分是%dn",i,k);return 0;2)調(diào)試通過(guò)的運(yùn)行結(jié)果:3)調(diào)試過(guò)程出現(xiàn)的問(wèn)題說(shuō)明及處理方法:Compiling.c4_4.cF:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(10) : error C2018: un

7、known character '0xa3'F:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(10) : error C2018: unknown character '0xbb'F:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(11) : error C2146: syntax error : missing '' before identifier 'scanf'F:_選擇結(jié)構(gòu)程序設(shè)計(jì)第四次實(shí)驗(yàn)c4_4.c(13) : warning C4244: '=' : conversion from 'double &

8、#39; to 'int ', possible loss of data執(zhí)行 cl.exe 時(shí)出錯(cuò).c4_4.exe - 1 error(s), 0 warning(s)答:因?yàn)榘训谑械摹?”在中文模式輸入,變成了“;”導(dǎo)致編譯錯(cuò)誤。(3) 給出一個(gè)百分制成績(jī),要求輸出成績(jī)等級(jí)A,B,C,D,E.90分以上為A,8189分為B,7079分為C,60分69分為D,60分以下為E。 事先編好程序,要求分別用if語(yǔ)句和switch語(yǔ)句來(lái)實(shí)現(xiàn)。運(yùn)行程序,并檢查結(jié)果是否正確。1)調(diào)試通過(guò)的程序清單如下:#include<stdio.h>void main()int g,s

9、;char ch;printf("n輸入學(xué)生的分?jǐn)?shù):");scanf("%d",&g);s=g/10;if(s<0|s>10)printf("n輸入數(shù)據(jù)錯(cuò)誤!nn");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("n學(xué)生的成績(jī)等級(jí)是:%c

10、nn",ch);2)調(diào)試通過(guò)的運(yùn)行結(jié)果:3)調(diào)試過(guò)程出現(xiàn)的問(wèn)題說(shuō)明及處理方法:(1)編譯提示信息如下:Compiling.c4_4.cc4_4.obj - 0 error(s), 0 warning(s)(2)連接提示信息如下:Linking.c4_4.exe - 0 error(s), 0 warning(s)原因分析:由于忽略了在程序中加入換行符,導(dǎo)致輸出成績(jī)等級(jí)和“Press any ey to contine”連在一起。 再運(yùn)行一次程序,輸入分?jǐn)?shù)為負(fù)值,這顯然是輸入時(shí)出錯(cuò),不應(yīng)給出等級(jí),修改程序,使之能正確處理任何數(shù)據(jù),當(dāng)輸入數(shù)據(jù)大于100和小于0時(shí),通知用戶(hù)“輸入數(shù)據(jù)錯(cuò)誤”

11、。程序結(jié)束。答:在編寫(xiě)程序的時(shí)候已經(jīng)考慮到了該情況,第一次編寫(xiě)時(shí)已經(jīng)進(jìn)行了優(yōu)化,能夠自動(dòng)處理該情況的出現(xiàn)。以下是運(yùn)行結(jié)果:(4) 輸入4個(gè)整數(shù),要求按由小到大順序輸出,在得到正確結(jié)果后,修改程序使之按由大到小的順序輸出。1) 調(diào)試通過(guò)的程序清單如下:#include<stdio.h>int main()int a,b,c,d,t;printf("請(qǐng)依次輸入四個(gè)整數(shù)以空格隔開(kāi)。n");scanf("%d%d%d%d",&a,&b,&c,&d);if(a>b)t=a;a=b;b=t;if(a>c)t=a

12、;a=c;c=t;if(a>d)t=a;a=d;d=t;if(b>c)t=b;b=c;c=t;if(b>d)t=b;b=d;d=t;if(c>d)t=c;c=d;d=t;printf("四個(gè)整數(shù)經(jīng)從小到大的順序排列后的結(jié)果如下n");printf("%d,%d,%d,%dn",a,b,c,d);return 0;2) 程序運(yùn)行的結(jié)果: 從大到小排列的程序是:1) 通過(guò)排列的程序清單如下:#include<stdio.h>int main()int a,b,c,d,t;printf("請(qǐng)依次輸入四個(gè)整數(shù)以空格隔開(kāi)。n");scanf("%d%d%d%d",&a,&b,&c,&d);if(a<b)t=a;a=b;b=t;if(a<c)t=a;a=c;c=t;if(a<d)t=a;a=d;d=t;if(b<c)t=b;b=c;c=t;if(b<d)t=b;b=d;d=t;if(c<d)t=c;c=d;d=t;printf("四個(gè)整數(shù)經(jīng)從大到小的順序排列后的結(jié)果如下n");printf("%d,%d,%d,%dn",a,b,c,d);return 0

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論