




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(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語言表示邏輯量的方法(以0代表“假”以非0代表“真”)。(2) 學(xué)會(huì)正確使用邏輯運(yùn)算算符和邏輯表達(dá)式。(3) 熟練掌握if語句的使用(包括if語句的嵌套)。(4) 熟練掌握多分支選擇語句switch語句。(5) 結(jié)合程序掌握一些簡(jiǎn)單的算法。(6) 進(jìn)一步學(xué)習(xí)調(diào)試程序的方法。實(shí)驗(yàn)內(nèi)容:本實(shí)驗(yàn)要求事先編好解決下面問題的程序,然后上級(jí)輸入程序并調(diào)試運(yùn)行程序。(1) 有一函數(shù):輸入的值,輸出相應(yīng)的值。用scanf函數(shù)輸入的值,求值(第四章第六題)運(yùn)行程序,輸入的值(分別為x<1、這三種情況),檢查輸出y值是否正確
2、。答:1)調(diào)試通過的程序清單如下:#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)試過程出現(xiàn)的問題說明及處理方法:編譯提示信息如下: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) 從鍵盤輸入一個(gè)小于1000的正數(shù),要求輸出它的平方根(如平方根不是整數(shù),則輸出其整數(shù)部分)。要求在輸入數(shù)據(jù)后先對(duì)其進(jìn)行檢查是否小于1000的正數(shù)。若不是,則要求重新輸入。1)調(diào)試通過的程序清單如下:#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)試通過的運(yùn)行結(jié)果:3)調(diào)試過程出現(xiàn)的問題說明及處理方法: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語句和switch語句來實(shí)現(xiàn)。運(yùn)行程序,并檢查結(jié)果是否正確。1)調(diào)試通過的程序清單如下:#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)試通過的運(yùn)行結(jié)果:3)調(diào)試過程出現(xiàn)的問題說明及處理方法:(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í),通知用戶“輸入數(shù)據(jù)錯(cuò)誤”
11、。程序結(jié)束。答:在編寫程序的時(shí)候已經(jīng)考慮到了該情況,第一次編寫時(shí)已經(jīng)進(jìn)行了優(yōu)化,能夠自動(dòng)處理該情況的出現(xiàn)。以下是運(yùn)行結(jié)果:(4) 輸入4個(gè)整數(shù),要求按由小到大順序輸出,在得到正確結(jié)果后,修改程序使之按由大到小的順序輸出。1) 調(diào)試通過的程序清單如下:#include<stdio.h>int main()int a,b,c,d,t;printf("請(qǐng)依次輸入四個(gè)整數(shù)以空格隔開。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) 通過排列的程序清單如下:#include<stdio.h>int main()int a,b,c,d,t;printf("請(qǐng)依次輸入四個(gè)整數(shù)以空格隔開。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. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- T/CNCA 063-2024煤的真密度測(cè)定氦氣置換法
- T/TMAC 093-2024隧道工程玄武巖纖維噴射混凝土技術(shù)規(guī)范
- 2025年簡(jiǎn)單個(gè)人蔬菜大棚承包合同7篇
- LED顯示屏戶外媒體廣告發(fā)布合同協(xié)議7篇
- 留學(xué)中介服務(wù)合同6篇
- 勞動(dòng)合同臺(tái)賬模板勞動(dòng)合同管理臺(tái)賬6篇
- 電力工程施工合同與電力工程施工承包合同5篇
- 理論聯(lián)系實(shí)際談一談你對(duì)高質(zhì)量發(fā)展的理解參考答案二
- 中小學(xué)生生理衛(wèi)生知識(shí)
- 文字、語音、圖象識(shí)別設(shè)備項(xiàng)目績(jī)效評(píng)估報(bào)告
- 浙江省金華市東陽市2025年七年級(jí)下學(xué)期期末數(shù)學(xué)試題及答案
- 江西省煙草專賣局(公司)筆試試題2024
- 期末復(fù)習(xí)題(試題)2024-2025學(xué)年六年級(jí)下冊(cè)數(shù)學(xué)人教版
- 多彩的非洲文化 - 人教版課件
- 2025年年中考物理綜合復(fù)習(xí)(壓軸特訓(xùn)100題55大考點(diǎn))(原卷版+解析)
- -《經(jīng)濟(jì)法學(xué)》1234形考任務(wù)答案-國開2024年秋
- 2025-2030全球及中國貨運(yùn)保險(xiǎn)行業(yè)市場(chǎng)現(xiàn)狀供需分析及市場(chǎng)深度研究發(fā)展前景及規(guī)劃可行性分析研究報(bào)告
- 醫(yī)院檢驗(yàn)科實(shí)驗(yàn)室生物安全程序文件SOP
- 閥門系數(shù)Cv和KV值計(jì)算表格(帶公式)
- 導(dǎo)流明渠施工方案(共4頁)
- 小學(xué)美術(shù)三年級(jí)下冊(cè)第5課我們班級(jí)的標(biāo)志PPT課件
評(píng)論
0/150
提交評(píng)論