版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 習(xí)題 2 及其解答選擇題1已知 int i=0, x=1, y=0 ; 在下列選項(xiàng)使i的值變成1的語(yǔ)句是( c )。(a) if( x&y ) i+ ;(c) if( x|y ) i+ ;(b) if( x=y ) i+ ;(d) if( !x ) i+ ;x 012設(shè)有函數(shù)關(guān)系為 y=,下面選項(xiàng)中能正確表示上述關(guān)系為( c )。x 0 01x 0(a) y = 1 ;(b) y = -1 ;if( x != 0 )if( x = 0 )if( x = 0 ) y = 0 ;else y = -1;if( x 0 ) y = 1 ;else y = 0;%(c) if( x = 0 )(d)
2、 y = -1 ;if( x = 0 )if( x 0 ) y = -1 ;else y = 1 ;if( x 0 ) y = -1 ;else y = 0 ;else y = 1 ;3假設(shè) i=2,執(zhí)行下列語(yǔ)句后 i 的值為( b )。switch( i ) case 1 : i + ;case 2 : i - ;case 3 : + i ; break ;case 4 : - i ;*default : i + ;(a) 1(b) 2(c) 3(d) 44已知 int i=0,x=0; 下面 while 語(yǔ)句執(zhí)行時(shí)循環(huán)次數(shù)為( d )。while( !x & i 3 ) x+ ; i+ ;
3、 (a) 4(b) 3(c) 2(d) 15已知 int i=3;下面 do_while 語(yǔ)句執(zhí)行時(shí)循環(huán)次數(shù)為( b )。do i-; coutiendl;while( i!= 1 );(a) 1(b) 2(c) 3(d) 無(wú)限6下面 for 語(yǔ)句執(zhí)行時(shí)循環(huán)次數(shù)為( b )。¥int i;for ( i=0,j=5;i=j; ) cout i j endl; i+; j-;(a) 0(b) 5(c) 10(d) 無(wú)限7以下死循環(huán)的程序段是( b )。(a) int x; for( int x=0 ; x=0 ) ;(c) int a=5 ; while( a ) a- ; ;(d) int i
4、=3 ; for( ; i ; i - ) ;閱讀下列程序,寫出執(zhí)行結(jié)果1#includeusing namespace std;int main() int a,b,c,d,x;a = c = 0; b = 1; d = 20;if( a ) d = d-10;else if( !b )if( !c )x = 15;else x = 25;cout d endl;【解答】202#includeusing namespace std;int main() int a = 0, b = 1;switch( a ) case 0: switch( b ) case 0 : couta=a b=be
5、ndl; break;case 1 : couta=a b=bendl; break;case 1: a+; b+; couta=a b=bendl; 【解答】a= 0 b= 1a= 1 b= 23#includeusing namespace std;int main() int i = 1;while( i=10 )if( +i % 3 != 1 )#continue;else cout i endl;【解答】47104#include using namespace std;】int main() int i = 0 , j = 5;do i+; j-;if ( i3 ) break;
6、while ( j0 );cout i= i t j= j endl;【解答】i= 4j= 1】5#includeusing namespace std;int main() int i,j;for( i=1, j=5; ij; i+ ) j-; coutitjendl;【解答】¥336#includeusing namespace std;int main() int i, s = 0;for( i=0; i5; i+ )switch( i ) case 0: s += i; break;case 1: s += i; break;case 2: s += i; break;default:
7、 s += 2;couts=sendl;【解答】s= 77#includeusing namespace std;,int main() int i, j, x = 0;for( i=0; i=3; i+ ) x+;for( j=0; j=3; j+ ) if( j % 2 ) continue;x+;x+; cout x= x endl;【解答】x= 16思考題1. C+中有什么形式的選擇控制語(yǔ)句歸納它們語(yǔ)法形式、應(yīng)用場(chǎng)合。根據(jù)一個(gè)實(shí)際問(wèn)題使用不同的條件語(yǔ)句編程?!窘獯稹空Z(yǔ)句使用場(chǎng)合需要對(duì)給定的條件進(jìn)行判斷,并根據(jù)判斷的結(jié)果選擇不同的操作。適用于復(fù)雜的條件表達(dá)式判斷。根據(jù)整型表達(dá)式的不同值決
8、定程序分支的情況。:switch(表達(dá)式)適用于判斷表達(dá)式簡(jiǎn)單,需要多個(gè)分支處理的情況。case 常量表達(dá)式 n; 語(yǔ)句 n;default : 語(yǔ)句 n+1;演示程序:程序(1)什么叫循環(huán)控制歸納比較 C+中各種循環(huán)控制語(yǔ)句的語(yǔ)法、循環(huán)條件和循環(huán)結(jié)束條件的表示形式及執(zhí)行流程?!窘獯稹垦h(huán)控制是在特定的條件下,程序重復(fù)執(zhí)行一些特定動(dòng)作。、語(yǔ)句while 語(yǔ)句while(表達(dá)式)循環(huán)體;程序中常用于根據(jù)條件執(zhí)行操作而不需關(guān)心循環(huán)次數(shù)的情況。先判斷形式循環(huán),條件不成立時(shí)不進(jìn)入循環(huán)體。、循環(huán)條件:表達(dá)式值為非 0(真)循環(huán)結(jié)束條件:表達(dá)式值為0(假)do-while 語(yǔ) do程序中常用于根據(jù)條件執(zhí)行
9、 句循環(huán)體while(表達(dá)式);循環(huán)條件:表達(dá)式值為非 0(真)循環(huán)結(jié)束條件:表達(dá)式值為0(假)一般情況, while 語(yǔ)句和 dowhile 語(yǔ)句可以互換使用。for 語(yǔ)句稱為步長(zhǎng)循環(huán)語(yǔ)句,通常用于確定循環(huán)次數(shù)的情況。由于語(yǔ)句的3個(gè)表達(dá)式均可以缺省,也可以用于條件循環(huán),即循環(huán)次數(shù)不確定的情況。循環(huán)體執(zhí)行部分。環(huán)體的最后一個(gè)執(zhí)行表達(dá)式。(3)循環(huán)條件:表達(dá)式2 值為非 0(真)循環(huán)結(jié)束條件:表達(dá)式 2 值為 0(假)3. 根據(jù)一個(gè)實(shí)際問(wèn)題,用不同的循環(huán)語(yǔ)句編程,分析其優(yōu)缺點(diǎn)?!窘獯稹柯浴?. 用 if 語(yǔ)句和 goto 語(yǔ)句組織循環(huán),改寫思考題的第 3 小題編寫的程序。分析在什么情況下可以適當(dāng)
10、使用 goto 語(yǔ)句?!窘獯稹吭诓黄茐某绦蚧玖鞒炭刂频那闆r下,可以適當(dāng)使用 goto 語(yǔ)句實(shí)現(xiàn)從語(yǔ)句結(jié)構(gòu)內(nèi)部向外的必要跳轉(zhuǎn),即按特定條件結(jié)束結(jié)構(gòu)語(yǔ)句塊的執(zhí)行。程序略。5.有以下程序#includeusing namespace std;int main() char c;cinc;if(c=y|c=Y)int a=1;elseint a=0; couta=aendl;編譯錯(cuò)誤為:error C2065: a : undeclared identifier,指示語(yǔ)句行couta=aendl;變量 a 沒有定義。請(qǐng)分析原因,并做出修改。|【解答】程序在if和else分支中分別聲明了各自的局部變量
11、a,而執(zhí)行輸出語(yǔ)句時(shí),聲明的變量a作用域已經(jīng)結(jié)束,所以編譯器認(rèn)為輸出語(yǔ)句的a沒有定義。正確的程序是:#includeusing namespace std;int main() char c;int a;cinc;if(c=y|c=Y)a=1;elsea=0;couta=aendl;6. 有以下程序,希望判斷兩個(gè)輸入的整數(shù)是否相等。程序通過(guò)編譯,但不能達(dá)到預(yù)期結(jié)果。請(qǐng)分析程序能夠通過(guò) C+編譯而不能得到期望結(jié)果的原因。#includeusing namespace std;int main() int a,b;couta;;coutb;if( a=b )couta等于bendl;elsecou
12、ta不等于bendl;程序運(yùn)行后,輸入 a 的值為 4,b 的值為 9,顯示結(jié)果如下:a: 4b: 9 9 等于 9【解答】在 if 語(yǔ)句的判斷表達(dá)式(a=b)中,賦值號(hào)“=”應(yīng)該是邏輯等“=”。從語(yǔ)法上,C+的 if 語(yǔ)句把 a=b這個(gè)賦值表達(dá)式視為邏輯表達(dá)式,沒有編譯錯(cuò)誤。a=b 的值決定于 b。若 b 的輸入值不等于 0,if 作為邏輯真(true),否則作為邏輯假(false)。所以,題目中輸入 b 的值雖然不等于 a,但表達(dá)式 a=b 為邏輯true,執(zhí)行了 if 語(yǔ)句的第 1 個(gè)分支。編程題1輸入某學(xué)生成績(jī),若成績(jī)?cè)?85 分以上輸出“very good”,若成績(jī)?cè)?60 分到 8
13、5 分之間輸出“good”,若成績(jī)低于 60 分輸出“no good”?!窘獯稹?includeusing namespace std;int main() double score;*cout score;if ( score=85 ) cout =60 ) cout Good!;else cout No good!;2輸入三個(gè)整數(shù),按從小到大的順序輸出它們的值?!窘獯稹?includeusing namespace std;int main() int a, b, c, t;cout a b c;if(ab) t=a; a=b; b=t; if(ac) t=a; a=c; c=t; if(
14、bc) t=b; b=c; c=t; cout a t b t c endl;3輸入三角形的三條邊,判別它們能否形成三角形,若能,則判斷是等邊、等腰、還是一般三角形。. 【解答】#includeusing namespace std;int main() double a, b, c ;cout a b c ;if ( a+b c & b+c a & c+a b ) if ( a = b & b = c )cout 等邊三角形! endl;else if ( a = b | a = c | b = c )cout 等腰三角形! endl;else cout 一般三角形! endl;elseco
15、ut 不能形成三角形! endl ;4輸入百分制成績(jī),并把它轉(zhuǎn)換成五級(jí)分制,轉(zhuǎn)換公式為:A(優(yōu)秀)90 100B(良好)80 8970 7960 69grade(級(jí)別) C(中等)D(合格) (不合格) E0 59【解答】#includeusing namespace std;int main() double score; char grade;cout score;if ( score = 0 & score = 100 ) switch ( int( score ) /10 ) casecase10:9: grade = a; break;casecase8: grade = b; br
16、eak;7: grade = c; break; casecasecasecasecasecasecase6: grade = d; break;5:4:3:2:1:0: grade = e; break;、else cout 數(shù)據(jù)輸入錯(cuò)誤! endl;goto end;cout grade endl;end: ; endl; goto end;case r: cout Scissor is crushed by rock. endl; goto end;case p: cout Scissor cuts paper. endl; goto end;default : cout second
17、input error! endl ; goto end;case r:switch ( second ) case s: cout Rock crushes scissor. endl; goto end;case r: cout Rock ties rock. endl; goto end;case p: cout Rock is wrapped by paper. endl; goto end;default : cout second input error! endl; goto end;case p:switch ( second ) case s: cout Paper is c
18、ut by scissor. endl; goto end;case r: cout Paper wraps the rock. endl; goto end;case p: cout Paper ties paper. endl; goto end;default : cout second input error! endl; goto end;default : cout First input error! endl; goto end;end: ; 6.輸入一個(gè)整數(shù),輸出該整數(shù)的所有素?cái)?shù)因子。例如,輸入 120,輸出為 2、2、2、3 和 5?!窘獯稹?includeusing na
19、mespace std;int main() int m,i = 2;cout m;while( i=m )if( m % i = 0 ) cout i ,;:m = m / i;else i+;7.使用迭代公式(x a / x )/ 2 (n 0,1, 2, ;x a / 2)編程序求某一正整數(shù) a 的平方根。xn1nn0【解答】#include#includeusing namespace std;int main(), const double eps = 1e-8;double a,x0,x;cout a;x0 = a / 2;x = ( x0 + a/x0 )/2;while( fa
20、bs( x-x0 )eps ) x0 = x; x =( x0 + a/x0 )/2;cout x endl;。8.已知 X=0 ,10 ,20 ,180 ,求 sinx,cosx 和 tanx 的值。 【解答】#include#include#includeusing namespace std;int main() const double pi = 3.;int i;!double x,y1,y2,y3;cout setw(2) x setw(15) sin(x) setw(15) cos(x) setw(15) tg(x) endl;for( i=0; i=18; i+ ) x = i
21、*10*pi/180;y1 = sin( x );y2 = cos(x);y3 = y1/y2;cout setw(2) i setw(15) y1 setw(15) y2 setw(15) y3 endl;9.在 100 到 200 中找出同時(shí)滿足用 3 除余 2,用 5 除余 3 和用 7 除余 2 的所有整數(shù)?!窘獯稹?includeusing namespace std;int main() int i;for( i=100; i=200; i+ )| if ( ( i % 3 = 2) & ( i % 5 = 3 ) & ( i % 7 = 2 ) )cout i endl;10.求 100 到 999 中的水仙花數(shù)。所謂水仙花數(shù)是指一個(gè)三位數(shù),它的每位數(shù)字的立方之和等于該數(shù)。例如,因?yàn)?153=1 3 +5 3 +3 3 ,所以 153 為水仙花數(shù)。 【解答】#includeusing namespace std;int main() int i,a,b,c;for( i=100; i=999; i+ ) a = i/100;b = ( i-a*100 ) / 10;c = i - a*100 - b*10;if ( i = a*a*a + b*b*b + c*c*c ) cout i endl;11.求 1000 之內(nèi)的所有完數(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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高職教育測(cè)量與評(píng)價(jià)(評(píng)價(jià)方法應(yīng)用)試題及答案
- 斑塊穩(wěn)定性增強(qiáng)的干細(xì)胞治療策略
- 教體局消防培訓(xùn)課件模板
- 養(yǎng)老院老人生活照顧人員考核獎(jiǎng)懲制度
- 養(yǎng)老院老人健康飲食營(yíng)養(yǎng)師激勵(lì)制度
- 養(yǎng)老院入住老人醫(yī)療保健制度
- 2026年開放大學(xué)校長(zhǎng)信息化試題含答案
- 2026年邊防巡邏防控技能考核題庫(kù)含答案
- 2026年認(rèn)證認(rèn)可條例中認(rèn)證人員行為規(guī)范練習(xí)題及答案
- 2026年公務(wù)員誠(chéng)信體系建設(shè)試題含答案
- 2026年美團(tuán)商業(yè)分析師崗位筆試解析與面試問(wèn)答技巧
- 某高校十五五教育大數(shù)據(jù)治理中心與智慧校園支撐平臺(tái)建設(shè)方案
- 2026年山西警官職業(yè)學(xué)院?jiǎn)握芯C合素質(zhì)考試備考試題帶答案解析
- 汽修廠文件檔案歸檔制度
- 高校科研項(xiàng)目立項(xiàng)及管理規(guī)范
- 2026年工業(yè)數(shù)字化能碳管理項(xiàng)目可行性研究報(bào)告
- 《事故隱患排查治理資金使用專項(xiàng)制度》
- 肯德基加盟協(xié)議書
- 企業(yè)ERP系統(tǒng)維護(hù)操作手冊(cè)
- 2025年高中語(yǔ)文必修上冊(cè)《登泰山記》文言文對(duì)比閱讀訓(xùn)練(含答案)
- 2025中國(guó)機(jī)械工業(yè)集團(tuán)有限公司(國(guó)機(jī)集團(tuán))社會(huì)招聘19人筆試參考題庫(kù)附答案
評(píng)論
0/150
提交評(píng)論