




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2018年計(jì)算機(jī)二級(jí)C語(yǔ)言模擬題1
(總分:100.00,做題時(shí)間:120分鐘)
一、選擇題
(每題1分,共40分)
(總題數(shù):40,分?jǐn)?shù):40.00)
L程序流程圖中帶有箭頭的線段表示的是()。
(分?jǐn)?shù);1.00)
A.圖元關(guān)系
B.數(shù)據(jù)流
C.控制流J
D.調(diào)用關(guān)系
解析:【解析】在數(shù)據(jù)流圖中,用標(biāo)有名字的帶箭頭線段表示數(shù)據(jù)流。在程序流程圖中,用標(biāo)有名字的帶
箭頭線段表示控制流,因此本題答案為C).
2.結(jié)構(gòu)化程序設(shè)計(jì)的基本原則不包括().
(分?jǐn)?shù):1.00)
A.多態(tài)性V
B.自頂向下
C.模塊化
D.逐步求精
解析:結(jié)構(gòu)化程序設(shè)計(jì)的思想包括:自頂向下、逐步求精、模塊化、限制使用goto語(yǔ)句,多態(tài)性是面向
對(duì)象的程序設(shè)計(jì)的思想,因此本題答案為A)o
3.軟件設(shè)計(jì)中模塊劃分應(yīng)遵循的準(zhǔn)則是()。
(分?jǐn)?shù):1.00)
A.低內(nèi)聚低耦合
B.高內(nèi)聚低耦合J
C.低內(nèi)聚高耦合
D.高內(nèi)聚高耦合
解析:軟件設(shè)計(jì)中,模塊劃分應(yīng)遵循的準(zhǔn)則是高內(nèi)聚低耦合、模塊大小規(guī)模適當(dāng)、模塊的依賴關(guān)系適當(dāng)
等。模塊的劃分應(yīng)遵循一定的準(zhǔn)則,以保證模塊劃分合理,并進(jìn)?步保證以此為依據(jù)開(kāi)發(fā)出的軟件系統(tǒng)可
靠性高,易于理解和維護(hù)。模塊之間的耦合應(yīng)盡可能地低,模塊的內(nèi)聚應(yīng)盡可能地高,因此本題答案為
B).
4.算法的有窮性是指()。
(分?jǐn)?shù):1.00)
A.算法程序的運(yùn)行時(shí)間是有限的7
B.算法程序所處理的數(shù)據(jù)量是有限的
C.算法程序的長(zhǎng)度是有限的
D.算法只能被有限的用戶使用
解析:算法原則上能夠精確地運(yùn)行,而且人們用筆和紙做有限次運(yùn)算后即可完成。算法的有窮性是指算法
程序的運(yùn)行時(shí)間是有限的,因此本題答案為A)。
5.在軟件開(kāi)發(fā)中,需求分析階段產(chǎn)生的主要文檔是()。
(分?jǐn)?shù):1.00)
A.可行性分析報(bào)告
B.軟件需求規(guī)格說(shuō)明書(shū)J
C.概要設(shè)計(jì)說(shuō)明書(shū)
D.集成測(cè)試計(jì)劃
解析:A)錯(cuò)誤,可行性分析階段產(chǎn)生可行性分析報(bào)告。C)錯(cuò)誤,總體設(shè)計(jì)階段產(chǎn)生概要設(shè)計(jì)說(shuō)明書(shū)。D)
錯(cuò)誤,集成測(cè)試計(jì)劃是在概要設(shè)計(jì)階段編寫(xiě)的文檔。B)正確,需求規(guī)格說(shuō)明書(shū)是需求分析階段產(chǎn)生的主要
文檔,是后續(xù)工作如設(shè)計(jì)、編碼等需要的重要參考文檔。
6.對(duì)長(zhǎng)度為n的線性表排序,在最壞情況下,比較次數(shù)不是n(nT)/2的排序方法是()。
(分?jǐn)?shù):1.00)
A.快速排序
B.冒泡排序
C.直接插入排序
D.堆排序V
解析:快速排序、冒泡排序和直接插入排序在最壞情況下,比較次數(shù)都是n(n-l)/2,堆排序在最壞情況下
的比較次數(shù)最少,是O(logJ),因此本題答案為D)。
7.下列關(guān)于棧的敘述正確的是()。
(分?jǐn)?shù):1.00)
A.棧按“先進(jìn)先出”組織數(shù)據(jù)
B.棧按“先進(jìn)后出”組織數(shù)據(jù)V
C.只能在棧底插人數(shù)據(jù)
D.不能刪除數(shù)據(jù)
解析:棧是只允許在同一端進(jìn)行插入和刪除運(yùn)算的線性表,按“先進(jìn)后出”組織數(shù)據(jù),因此本題答案為
B).
8.在數(shù)據(jù)庫(kù)設(shè)計(jì)中,將E-R圖轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型的過(guò)程屬于()。
(分?jǐn)?shù):1.00)
A.需求分析階段
B.概念設(shè)計(jì)階段
C.邏輯設(shè)計(jì)階段V
D.物理設(shè)計(jì)階段
解析:將E-R圖轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型是把圖形分析出來(lái)的聯(lián)系反映到數(shù)據(jù)庫(kù)中,即設(shè)計(jì)出表,因此屬于邏
輯設(shè)計(jì)階段,答案為C)。
9.有三個(gè)關(guān)系R、S和T如下:
由關(guān)系R和S通過(guò)運(yùn)算得到關(guān)系T,所使用的運(yùn)算為()。
(分?jǐn)?shù):1.00)
A.并
B.自然連接
C.笛卡兒積
D.交J
解析:自然連接是一種特殊的等值連接,它要求兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組,并且在
結(jié)果中把重復(fù)的屬性列去掉,因此B)錯(cuò)誤。笛卡兒積是用R集合中的元素為第一元素,S集合中的元素為
第二元素構(gòu)成的有序?qū)Γ虼薈)錯(cuò)誤。根據(jù)關(guān)系T可以很明顯地看出是從關(guān)系R與關(guān)系S中取得相同的
關(guān)系組,所以使用的是交運(yùn)算,選擇D)。
10.下列敘述中錯(cuò)誤的是()。
(分?jǐn)?shù):1.00)
A.一個(gè)C語(yǔ)言程序只能實(shí)現(xiàn)一種算法J
B.C程序可以由多個(gè)程序文件組成
C.C程序可以由一個(gè)或多個(gè)函數(shù)組成
D.一個(gè)C函數(shù)可以單獨(dú)作為一個(gè)C程序文件存在
解析:一個(gè)C程序可以有一個(gè)或多個(gè)程序文件,也可以有一個(gè)或多個(gè)函數(shù),所以一個(gè)C語(yǔ)言程序可以實(shí)現(xiàn)
多種算法。
11.設(shè)有表示學(xué)生選課的三張表,學(xué)生S(學(xué)號(hào),姓名,性別,年齡,身份證號(hào)),課程C(課號(hào),課
名),選課SC(學(xué)號(hào),課號(hào),成績(jī)),則表SC的關(guān)鍵字(鍵或碼)為()。
(分?jǐn)?shù):1.00)
A.課號(hào),成績(jī)
B.學(xué)號(hào),成績(jī)
C.學(xué)號(hào),課號(hào)V
D.學(xué)號(hào),姓名,成績(jī)
解析:學(xué)號(hào)是學(xué)生表S的主鍵,課號(hào)是課程表C的主鍵,因此選課表SC的關(guān)鍵字就應(yīng)該是與前兩個(gè)表能
夠直接聯(lián)系且能唯一定義的學(xué)號(hào)和課號(hào),故本題答案為0。
12.以下選項(xiàng)中,能用作數(shù)據(jù)常量的是()。
(分?jǐn)?shù):1.00)
A.115LJ
B.0118
C.1.5el.5
D.0115
解析:選項(xiàng)中U5L表示115是長(zhǎng)整型數(shù)據(jù),合法。B)選項(xiàng)是八進(jìn)制常量的表示方法,但是在八進(jìn)制中不
能含有數(shù)字8,因此B)選項(xiàng)錯(cuò)誤.C)選項(xiàng)中e后面應(yīng)該是整數(shù),不能是小數(shù)(1.5),因此。選項(xiàng)錯(cuò)誤。D)
選項(xiàng)中八進(jìn)制常量應(yīng)該是以數(shù)字“0”開(kāi)始,而不是以字母飛”開(kāi)始。故本題答案為A)。
13.按照C語(yǔ)言規(guī)定的用戶標(biāo)識(shí)符命名規(guī)則,不能出現(xiàn)在標(biāo)識(shí)符中的是()。
(分?jǐn)?shù):1.00)
A.下畫(huà)線
B.大寫(xiě)字母
C.數(shù)字字符
D.連接符V
解析:C語(yǔ)言中標(biāo)識(shí)符由字母、下畫(huà)線或數(shù)字組成,且開(kāi)頭必須是字母或下畫(huà)線。因此D)選項(xiàng)中的連接符
不合法。
14.設(shè)變量已正確定義并賦值,以下正確的表達(dá)式是()。
(分?jǐn)?shù):1.00)
A.x=y+z+5,++yJ
B.int(15.8%5)
C.x=y*5=x+z
D.x=25%5.0
解析:B)與D)選項(xiàng)中取模運(yùn)算符%的左右兩個(gè)操作數(shù)均應(yīng)為整數(shù),因此B)、D)選項(xiàng)錯(cuò)誤。C)選項(xiàng)中不能
將x+z的值賦給表達(dá)式y(tǒng)*5,因此C)選項(xiàng)錯(cuò)誤。故本題答案為A)。
15.設(shè)有定義“intx=2;",以下表達(dá)式中,值不為6的是()。
(分?jǐn)?shù):1.00)
A.x++,2*x
B.2*x,x+=2J
C.x*=(l+x)
D.x*=x+l
解析:選項(xiàng)B)中,2**對(duì)乂的值沒(méi)有影響,x仍為2,"x+=2”執(zhí)行后,表達(dá)式值為4。故本題答案為B)。
16.有以下程序
#include
main()
{intx,y,z;
x=y=l;
z=x++,y++,++y;
printf("%d,%d,%d\n”,x,y,z);
)
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.2,3,1V
B.2,3,2
C.2,3,3
D.2,2,1
解析:對(duì)于表達(dá)式“Z=x++,y++,++y;",因?yàn)橘x值運(yùn)算符的優(yōu)先級(jí)高于逗號(hào)運(yùn)算符的優(yōu)先級(jí),所以可以
將上式改成“(z=x++),(y++),(++y)”。然后從左向右先計(jì)算表達(dá)式z=x++,因?yàn)閤++先使用后自增,所
以z的值為1,x的值為2。再計(jì)算逗號(hào)表達(dá)式第二個(gè)表達(dá)式y(tǒng)++,此時(shí)y的值為1,y++的值為2。最后計(jì)
算第三個(gè)表達(dá)式++y,y的值為3,故本題答案為A)。
17.有以下程序^include
main()
{charcl,c2;
cl=,A,+'8,4,;
c2='A'+'8'5';
printf(*%c,%d\n*,cl,c2);
}
已知字母A的ASCII碼為65,程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.E,D
B.D,69
C.E,68J
D.輸出無(wú)定值
解析:本題中字符變量cl是字符'A'的ASCH碼加上4,即69所對(duì)應(yīng)的字符'E'。字符變量c2是字符‘A'
的ASCII碼加上3,即68所對(duì)應(yīng)的字符'D、但是打印輸出時(shí),口以%<:的格式輸出,因此是E,c2以版1
的格式輸出,因此是68。故本題答案為C)。
18.有以下程序
Sinclude
main()
{intx=l,y=0;
if(!x)y++;
elseif(x==0)
if(x)y+=2;
elsey+=3;
printf(“%d\n",y);
)
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.3
B.2
C.1
D.OJ
解析:在ifelse語(yǔ)句中else總是與離它最近的if配對(duì)。本題目中x為1,因此“!x”為0,所以執(zhí)行
elseif語(yǔ)句中的內(nèi)容,判斷“x==0”是否成立,因?yàn)閤為1,所以條件不成立,因此elseif內(nèi)部的
“if...else”語(yǔ)句不再執(zhí)行,所以y的值還是初始值0。
19.若有定義“intx,y;”并已正確給變量賦值,則以下選項(xiàng)中與表達(dá)式“(x-y)?(x++):(y++)”中的
條件表達(dá)式(x-y)等價(jià)的是()。
(分?jǐn)?shù):1.00)
A.(x-yO)V
B.(x-y<0)
C.(x-y>0)
D.(x-y==O)
解析:條件表達(dá)式“x二表達(dá)式1?表達(dá)式2:表達(dá)式3”的含義是:先求解表達(dá)式1,若其值為非0(真),則
求解表達(dá)式2,將表達(dá)式2的值賦給x;若表達(dá)式1的值為0(假),則求解表達(dá)式3,將表達(dá)式3的值賦給
X。在本題中與表達(dá)式(x-y)等價(jià)的是“(x-y〈O||x-y>0)”,A)選項(xiàng)正確。
20.有以下程序
#include<stdio.h>
main()
{inty=9;
for(;y>0;y-)
if(y%3==0)printf("%d",-y);
)
程序運(yùn)行后的輸出結(jié)果是()o
(分?jǐn)?shù):LOO)
A.852J
B.963
C.741
D.875421
解析:第一次執(zhí)行for循環(huán),y的值為9,y%3的值為0,滿足條件打印,所以執(zhí)行“一y”語(yǔ)句,即先減1
后打印,因此打印8;第二次執(zhí)行for循環(huán),y的值為7,y%3的值為1,不執(zhí)行打印語(yǔ)句;第三次執(zhí)行for
循環(huán),y的值為6,巡3的值為0,滿足條件打印,所以執(zhí)行“一y”語(yǔ)句,即先減1后打印,因此打印5;第
四次執(zhí)行for循環(huán),y的值為4,不滿足if條件,不執(zhí)行打印語(yǔ)句;第五次執(zhí)行for循環(huán),y的值為3,滿
足if條件,打印輸出2;第六次執(zhí)行for循環(huán),y的值為1,不滿足條件,不執(zhí)行打印語(yǔ)句。故本題答案
為A)。
21.若有定義“floatx=l.5;inta=l,b=3,c=2;w,則正確的switch語(yǔ)句是()。
(分?jǐn)?shù):1.00)
A.
B.
C.
D.
解析:B)選項(xiàng)的"switch((int)x);”語(yǔ)句中不應(yīng)該有最后的分號(hào)。"switch(exprl)”中的exprl不能用
浮點(diǎn)類型或long類型,也不能是一個(gè)字符串,因此C)錯(cuò)誤。case后面只能是常量表達(dá)式,因此D)錯(cuò)
誤。
22.有以下程序
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.m=4
B.m=2
C.m=6J
D.m=5
解析:第一次外循環(huán)i的值為1,第一次內(nèi)循環(huán)j的值為3,不滿足條件,則執(zhí)行〃m*二i*j〃,即m的值為3;
第二次j的值為2,不滿足條件,則執(zhí)行m*二i*j,即m的值為6;第三次j的值為1,不滿足條件,則執(zhí)行
即m的值仍為6。第二次外循環(huán)i的值為2,j的值為3,滿足條件,執(zhí)行break語(yǔ)句,跳出循環(huán)。
故本題答案為Oo
23.有以下程序
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.6J
B.3
C.8
D.12
解析:本題中第一次調(diào)用為“fun(8,fun(5,6))”,因?yàn)椤癴un(5,6)”返回值為5,所以第二次調(diào)用為
“fun(8,5)=6”,因此選擇A)。
24.有以下程序
則以下函數(shù)調(diào)用語(yǔ)句錯(cuò)誤的是()。
(分?jǐn)?shù):1.00)
A.k=f(a,b);
B.k=add(a,b);
C.k=(*f)(a,b);
D.k=*f(a,b);J
解析:D)選項(xiàng)中“*f(a,b)”表示調(diào)用后返回一個(gè)指向整型數(shù)據(jù)的地址指針,即該函數(shù)的返回值為指針類
型,因此不能將其賦值給整型變量匕
25.有以下程序
該程序試圖通過(guò)指針P為變量n讀入數(shù)據(jù)并輸出,但程序有多處錯(cuò)誤,以下語(yǔ)句正確的是()。
(分?jǐn)?shù):1.00)
A.intn,*p=NULL;J
B.*p=&n;
C.scanf(w%dw,&p)
D.printf("%d\n",p);
解析:選項(xiàng)B)的正確寫(xiě)法應(yīng)為“P4n;",選項(xiàng)C)的正確寫(xiě)法應(yīng)為“scanf(〃%d〃,p);",選項(xiàng)D)的正確
寫(xiě)法應(yīng)為“print為〃%d\n",*p);"。故本題答案為A)。
26.下列定義數(shù)組的語(yǔ)句中,正確的是()。
(分?jǐn)?shù):1.00)
D.intx[];
解析:數(shù)組說(shuō)明的一般形式為:類型說(shuō)明符數(shù)組名[常量表達(dá)式]。A)中N是變量,不能用變量定義數(shù)組長(zhǎng)
度。C)選項(xiàng)中數(shù)組長(zhǎng)度是非法的一串?dāng)?shù)字,定義數(shù)組時(shí)必須為其指明長(zhǎng)度。D)選項(xiàng)中數(shù)組長(zhǎng)度為空,因此
非法。故本題答案為B)。
27.以下語(yǔ)句中存在語(yǔ)法錯(cuò)誤的是()。
(分?jǐn)?shù):1.00)
A.charss[6][20];ss[l]="right?”;V
B.charss[][20]={"right?”};
C.char*ss[6];ss[1]="right?”;
D.char*ss[]={"right?”};
解析:數(shù)組定義后,不能對(duì)數(shù)組整體賦值,SS是二維數(shù)組,因?yàn)閟s[l]是一維字符數(shù)組,即字符串,字符
串賦值可以使用“StrcP可SS使]「right");”的形式,而選項(xiàng)A)中對(duì)二維數(shù)組中的第“1”維(相當(dāng)于一
個(gè)一維數(shù)組)賦值,是不可以的。選項(xiàng)B)和D)是在定義時(shí)對(duì)數(shù)組同時(shí)進(jìn)行初始化,這是可以的。選項(xiàng)C)
中,將字符串在內(nèi)存中的首地址賦給指針數(shù)組的一個(gè)元素,這是可以的。故本題答案為A)。
28.有以下程序
程序運(yùn)行后的輸出結(jié)果是(),
(分?jǐn)?shù):1.00)
A.3040J
B.2050
C.3344
D.0304
解析:第一次循環(huán)i為0,i%2為0,執(zhí)行“switch(a[0]%2)”中的case。語(yǔ)句后內(nèi)容即a[0]++,a[0]的值
變成3;第二次循環(huán)i的值為1,i%2為1,執(zhí)行"easel:a[i]=0;,>后a[l]的值變成0;第三次循環(huán)i的值為
2,設(shè)2為0,執(zhí)行“switch(a[2]%2)”中的“easel:a[2]一;"a[2]的值變成4;第四次循環(huán)i的值為3,i%2
為1,執(zhí)行“casel:a[i]=0;",因此a[3]的值變成0。故本題答案為A)。
29.有以下程序
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.3
B.4J
C.1
D.9
解析:每次內(nèi)循環(huán)只循環(huán)一次就結(jié)束,第一次外循環(huán)時(shí)“t=t+b[0][b[0][0]]=l+b[0][0]=l+0=l;",第二
次外循環(huán)時(shí)“t=t+b[l]b[l][l]]=l+b[l][11=1+1=2;",第三次外循環(huán)時(shí)
“l(fā)=t+b[2][b[2][2]]=2+b[2][2]=2+2=4”。故本題答案為B)。
30.以下不能將s所指字符串正確復(fù)制到t所指存儲(chǔ)空間的是()。
(分?jǐn)?shù):1.00)
A.while(*t=*s){t++;s++;}
B.for(i=0;t[i]=s[i];i++);
C.do{*t++=*s++;}while(*s);-J
D.for(i=0,j=0;t[i++]=s[j++];);
解析:"do{*t++=*s++;}while(*s);”語(yǔ)句中,因?yàn)楫?dāng)"*s='\0'"時(shí),"while(*s)”跳出循環(huán),這樣字
符串結(jié)束標(biāo)志‘\。'沒(méi)有復(fù)制給*t,造成了*t不完整。注意,*t++=*s++是先執(zhí)行t=*s,然后才進(jìn)行
t=t+l,s=s+l。而選項(xiàng)B)、A)、D)都能將'\0',復(fù)制過(guò)去。
31.有以下程序
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.Ibc,a23J
B.abc,123
C.123,abc
D.321,cba
解析:字符串是一個(gè)特殊的數(shù)組,按照數(shù)組的規(guī)則,si應(yīng)該指向的是數(shù)組的首地址,即“abc”的第一個(gè)
字符的地址。S2指向的是“123”的第一個(gè)字符的地址。調(diào)用swap函數(shù)之后交換的是兩個(gè)字符串的第一
個(gè)字符'a'和'1'的內(nèi)容,因此打印輸出為A)。
32.有以下函數(shù)
函數(shù)的功能是()。
(分?jǐn)?shù):1.00)
A.統(tǒng)計(jì)x和y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)4
B.查找x和y所指字符串中是否有‘\0'
C.將y所指字符串賦給x所指存儲(chǔ)空間
D.統(tǒng)計(jì)x和y所指字符串中相同的字符個(gè)數(shù)
解析:本題中由循環(huán)條件可知,當(dāng)遇到'\0'或"x與y所指的字符的值不相等”中的一個(gè)條件時(shí)就結(jié)束
循環(huán),因此本題函數(shù)的功能是統(tǒng)計(jì)x和y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)。
33.有以下程序
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.30
B.10
C.0
D.64,
解析:本題口中靜態(tài)局部變量X,在靜態(tài)存儲(chǔ)區(qū)內(nèi)分配存儲(chǔ)單元,在程序整個(gè)運(yùn)行期間都不釋放。因此第
一次循環(huán)s的值為2;第二次循環(huán)中,返回的x的值為4,因此S的值為8;第三次循環(huán),返回的x的值為8,
因此S的值為64。
34.在一個(gè)C源程序文件中所定義的全局變量,其作用域?yàn)椋ǎ?/p>
(分?jǐn)?shù):1.00)
A.所在文件的全部范圍
B.所在程序的全部范圍
C.所在函數(shù)的全部范圍
D.由具體定義位置和extern說(shuō)明來(lái)決定范圍V
解析:全局變量的作用域是從聲明處到文件的結(jié)束,因此選擇D)。
35.有以下程序
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù);1.00)
A.21V
B.11
C.20
D.10
解析:聲明data是結(jié)構(gòu)S的數(shù)組。初始化時(shí)
Mdata[0].a=10;data[0].b=100;data[l].a=20;data[l].b=200w.主函數(shù)中p=data[l],即
**p.a=data[l].a;p.b=data[l].b;">執(zhí)行語(yǔ)句“printf(*%d\n”>++(p.A));"打印輸出時(shí)P.a先增1
再打印。即p.a=data[l],a=20,先增1等于21,因此程序運(yùn)行結(jié)果是21。
36.以下敘述中錯(cuò)誤的是()。
(分?jǐn)?shù):1.00)
A.用typedef定義新的類型名后,原有類型名仍有效
B.可以用typedef將己存在的類型用一個(gè)新的名字來(lái)代表
C.可以通過(guò)typedef增加新的類型J
D.用typedef可以為各種類型起別名,但不能為變量起別名
解析:關(guān)鍵字typedef的作用只是將C語(yǔ)言中已有的數(shù)據(jù)類型作置換,并不是增加新的類型,因此C)錯(cuò)
誤。
37.有以下程序
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.31.5
B.程序有錯(cuò)無(wú)輸出結(jié)果J
C.7.5
D.14.0
解析:宏定義不是C語(yǔ)句,末尾不需要有分號(hào)。因此語(yǔ)句“printf魏4.lf\n",S(a+b));”展開(kāi)后為
“printf("4.3.5;*a+b*a+b;);",所以程序會(huì)出現(xiàn)語(yǔ)法錯(cuò)誤。
38.有以下程序
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.4J
B.3
C.5
D.6
解析:“&”按位與,如果兩個(gè)相應(yīng)的二進(jìn)制位都為1,則該位的結(jié)果值為1,否則為0。“I”按位或,
即兩個(gè)相應(yīng)的二進(jìn)制位中只要有一個(gè)為1,該位的結(jié)果值為1。2的二進(jìn)制為00000010,4的二進(jìn)制為
00000100,因此做或運(yùn)算結(jié)果為00000110,該數(shù)與5即00000101做與運(yùn)算,結(jié)果為00000100,即4,選項(xiàng)
A)正確。
39.有以下程序
程序運(yùn)行后的輸出結(jié)果是()。
(分?jǐn)?shù):1.00)
A.1,1,3
B.2,2,3
C.1,2,3
D.3,3,3J
解析:malloc函數(shù)動(dòng)態(tài)分配一個(gè)整型的內(nèi)存空間,然后把函數(shù)返回的地址用(int*)強(qiáng)制類型轉(zhuǎn)換為整型
指針,再把它賦給a,b,c,即讓指針變量a,b,c都指向剛申請(qǐng)的內(nèi)存空間。因此只有最后一個(gè)賦值語(yǔ)
句*c=3的值保留在了該空間內(nèi),因?yàn)閍,b,c三個(gè)指針變量均指向該空間,所以打印該空間內(nèi)的數(shù)值均
為3,選項(xiàng)D)正確。
40.以下敘述中正確的是()。
(分?jǐn)?shù):1.00)
A.當(dāng)對(duì)文件的讀(寫(xiě))操作完成之后,必須將它關(guān)閉,否則可能導(dǎo)致數(shù)據(jù)丟失,
B.打開(kāi)一個(gè)已存在的文件并進(jìn)行了寫(xiě)操作后,原有文件中的全部數(shù)據(jù)必定被覆蓋
C.在一個(gè)程序中當(dāng)對(duì)文件進(jìn)行了寫(xiě)操作后,必須先關(guān)閉該文件然后再打開(kāi),才能讀到第1個(gè)數(shù)據(jù)
D.C語(yǔ)言中的文件是流式文件,因此只能順序存取數(shù)據(jù)
解析:B)選項(xiàng)中打開(kāi)一個(gè)已存在的文件并進(jìn)行了寫(xiě)操作后,原有文件中的全部數(shù)據(jù)不一定被覆蓋,也可以
對(duì)源文件進(jìn)行追加操作等。C)選項(xiàng)中在一個(gè)程序中當(dāng)對(duì)文件進(jìn)行了寫(xiě)操作后,不用先關(guān)閉該文件然后再打
開(kāi),才能讀到
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 運(yùn)營(yíng)咨詢顧問(wèn)合同協(xié)議
- 月結(jié)貨款協(xié)議書(shū)
- 汽車分伙協(xié)議書(shū)
- 《晚期肺癌持續(xù)治療策略》課件
- 遺產(chǎn)協(xié)議書(shū)范本
- 軟件制圖交易合同協(xié)議
- 手車位買賣協(xié)議書(shū)
- 舊船買賣協(xié)議書(shū)
- 追償糾紛和解協(xié)議書(shū)模板
- 教育咨詢員服務(wù)合同書(shū)
- 2025年北京市西城區(qū)高三二模語(yǔ)文試卷(含答案)
- Continual Improvement持續(xù)改進(jìn)程序(中英文)
- 10x2000對(duì)稱式三輥卷板機(jī)設(shè)計(jì)機(jī)械畢業(yè)設(shè)計(jì)論文
- RCA應(yīng)用于給藥錯(cuò)誤事情的分析結(jié)果匯報(bào)
- 申論答題紙-方格紙模板A4-可打印
- 土石方測(cè)量方案完整版
- 律師事務(wù)所勞動(dòng)合同范本2(律師助理和實(shí)習(xí)律師參照適用
- 可以復(fù)制、輸入文字的田字格WORD模板++(共11頁(yè))
- 施工單位動(dòng)火申請(qǐng)書(shū)內(nèi)容
- 焊條電弧焊基礎(chǔ)知識(shí)二
- 不銹鋼板墻面施工工藝
評(píng)論
0/150
提交評(píng)論