全國計算機等考試公共課和二級C教材課后練習題_第1頁
全國計算機等考試公共課和二級C教材課后練習題_第2頁
全國計算機等考試公共課和二級C教材課后練習題_第3頁
全國計算機等考試公共課和二級C教材課后練習題_第4頁
全國計算機等考試公共課和二級C教材課后練習題_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

教材練習題

第一部分公共基礎部分

第一章數(shù)據(jù)結(jié)構與算法

一.選擇題

1.算法的時間復雜度是指()

A.執(zhí)行算法程序所需要的時間

B.算法程序的長度

C.算法執(zhí)行過程中所需要的基本運算次數(shù)

D.算法程序中的指令條數(shù)

2.算法的空間復雜度是指()

A.算法程序的長度

B.算法程序中的指令條數(shù)

C.算法程序所占的存儲空間

D.算法執(zhí)行過程中所需要的存儲空間

3.下列敘述中正確的是()

A.線性表是線性結(jié)構

B.棧與隊列是非線性結(jié)構

C.線性鏈表是非線性結(jié)構

D.二叉樹是線性結(jié)構

4.數(shù)據(jù)的存儲結(jié)構是指()

A.數(shù)據(jù)所占的存儲空間量

B.數(shù)據(jù)的邏輯結(jié)構在計算機中的表示

C.數(shù)據(jù)在計算機中的順序存儲方式

D.存儲在外存中的數(shù)據(jù)

5.下列關于隊列的敘述中正確的是()

A.在隊列中只能插入數(shù)據(jù)

B.在隊列中只能刪除數(shù)據(jù)

C.隊列是先進先出的線性表

D.隊列是先進后出的線性表

6.下列關于棧的敘述中正確的是()

A.在棧中只能插入數(shù)據(jù)

B.在棧中只能刪除數(shù)據(jù)

C.棧是先進先出的線性表

D.棧是先進后出的線性表

8.在深度為5的滿二叉樹中,葉子結(jié)點的個數(shù)為()

A.32B.31C.16D.15

9.對長度為N的線性表進行順序查找,在最壞情況下所需要的比較次數(shù)為()

A.N+lB.NC.(N+l)/2D.N/2

10.設樹T的度為4,其中度為123,4的結(jié)點個數(shù)分別為4,2,1』.則T的葉子結(jié)點數(shù)為

A.8B.7C.6D.5

二.填空題

1.對長度為n的有序線性表中進行二分查找,需要的比較次數(shù)為()

2.設一棵完全二叉樹共有700個結(jié)點,則在該二叉樹中有()個葉子結(jié)點

3.設一棵二叉樹的中序遍歷結(jié)果為DBEAFC,前序遍歷結(jié)果為ABDECF,則后序遍歷結(jié)果為

4.在最壞情況下,冒泡排序的時間復雜度為()

5.在一個容量為15的循環(huán)隊列中,若頭指針front=6,尾指針rear=9,則該循環(huán)隊列中共有()個

元素.

第二章程序設計基礎

選擇題

1.結(jié)構化程序設計主要強調(diào)的是()

A.程序的規(guī)模

B.程序的易讀性

C.程序的執(zhí)行效率

D.程序的可移植性

2.對建立良好的程序設計風格,下面描述正確的是()

A.程序應簡單、清晰、可讀性好

B.符號名的命名只要符合語法

C.充分考慮程序的執(zhí)行效率

D.程序的注釋可有可無

3.在面向?qū)ο蠓椒ㄖ?,一個對象請求另一對象為其服務的方式是通過發(fā)送()

A.調(diào)用語句

B.命令

C.口令

D.消息

4.信息隱蔽的概念與下述哪一種概念直接相關?()

A.軟件結(jié)構定義

B.模塊獨立性

C.模塊類型劃分

D.模塊耦合度

5.下面對對象概念描述借誤的是()

A.任何對象都必須有繼承性

B.對象是屬性和方法的封裝體

C.對象間的通訊靠消息傳遞

D.操作是對象的動態(tài)屬性

二.填空題

1.結(jié)構化程序設計的三種基本邏輯結(jié)構為順序、選擇和()

2.源程序文檔化要求程序應加注釋。注釋一般分為序言性注釋和()

3.在面向?qū)ο蠓椒ㄖ?,信息隱蔽是通過對象的()性來實現(xiàn)的

4.類是一個支持集成的抽象數(shù)據(jù)類型,而對象是類的()

5.在面向?qū)ο蠓椒ㄖ?,類之間共享屬性和操作的機制稱為()

第三章軟件工程基礎

一.選擇題

1.在軟件生命令周期中,能準確地確定軟件系統(tǒng)必須做什么和必須具備哪些功能的階段是()

A.概要設計B.詳細設計C.可行性研究D.需求分析

2.下面不屬于軟件工程的3個要素的是()

A.工具B.過程C.方法D環(huán)境

3.檢查軟件產(chǎn)品是否符合需求定義的過程稱為()

A.確認測試B.集成測試C.驗證測試D.驗收測試

4.數(shù)據(jù)流圖用于抽象描述一個軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構成。下列圖符名標識

的圖符不屬于數(shù)據(jù)流圖合法圖符的是()

A.控制流B.加工C.數(shù)據(jù)存儲D.源和潭

5.下面不屬于軟件設計原則的是

A.抽象B.模塊化C.臼底向上D.信息隱蔽

6.程序流程圖(PFD)中的箭頭代表的是()

A.數(shù)據(jù)流B.控制流C.調(diào)用關系D.組成關系

7.下列工具中為需求分析的常用工具的是()

A.PADB.PFDC.N-SD.DFD

8.在結(jié)構化方法中,軟件功能分解屬于下列軟件開發(fā)中的階段是()

A.詳細設計B.需求分析C.總體設計D.編程調(diào)試

9.軟件調(diào)試的目的是()

A.發(fā)現(xiàn)錯誤B.改正錯誤C.改善軟件的性能D.挖掘軟件的潛能

10.軟件需求分析階段的工作,可以分為四個方面:需求獲取,需求分析,編寫需求規(guī)格說明書,以及

()

A.階段性報告B.需求評審C.總結(jié)D.都不正確

二.填空題

1.軟件是程序、數(shù)據(jù)和()的集合.

2.Jackson方法是一種面向()的結(jié)構化方法

3.軟件工程研究的內(nèi)容主要包括()技術和軟件工程管理

4.數(shù)據(jù)流圖的類型有()和事務型

5.軟件開發(fā)環(huán)境是全面支持軟件開發(fā)全過程的()集合。

第四章數(shù)據(jù)庫設計基礎

選擇題

1.在數(shù)據(jù)管理技術的發(fā)展過程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫系統(tǒng)階段。其中數(shù)

據(jù)獨立性最高的階段是()

A.數(shù)據(jù)庫系統(tǒng)B.文件系統(tǒng)C.人工管理D.數(shù)據(jù)項管理

2.下述關于數(shù)據(jù)庫系統(tǒng)的敘述正確的是()

A.數(shù)據(jù)庫系統(tǒng)減少了數(shù)據(jù)冗余

B.數(shù)據(jù)庫系統(tǒng)避免了一切冗余

C.數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)的?致性是指數(shù)據(jù)類型一致

D.數(shù)據(jù)庫系統(tǒng)比文件系統(tǒng)能管理更多的數(shù)據(jù)

3.數(shù)據(jù)庫系統(tǒng)的核心是()

A.數(shù)據(jù)庫B.數(shù)據(jù)庫管理系統(tǒng)C.數(shù)據(jù)模型D.軟件工具

4.用樹形結(jié)構來表示實體之間聯(lián)系的模型稱為()

A.關系模型B.層次模型C.網(wǎng)狀模型D.數(shù)據(jù)模型

5.關系表中的每一橫行稱為一個()

A,元組B.字段C.屬性D.碼

6.按條件f對關系R進行選擇,其關系代數(shù)表達式是()

A.RIXIRB.RIXIRC.。f(R)D.nf(R)

7.關系數(shù)據(jù)管理系統(tǒng)能實現(xiàn)的專門關系運包括()

A.排序、索引、統(tǒng)計B.選擇、投影、連接C.關聯(lián)、更新、排序D.顯示、打印、制表

8.在關系數(shù)據(jù)庫中,用來表示實體之間聯(lián)系的是()

A.樹結(jié)構B.網(wǎng)結(jié)構C.線性表D.二維表

9.數(shù)據(jù)庫設計包括兩個方面的設計內(nèi)容,它們是()

A.概念設計和邏輯設計B.模式設計和內(nèi)模式設計

C.內(nèi)模式設計和物理設計D.結(jié)構特性設計和行為特性設計

10將E-R圖轉(zhuǎn)換到關系模式時,實體與聯(lián)系都可以表示成()

A.屬性B.關系C.鍵D.域

二.填空題

1.一個項目具有一個項目主管,?個項目主管可管理多個項目,則實體”項目主管”與實體"項目”

的聯(lián)系屬于()的聯(lián)系.

2.數(shù)據(jù)獨立性分為邏輯獨立性和物理獨立性.當數(shù)據(jù)的存儲結(jié)構改變時;其邏輯結(jié)構可以不變。因此,

基于邏輯結(jié)構的應用程序不必修改,稱為()

3.數(shù)據(jù)庫系統(tǒng)中實現(xiàn)各種數(shù)據(jù)管理功能的核心軟件稱為()

4.關系模型的完整性規(guī)則是對關系的某種約束條件,包括實體完整性、()和自定義完整性.

5.在關系模型中,把數(shù)據(jù)看成一個二維表,每一個二維表稱為一個()

第一章參考答案

一.選擇題

1.C2.D3.A4.B5.C6.D7.B8.B9.B1().A

二.填空題

1)log2n2)3503)DEBFCA4)N(N-l)/25)3

第二章參考答案

選擇題

1.B2.A3.D4.B5.A

填空題

1)重復(或循環(huán))2)功能性3)封裝4)實例5)繼承

第三章參考答案

選擇題

1.D2.D3.A4.A5.C6.B7.D8.C9.B10.B

二.填空題

1)文檔2)數(shù)據(jù)流3)軟件開發(fā)4)變換型5)軟件工具

第四章參考答案

選擇題

1.A2.A3.B4.B5.A6.C7.B8.D9.A10.B

三.填空題

1)一對多(或1:N)2)邏輯獨立性3)數(shù)據(jù)庫管理系統(tǒng)4)參照完整性5)關系

第一章程序設計基本概念

1.1在TRUBOC環(huán)境中用RUN命令運行一個C程序時,所運行的程序的后綴是。

1.2C語言源程序文件的后綴是,經(jīng)過編譯后,生成文件的后綴是,經(jīng)過連接后,生成

文件的后綴是o

1.3結(jié)構化程序由____、、_____三種基本結(jié)構組成。

第二章C程序設計的初步知識

一、選擇題

2.1以下選項中正確的整型常量是

A)12.B)-20C)l,000D)456

2.2以下選項中正確的實型常量是

A)0B)3.1415Q0.329X10(2)(10的2次方)D).871

2.3以下選項中不正確的實型常量是

A)2.607E-lB)0.8103e2C)-77.77D)456e-2

2.4以下選項中不合法的用戶標識符是

A)abc.cB)fileC)MainD)PRINTF

2.5以下選項中不合法的用戶標識符是

A)_123B)printfC)A$D)Dim

2.6C語言中運算對象必需是整型的運算符是

A)%B)/C)!D)**

2.7可在C程序中用作用戶標識符的一組標識符是

A)voiddefineWORDB)as_b3_123IfQFor-abccaseD)2cDOSIG

2.8若變量已正確定義并賦值,符合C語言語法的表達式是

A)a=a+7;B)a=7+b+c,a++C)int(12.3%4)D)a=a+7=c+b

2.9以下敘述中正確的是

A)a是實型變量,C允許進行以下賦值a=10,因此可以這樣說:實型變量中允許存放整型值。

B)在賦值表達式中,賦值號右邊既可以是變量也可以是任意表達式。

C)執(zhí)行表達式a=b后,在內(nèi)存中a和b存儲單元中的原有值都將被改變,a的值已由原值改變?yōu)閎

的值,b的值由原值變?yōu)?。

D)已有a=3,b=5。當執(zhí)行了表達式2=1>h=2之后,己使a中的值為5,b中的值為3。

2.10以下敘述中正確的是

A)在C程序中無論是整數(shù)還是實數(shù),只要在允許的范圍內(nèi)都能準確無誤的表示。

B)C程序由主函數(shù)組成。

C)C程序由函數(shù)組成。

D)C程序由函數(shù)和過程組成。

2.11TURBOC中int類型變量所占字節(jié)數(shù)是

A)1B)2C)3D)

2.12不合法的八進制數(shù)是

A)0B)028C)077D)01

2.13不合法的十六進制數(shù)是A)oxffB)OXabcQOxllD)0xl9

二、填空題

2.14若k為int整型變量且賦值11。請寫出運算k++后表達式的值A)和變量的值B)。

122.15若x為double型變量,請寫出運算x=3.2,++x后表達式的值A)和變量的值B)。

2.16函數(shù)體由符號一開始,用符號一結(jié)束。函數(shù)體的前面是一部分,其后是一部分。

2.17C語言中的標識符可分為一、一、和預定義標識符三類。

2.18在C語言程序中,用關鍵字定義基本整型量,用關鍵字一定義單精度實型變量,用關

鍵字一定義雙精度實型變量。

2.19把al、a2定義成單精度實型變量,并賦初值1的定義語句是。

2.20C程序中定義的變量,代表內(nèi)存中的一個。

2.21表達式3.5+1/2的計算結(jié)果是。

2.22對以下數(shù)學式,寫出三個等價的C語言表達式一、—、—。aXb——c答案:a*b/c、

a/c*b、b/c*a2.23表達式s=10應當讀做“

2.24計算機中內(nèi)存儲器的最小存儲單位稱一,其中能容納的數(shù)是一。

2.25通常一個字節(jié)包含一個二進制位。在一個字節(jié)中能存放的最大(十進制)整數(shù)是一,它

的二進制數(shù)的形式是一;最小(十進制)整數(shù)是一,它的二進制數(shù)的形式是—o

255、11111111、-128、10000000

2.26當計算機用兩個字節(jié)存放一個整數(shù)時,其中能存放的最大(十進制)整數(shù)是一、最小(十

進制)整數(shù)是一,它的二進制數(shù)的形式是一。

2.27在C語言中整數(shù)可用一進制數(shù)、一進制數(shù)和一進制數(shù)三種數(shù)制表示。

第三章、順序結(jié)構

一、選擇題

3.1若a、b、c、d都是int類型變量且初值為0,以下選項中不正確的賦值語句是

A)a=b=c=100;B)d++;C)c+b;D)d=(c=22)-(b++);

3.2以下選項中不是C語句的是

A){inti;i++;printf("%d\n",i);}B);C)a=5,c=10D){;}

3.3以下合法的C語言賦值語句是

A)A=B=58B)k=int(a+b);C)a=58,b=58D)-i;

3.4以下程序的輸出結(jié)果是

A)0B)1C)3D)不確定的值main(){intx=10,y=3;printf("%d\n",y=x/y);)

3.5若變量已正確說明為int類型,要給a、b、c輸入數(shù)據(jù),以下不正確的輸入語句是

A)read(a,b,c);B)scanf("%d%d%d",a,b,c);

C)scanf("%D%D%D",&a,&b,&c);D)scanf("%d%d%d",&a,&b,&c);

3.6若變量已正確說明為float類型,要通過以下賦值語句給a賦予10、b賦予22、c賦予33,以下

不正確的輸入形式是scanf("%f%f%f",&a,&b,&c);

A)10<CR>22<CR>33<CR>B)10.0,22.0,33.0

C)10.0<CR>22,033.0D)1022<CR>33

3.7若變量以正確定義,要將a和b中的數(shù)進行交換,下面不正確的語句組是

A)a=a+b,b=a-b,a=a-b;B)t=a,a=b,b=t;C)a=t;t=b;b=a;D)t=b;b=a;a=t;

3.8若變量已正確定義,以下程序段的輸出結(jié)果是

x=5.16894;pnntf("%f\n",(int)(x*1000+0.5)/(float)1000);

A)輸出格式說明與輸出項不匹配,輸出無定值B)5.17000

05.168000D)5.169000

3.9若有以下程序段,c3中的值是intcl=l,c2=2,c3;c3=cl/c2;

A)0B)1/2C)0.5D)1

3.10若有以下程序段,其輸出結(jié)果是

inta=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf("%d,%d,%d\n",a,b,c);

A)0,0,-10B)0,0,5C)-10,3,-10D)3,3,-10

3.11當運行以下程序時,在鍵盤上從第一列開始輸入9876543210<CR>(此處<CR>代表Enter),

則程序的輸出結(jié)果是

main(){inta;floatb,c;scanf("-?O",&a,&b,&c);printf('Ana=%d,b=%f,c=%f\n",a,b,c);}

A)a=98,b=765,c=4321

B)a=10,b=432,c=8765

C)a=98,b=765.000000,c=4321.000000

D)a=98,b=765,c=4321.0

3.12以下程序的輸出結(jié)果是

main(){inta=2,b=5;printf("a=%%d,b=%%d\nn,a,b);}

A)a=%2,b=%5

B)a=2,b=5

C)a=%%d,b=%%d

D)a=%d,b=%d

3.13若int類型占兩個字節(jié),則以下程序段的輸出是inta=-l;printf("%d,%u\n”,a,a);

A)-1,-1B)-1,32767C)-1,32768D)-1,65535

3.14以下程序段的輸出是intx=496;printf("*%-06d*\nn,x);

A)*496*B)*496*C)*000496*D)輸出格式符不合法

3.15以下程序段的輸出是floata=3.1415;printf(Ml%6.0fl\n",a);

A)13.14151B)13.01C)I3ID)13.1

3.16以下程序段的輸出是

A)|2345.67800|B)112345.6780|C)|12345.67800|D)|12345.678|printf("|.5f|\nu,12345.678);

3.17以下程序段的輸出是

A)*0000057.66*B)*57.66*C)*0000057.67*D)*57.67*floata=57.666;printfl:"*0.2f*\nu,a);

3.18若從終端輸入以下數(shù)據(jù),要給變量C賦以283.19,則正確的輸入語句是

A)scanf(u%f;c);B)scanf(M%8.4f',&c);C)scanf(n%6.2f',&c);D)scanf("%8'\&c);283.1900<CR>

<CR>表示Enter鍵

答案:由于印刷錯誤,本題沒有正確答案。改正意見:把選項A改為:scanf(”%f”,&c);或者把選項

D改為:scanf("”,&c);則可分別選擇A或者D為正確答案。

3.19若變量已正確說明,要求用以下語句給a賦予

3.12、給b賦予9.0,則正確的輸入形式是(口代表空格)

scanf(',a=%f,b=%f,,,&a,&b);vCR>表示Enter鍵

A)3.12nQ9.0<CR>B)a=Q□3.12b=Q□Q9<CR>

C)a=3.12,b=9<CR>D)a=3.12Q口,b=9口□□D<CR>

3.20以下程序的輸出結(jié)果是

#include"math.h"

main(){

doublea=-3.0,b=2;

printf(u%3.0f%3.0f\nH,pow(b,fabs(a)),pow(fabs(a),b));

)

A)98B)89C)66D)以上三個都不對

二、填空題

3.21若有以下定義,請寫出以下程序段中輸出語句執(zhí)行后的輸出結(jié)果。⑴—⑵一⑶―int

i=-200,j=2500;printf(,,(l)%d%dn,ij);printf(n(2)i=%d,j=%d\nH,i,j);printf(H(3)i=%d\nj=%d\nn,i,j);

3.22變量i、j、k已定義為int類型并有初值0,用以下語句進行輸入時scanf(”%d”,&i);scanf("%d”,&j);

scanf(n%dn,&k);當執(zhí)行第一個輸入語句,從鍵盤輸入:12.3<CR>vCR>表示Enter鍵貝I」變量i、j、

k的值分別是一、—、—O

3.23復合語句在語法上被認為是—o空語句的形式是—o

3.24C語句的最后用—結(jié)束。

3.25以下程序段,要求通過scanf語句給變量賦值,然后輸出變量的值。寫出運行時給k輸入100,

給a輸入25.81,給x輸入1.89234時的三種可能的輸入形式、、ointk;floata;double

x;scanf(,,%d%f%lf',&k,&a,&x);printf(nk=%d,a=%f,x=%f\nn,k,a,x);

3.26以下程序段的輸出結(jié)果是—o

intx=0177;printf(,'x==,x=m,x=$%6o,x=%6x,x=%6u\n',,x,x,x,x,x);

3.27以下程序段的輸出結(jié)果是—o

intx=0177;printf("x=%-3d,x=%-6d,x=$%-06d,x=$d,x=%d\n”,x,x,x,x,x);

3.28以下程序段的輸出結(jié)果是一o

doublea=513.789215;printf("a=%8.6f,a=%8.2f,a=.8f,a=.81f\nH,a,a,a,a);

第四章

一、選擇題

4.1下列運算符中優(yōu)先級最高的算符是

A)!B)%C)-=D)&&

4.2下列運算符中優(yōu)先級玨低的算符是

A)||B)!=C)<=D)+

4.3為表示關系:x3ymz,應使用的C語言表達式是

A)(x>=y)&&(y>=z)B)(x>=y)AND(y>=x)

C)(x>=y>=x)D)(x>=y)&(y>=z).

4.4設a、b和c都是int型變址,且a=3,b=4,c=5;則以下的表達式中值為。的表達式是

A)a&&bB)a<=bC)s11b+c&&b-cD)!((a<b)&&!c111)

4.5有以下程序:

?include<stdio.b>

main()

|intas2,b=-1,c=2;

if(a<b)

if(b<0)c=0;

elsec+=I;

printf("%d\nn,c);

I

程序的輸出結(jié)果是

A)0B)1C)2D)3

4.6有以下程序:

^include<stdio.h>

main()

|intw=4.x=3.y=2,z=l:

prinlf(M%d\nM.(w<x?w:z<y?i:x));

程序的輸出結(jié)果是

A)1B)2C)3D)4

4.7有以下程序:

^include<6tdio.h>

main()

|iniatb,s;

scanr("%d%d0,&a,&b);

ssa;

if(a<b)ssb;

s?=s;

uu

prinlf(%d\nts);.

I

若執(zhí)行以上程序時從鍵盤上輸入3和4.則輸出結(jié)果是

A)14B)16

4.8有以下程序片段:

y=-I;

if(x!=o)

if(x>0)y=1$

elsey=0;

其能正確衰示的數(shù)學函效關系是

-i(z<o)?.JXs<0)

A)y=0(x=0)B)y?,-!(?s0)

,l(x>0)0U>0)

f0(x<0).-!(x<0)

C)y=,-1(x=0)D)yc,l(?=0)

l(x>0),0(x>0)

4.9有以下程序:

include<stdio.h>

main()

Iintk=-3;

if(k<=0)printf("**??

elseprintf(;

I

程序的輸出結(jié)果是

A)輸出####B)的出&&&&

C)輸出#田紳&&&&D)有語法錯不能通過幗譯

4.10若a和b均是正整型變坦,正瑜的『itch語句是

A)switch(pow(a,2)?pow(b.2))(注:兩用求萍的數(shù)學函數(shù))

|case1:case3:y=a+b;break;■??

case0:case5:y=a-b;

I

B)switch(a?a?b?b);

Icase3:

caseI:ysa4-b;break;

case0?y?b-a;break;

I

C)switcha

Idefault:x-a4*b;

case10:y=2a-b;break;

caseII:xsaed;break;

I

D)Bwilch(8+b)

IcaselO:xsa4-b;break;

easel1?y=a-b;break;

I

二■填空期

4.11Cig音中用[I]表示小輯值.真:,用[2]裳示邏輯值“假

4.12CiS盲中的關系運算符“!="的優(yōu)先級比“<="o

4.13C詔音中的邏輯運算符“&&”比“■的優(yōu)先級o

4.14C謂酉中的關系運算符“==w比邃輯運算符“&&”的優(yōu)先級—

4.15Cig盲中邏輯運算符的優(yōu)先級高于算術運算符。

4.16將下列數(shù)學式改寫成C語官的關系表達式或邏輯表達式:A)B)o

A)a=b或a<cB)Ixl>4

4.17請寫出以下程序的輸出結(jié)果o

^include<sldio.h>

main()

Iinia=100;

ww

if(a>100)printf(%d\nta>100);

w

elseprintf("%d\nta<=100);

I

4.18請寫出與以下褻達式等價的敦達式:A)B)?

A)!(x>0)B)!0

4.19當a=1,b=2.c=3時.以下if語句執(zhí)行后,a、b、c中的值分別為[1]、[2]、[3]

if(a>c)

bsa;a=c;csb;

4.20若變fit巳正瓏定義,以下語句段的輸出結(jié)果是。

x=01y?2;x=3;

switch(x)

|case0:awitch(y==2)

|caseI:prinlf("*");break;

*

case2:printf("%");break;

I

case1?switch(z)

IcaseI:printf("$");

case2:prinlf("?");break;

default:print!(°f");

I

I

三、編程版

4.21若n的值小于100,請將以下選擇結(jié)構改寫成由"itch語句構成的選擇結(jié)構。

if(a<30)m=1;

elseif(a<40)m=2;

elseif(a<50)m=3;

elsei((a<60)ra=4;r-<-

elsemsS;

4.22編寫程序,輸入一位學生電生日(年:J),月:而'日:M).并輸入當前的日期(年:yl、月:ml、日:dl),

輸出該生的實際年齡。':1—”乂「:

4.23編寫程序,輸入一個SS數(shù),,打印出它是奇數(shù)還是偶數(shù)。;,-

4.24編寫程序,輸入a、b、cW個數(shù),打印出場大者。二,.

4.25對于以下函數(shù);

產(chǎn)(-5<x<0)

y=.x-1(?=0)

,*?I(0<z<10)

野寫程序,要求輸入x的值,輸出y的值。分別用:

(I)不嵌套的if語句’(2)嵌套的正沿句

(3)if-else語句(4),Mlch語句

第五章

一.選擇跳

5.1有以下程序段:

?ntk,j,si

(ot(k=2;kv6;k++,k++)

for(j=k;j<6;j+?)fl+=j;

I

printf("%d'n"?s);

程序段的輸出結(jié)果是

A)9B)lc)nD)10

5.2有以下程序段:

inti9j9m=0;

for(i?I;i<=15;i+=4)

for(j=3;j<=19;j+=4)m??;

printf("%d\n",m);

程序段的輸出結(jié)果是

A)12B)i5-C)20D)25

5.3有以下程序段:

intn=10;

??

while(n>7)

?;

In——;

printf(M%d\n*,n);

1

1

程序段的輸出結(jié)果是

A)10B)9C)10'D)9

9898

8787

76

5.4有以下程序段:

intx=3;

do

1printf(0%3d-,x-=2)j?

1

while(!(-----x));

程序段的輸出結(jié)果是

A)1B)30C)l-2D)死循環(huán)

5.5有以下程序:

^include<stdio.h>

main()

Iinti9sum;

fbr(i=l;i<6;i+>)Rm+=sum;

printf("%d'n",sum);

I

程序的輸出結(jié)果是

A)15B)14C)不確定D)0

5.6有以下程序:

"include<stdio.h>

main()

|iniy=10;

for(jy>0jy--)

if(y%3==0)

|prialf("%d",--y)5conlinue;

程序的輸出結(jié)果是

A)741B)852C)963D)875421

5.7有以下程序段:

intx;

for(x=3;x<6;x++)

printf((x%2)?("??%d")C##%d\n"),x);

程序段的輸出結(jié)果是

A)”3B)##3C)##3D)?*3##4

#A4**4??4##54?5

?*5

5.8有以下程序:

"include<stdio.h>

main()

Iinti;

for(i=1;i<s5(i++)

Iif(i%2)printf("*");

elsecontinue)

printf(

I

printf("$\n")j

I

程序的輸出結(jié)果是

A)???#?#$?*$C)?#?#$

5.9以下敘述中正確的是

A)d。-while語句構成的循環(huán)不能用其他語句構成的地環(huán)來代替

B)do-while語句構成的循環(huán)只能用bieak語句退出

C)用d。-while語句構成循環(huán)時,只有在while后的表達式為非零時結(jié)束梯環(huán)

D)用do-while語句構成循環(huán)時,只有在while后的表達式為零時結(jié)束循環(huán)

5.10有以下程序:

#include<stdio.h>

main()

Iintx9i;

for(i=11i<=?100;i++)

if(?+x%2==0)

if(4+x%3=-0)

if(++x%7?=0)

printf("%d",x);

I.

printf("\n")j

程序的輸出結(jié)果是

A)2870B)4284C)2668D)3981

二、頊空蹈

5.11當執(zhí)行以下程序段后,i的值是[I]、j的值是[2]、k4值是[3)

inta.b,c,d,i,j,k(

intk,n,叫——^:;:3三海三;

n-10}m?1;k?.__二75歲£《:二

while(k++<=n)僦=疑蘇^3"

printf(M%d\n0,m);J”!|了我;]

5.13以下程序的輸出向期feL'j

/include<atdio.h>

main()

|intx?2;

while(x--);

printf("%d\n".x);

5.14以下程序段的輸出結(jié)果是

inti=0,sum=1;

do|sumwhile(i<5)?

printf("%d\n"taum);

5.15有以下程序段:

8N1.0;

for(k=1;k<=n;k++)s=841.0/(k?(k+1));

printf("%f\n°,a);

請?zhí)羁?,使下面的程序段的功能完全與之等同。

s=0.0;

[1]?

k=0;

do

|8=s+d;

[2];,

d=1.0/(k?(k+I));

Iwhile([3]);.

printf(n%f\n",?)j

5.16以下程序的功能是:從鍵盤上檢人若干學生的成績,統(tǒng)計并輸出圾合成績和G低成績,當輸入負數(shù)時

結(jié)束輸入。請?zhí)羁铡?/p>

^include<stdio.h>*

main()

Ifloatx,amax,amin;

scanf(M%r,&x);

amax=x;amin=x;

while((1))

|if(x>amax)amax=x;

i(([2])amin=

M

scanf(%F9&x);

I

printf(11\namax?%f\namin=%f\nM,amax,amin);

I

三、編程遁

5.17編寫程序,求I-3+5-7+???-99+101的值。

5.18編寫程序,求e的值”1+*丘+&?4+????

(I)用for循環(huán),計算前50項。

(2)用while循環(huán),要求直至最后一項的值小于10-4.

S.19婚寫崔用,輸出從公元2000年至3000年所有國年的年號,每輸出10個年號就一行。判順公元年必

否為用年的條件是:

(1)公元年數(shù)如能被4贅除,而不能被100整除,則是閏年.

(2)公元年效能被400整除也是閏年。

5.20組寫程序,打印以下出形:

61C語盲中的簡單數(shù)堀類型布…二二二:二二二…一二…":

A)整型、實型、逆粒理弓.;:,M童塾事由、令箝塞.:|/;

C)整型、字符型、邏輯型;:!或)蠹程金金星野型序符型;.

6.2C語言中,字符(ch峭我型霸在慎稱四索中的榭嶙式&

A)反碼B)神寓:[「C)EBCDICSb)ASCftfi

6.3設有定義iS句:ehwqM''72i,四變9a

A)包含1個字符B)包含2個字橋C>包含3個字符—D)定義不合法

6.4Cii盲中,下列不合法的字符常15是7_:1二v二二一

A)'\xff'B)'\65'D)'\028'

6.5C語音中,下列不合法的字符串*G是

A)B)*y?*?C)°\n\n"D)"ABCD\x6dn

6.6判斷char型變世c珞否為大寫字母的很簡單且正確的裳達式是

A)*A'<=c<a*Z*B)(c>±'A')ll(c<='Z')

C)CA*<?C)ANDCZ'>=C)D)(C>='A')&&(C<=Z)

6.7有以下程序*

#indude<sldio.h>

main()?

Icharcl=*A*tc2**Y*i

MM

prinlf(%d,%d\n,clvc2)s

A)因輸出格式不合法,無正確輸出B)65,90

C)AtYD)65,89

6.8有以下程序:

?include<sldio.h>

main()

Icharx=*A*;

i=(x>='A'&&x<=*Z*)?(x?32):x;

printf("%c\n0,x)s

I

程序的輸出結(jié)果是

A)AB)aC)ZD)x

6.9有以下程序:

航delude<stdio.h>

main()

Icharch;

ch='A〕'5'-'3';

prinlf("%d,%c\n",ch,ch);

I

程序的輸出結(jié)果是°

A)67,CB)B.CC)C.DD)不確定的值

6.10有以下程序:

^include<Btdio.h>

main()

Iinte;

while((csgetchar())!

Iswitch(c-*2*),

|case0:

caseI:pulchar(e?4)]

case2iputchar(c?4)?break,

case31putchar(c+3))

default:putchar(c+2);break;

I

|printf("\u")?

I

從第一列開始輸入數(shù)據(jù):2473<CR>,<CR>代表Euler健,程序的輸出結(jié)果是

A)668977B)668966C)66778777D)6688766

6.11若變址巳正確定義,要求用語句:給cl賦予字符%,給c2

賦予字符明給。賦予2.0,給b賦予4.0,則正確的輸入形式是(U代表空格,<CR>代表Enter?)

A)2.0U%U4.0U#<CR>B)2.0%4.0U?<CR>

C)2%L4U4?<CR>D)2U%U4Uf<CR>

二、填空騎

6.12C語言中,字符在內(nèi)存中占一個字節(jié)。

6.13調(diào)用Cig言提供的對字符進行處理的庫函數(shù)時,?在*include命令行中應包含的頭文件是一。

6.14若變fit已正確定義,在執(zhí)行以下while語句時.輸入字符A后,ch的值是_v

while(ch=gctchor()=?*A');

6.15若變址巳正確定義,要通過以下語句給*b、c、d分別輸入字符A、B、C、D,給明人y、z分別輸入贅數(shù)

10、20、30、40,正確的輸入形式是_,請用<CR>代衣Enter鍵。

A

scanf("%d%c%d%c%d%c%d%c.&w.&att&bt&yt&c,&z,&d);

6.16若有以下定義和輸入語句,要求給cl、c2分別輸入字符A和B,給融、*2分別輸入7.29和101.298,

從鍵盤正確輸入數(shù)據(jù)的形式是一O/

charcl,c2;floatal,a2;■

scanf("%[%P,&al,&a2);scahf("%c%c",&cl,&c2);

6.17若有以下定義和輸入語句,要求給cl,c2分別輸入字符A和B,給.1、《2分別輸入7.29和101.298,

從健盤正確軸入數(shù)據(jù)的形式是―

charci,c2jOpai?1,a?j,

?c#nf("%c%f%c,Acl.Aai,&e2,**2)j

6.18若有以下定義和輸入造句,要求給。1、c2、c3分別融入字符AB和

溫馨提示

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

評論

0/150

提交評論