




已閱讀5頁,還剩4頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1 概念填空題1.1任何算法的描述都可以分解為順序結構、分支結構和循環結構。 順序結構 的特點是各塊按照書寫次序依次執行。 分支結構 的特點是根據條件判斷選擇執行路徑。 循環結構 用于實現重復性動作。根據算法的 有窮性 ,循環必須在一定條件下進行,無條件必然會導致 死循環 。1.2 switch語句執行流程是:求表達式的值,其中表達式的值只能是 整型 、 字符型 、 布爾型 或 枚舉型 等類型,而不能取 實型 這樣的連續值;在常量表達式中找與之相等的分支作為執行入口,并從該分支的語句序列開始執行下去,直到遇到break 或switch的結束括號“”為止;當表達式的值與所有常量表達式的值均不相等時,若有 default 分支,則執行其語句序列;若沒有該分支,則結束switch語句,繼續 后續 語句的執行;1.3 c+中提供了若干轉向語句,可以改變程序原來的執行順序。 break 語句只能用在switch語句和循環語句中,從該處跳出switch語句或循環語句,轉去執行switch語句或循環語句之后的語句。continue語句只能用在 循環 中,程序執行到continue語句時,將跳過其后尚未執行的循環體語句,開始 新的 循環。 return 語句用在函數中,用來返回到函數 調用 處。1.4 C+中的文件有兩個相互聯系的概念:內部文件和外部文件。文件通常是指 磁盤文件 ,這里稱為外部文件;而在程序中運行的文件則稱為 內部文件 ,更正式的名稱是文件流對象。程序中操作的是 內部文件 ,最后保存的是 外部文件 。2.簡答題2.1 C+中有什么形式的選擇控制語句?歸納它們的語法形式、應用場合。根據一個實際問題使用不同的條件語句編程。2.2什么叫循環控制?歸納比較C+中各種循環控制語句的語法、循環條件和循環結束條件的表示形式及執行流程,比較其異同點。2.3 根據一個實際問題,用不同的循環語句編程,分析其優缺點。3.選擇題3.1對if語句中的表達式的類型,下面描述正確的是( D )。A.必須是關系表達式B.必須是關系表達式或邏輯表達式C.必須是關系表達式或算術表達式D.可以是任意表達式3.2 與for(表達式1;表達式2;表達式3)功能相同的語句為( A )。A表達式1;B表達式1;while(表達式2)while(表達式2)循環體;表達式3;表達式3;循環體;C表達式1; Ddodo表達式1;循環體;循環體;表達式3;while(表達式2);表達式3; while(表達式2)3.3以下程序輸出結果為(A)。void main() int x(1),a(0),b(0);switch(x)case 0:b+;case 1:a+;case 2:a+;b+;cout”a=”a”,b=”b; Aa=2,b=1 Ba=1,b=1 Ca=1,b=0 Da=2,b=23.4 已知int i=0,x=0;下面while語句執行時的循環次數為(D)。 while(!x & i3) x+;i+; A. 4 B.3 C.2 D.13.5 以下形成死循環的程序段是(B )。 A. for(int x=0;x=0); C.int a=5;while(a)a-; D.int i=3;for( ; i ; i-);3.6 已知有職工情況結構變量emp定義為; strnct Employeechar name20; long code; structint year;int month;int day; birth; emp; 下列對birth的正確賦值方法是( D)。 A.year=1980; month=5; day=1; B.birth.year=1980; birth.month=5; birthday=1; C.emp.year=1980; emp.month=5;emp.day=1; D.emp.birth.year=1980; emp.birth.month=5;emp.birth.day=l;3.7下面的程序段循環執行了(A)次。int k=10;while (k=3) k=k-1;A死循環B0次C3次D7次3.8語句while(!E) 中的表達式!E等價于(A)。AE=0BE!=1CE!=0DE= =14.寫出下列程序運行結果4.1#include void 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; coutdendl; 204.2 #include void main() int a=0, b=1: switch(a) case 0: switch(b) case 0:cout”a=”a”b=”bendl; break; case 1:cout”a=”a”b=”bendl; break; case 1:a+; b+; couta= “a”b=”bendl; a=0 b=1a=1 b=24.3 #include void main() int i=1; while(i=10) if(+i%3!=1) continue; else coutiendl; 4 7 104.4 #include void 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=”xendl; x=165.編程題5.1求100200之間不能被3整除也不能被7整除的數。#includeusing namespace std;int main()int i ;for(i=100;i=200;i+)if(i%3 & i%7)coutit;return 0;5.2輸入一元二次方程的系數,求方程的解。5.3編寫函數使用循環語句分別求兩個數的最大公約數與最小公倍數(兩個數的最大公約數一定小于或等于較小的一個數,但大于等于1。兩個數的最小公倍數一定大于等于較大的一個數,但小于等于兩個數的積)。#includeusing namespace std;int main()int a,b,i;int max,min;cinab;min=ab? a:b;for(i=min;i=1;i-)/求最大公約數if(a%i=0 & b%i=0)coutit;break;for(i=max;i=a*b;i+)/求最小公倍數if(i%a=0 & i%b=0)coutit;break;return 0;5.4從鍵盤輸入一個整數,判斷該數是否為回文數。所謂的回文數就是從左到右讀與從右向左讀都是一樣的數。例如7887、23432是回文數。#includeusing namespace std;int main()int a,b;cina;b=0;for(;a;)b=b*10+a%10;a/=10;coutbendl;return 0;5.5編寫一程序,按下列公式求,精確到最后一項絕對值小于10-6。=#includeusing namespace std;int main()double s=0,i=1;int p=1;dos=s+p*1/i;i+=2;p*=-1;while(1/i=1e-6);coutsendl;return 0;5.6編程輸出如下圖形,中間一行英文字母由鍵盤輸入得到。A BBB CCCCC DDDDDDD CCCCC BBBA解法一#include using namespace std;int main()char in;int i,j;docoutin;if(in=97)&(in=122) in-=32;/小寫改大寫while(in90);int line=in-A;for (i=0;i0;j-) cout ;/前方空格for(j=1;j=2*i+1;j+) cout char(i+A);cout0;i-)/下三角(少一行)for(j=0;j=line-i;j+) cout ;for(j=1;j=2*i-1;j+) cout char(i-1+A);coutendl;return 0;解法二#include using namespace std;void main()char c;int i,j,k,n,&p=i;cinc;/輸入AZ等符號n=c-A;for(i=-n;i=n;i+)for(j=0;jabs(i);j+)cout ;k=n-abs(i);for(j=0;j2*k+1;j+)coutchar(A+k) ;coutendl;5.7假定郵寄包裹的計費標準如下表,輸入包裹重量以及郵寄距離,計算出郵資。重量(克)郵資(元/件)1530456075及以上591214(每滿1000公里加收1元)15(每滿1000公里加收1元)*重量在檔次之間按高檔靠#includeusing namespace std;int main()int s,l,w;/l表示距離,w表示重量cinlw;if(w=15)s=5;else if(w=30)s=9;else if(w=45)s=12;else if(w=60)s=14+l/1000;else s=15+l/1000;coutsendl;return 0;5.8 從鍵盤輸入一組非0整數,以輸入0為結束標志,求這組整數的平均值,并統計其中正數和負數的個數。#includeusing namespace std;int main()int s=0,neg=0,plu=0;int n;cinn;while(n!=0)s+=n;if(n0)plu+;else neg+;cinn;cout平均值= s/(neg+plu)endl;cout正數= plu個endl;cout負數= neg個endl;return 0;5.9 編程求1000之內的所有完全數。完全數指的是一個數恰好等于它的所有因子的和。例如6=1+2+3, 6就是一個完全數。#include using namespace std;int main()int i,a,sum_yz; /sum_yz是a的因子和for(a=1;a1000;a+)sum_yz=0;for(i=1;ia;i+) if (a%i=0) sum_yz+=i;/求因子運算未改變循環控制變量a的值,否則要用另一個變量b來代替a來參加運算if (a=sum_yz)coutaendl;return 0;5.10 將100元換成10元、5元和1元的組合,共有多少種組合方法?#include using namespace std;int main()int i,j,k,count=0;for(i=0;i=10;i+)/i是10元張數,j是5元張數,k是1元張數for(j=0;j=0)coutitjtkendl;count+;coutcountendl;return 0;5.11 有兩隊選手,每隊出5人進行一對一的比賽,甲隊為A、B、C、D、E,乙隊為J、K、L、M、N,經過抽簽決定比賽配對名單。規定A不和J比賽,M不和D及E比賽。列出所有可能的比賽名單。解:這是一個組合問題,使用窮舉法。共有5個位置,設甲隊5名隊員位置不變,乙隊改變隊員位置,進行配對。注意第1個位置可在5個隊員中任選一個,以后的位置必須扣除已選過的隊員。并扣除不能配對的情況,即得所有可能的比賽名單。#includeusing namespace std;int main()char st15=A,B,C,D,E,st25=J,K,L,M,N;int i=0,j,k,l,m,n;for(j=0;j5;j+)/0號位if(j=0) continue;/A選手不與選手J比賽,即st10不與st20比賽for(k=0;k5;k+)/1號位if(k=j) continue;/剔除乙隊占據0號位的選手for(l=0;l5;l+)/2號位if(l=j|l=k) continue;/剔除乙隊占據0、1號位的選手for(m=0;m5;m+)/3號位if(m=j|m=k
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 知識產權質押貸款對企業創新和長期發展潛力的促進作用
- 媒體廣告發布合作協議及保密責任條款
- 那只可愛的流浪貓描寫動物的魅力(5篇)
- 電動汽車設計與制造-課件 第5章-5.1 電驅動系統匹配設計
- 【數學】簡單的軸對稱圖形利用軸對稱性質解決線段和差問題課件 2024-2025學年北師大版七年級數學下冊
- 顧客心理與新零售店內環境設計探討
- 音樂國際推廣中的文化敏感性分析
- 非遺在教育建筑設計中的體現與啟示
- 非物質文化遺產數字化的教育推廣途徑
- 項目管理中的數據分析技巧
- U管制圖計算模板SPC
- 肌肉注射操作評分標準
- 我們畢業啦畢業季通用模板課件
- 小升初數學復習八(平面圖形)講義課件
- 水處理間制度
- (完整版)基建建設工程流程圖
- 公司金融課件(完整版)
- 《我做了一項小實驗》教學設計公開課
- 公務員工資套改和運行案例
- 生物質能發電技術論文
- 哥尼斯堡七橋問題PPT課件
評論
0/150
提交評論