版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
國(guó)家二級(jí)(C語言)筆試模擬試卷143
一、公共基礎(chǔ)選擇題(本題共70題,每題7.0分,共
10分。)
1、下列敘述中錯(cuò)誤的是()。
A、一種數(shù)據(jù)的邏輯結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu)
B、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)與數(shù)據(jù)的處理效率無關(guān)
C、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)與數(shù)據(jù)的處理效率密切相關(guān)
D、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)在計(jì)算機(jī)中所占的空間不一定是連續(xù)的
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)分為順序結(jié)構(gòu)和鏈?zhǔn)浇Y(jié)構(gòu),一個(gè)數(shù)據(jù)的邏輯結(jié)構(gòu)可以
有多種存儲(chǔ)結(jié)構(gòu)。順序結(jié)構(gòu)中數(shù)據(jù)元素所占的存儲(chǔ)空間是連續(xù)的,而鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
中,數(shù)據(jù)元素所占的存儲(chǔ)空間不一定是連續(xù)的。數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)與數(shù)據(jù)的處理效率
密切相關(guān)。
2、下列敘述中錯(cuò)誤的是()。
A、線性表是由n個(gè)元素組成的一個(gè)有限序列
B、線性表是一種線性結(jié)構(gòu)
C、線性表的所有結(jié)點(diǎn)有且僅有一個(gè)前件和后件
D、線性表可以是空表
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:線性表是一種線性結(jié)構(gòu),由n(*0)個(gè)元素組成,所以線性表可以是空
表。但是在線性表中,第一個(gè)結(jié)點(diǎn)沒有前件,最后一個(gè)結(jié)點(diǎn)沒有后件,其他結(jié)點(diǎn)有
且只有一個(gè)前件和后件,所以選項(xiàng)C)是錯(cuò)誤的。
3、下列關(guān)于棧的描述中錯(cuò)誤的是()。
A、棧是先進(jìn)先出的線性表
B、棧只能順序存儲(chǔ)
C、棧具有記憶作用
D、對(duì)棧的插入與刪除操作中,不需要改變棧底指針
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧是限定只能在表的一端進(jìn)行插入和刪除操作的線性表,入棧和出棧
都是在棧頂進(jìn)行,它們的操作特點(diǎn)是先進(jìn)后出,因此具有記憶作用。??梢圆捎庙?/p>
序存儲(chǔ),也可以采用鏈?zhǔn)酱鎯?chǔ)。
4、對(duì)長(zhǎng)度為n的線性表進(jìn)行順序查找,在最壞情況下需要比較的次數(shù)為()。
A、125
B、n/2
C^n
D、n+1
標(biāo)準(zhǔn)答案:c
知識(shí)點(diǎn)。析:對(duì)線性表進(jìn)行順序查找時(shí),從表中的第一個(gè)元素開始,將給定的值與
表中逐個(gè)元素的關(guān)鍵字進(jìn)行比較,直到兩者相符,查找到所要找的元素為止。在最
壞情況下,要查找的元素是表的最后一個(gè)元素或查找失敗,這兩種情況都需要將這
個(gè)元素與表中的所有元素進(jìn)行比較,因此比較次數(shù)為n。
5、下列敘述中正確的是()。
A、在模塊化程序設(shè)計(jì)中,一個(gè)模塊應(yīng)該盡量多的包括與其他模塊聯(lián)系的信息
B、在自頂向下、逐步細(xì)化的設(shè)計(jì)過程中,首先應(yīng)設(shè)計(jì)解決問題的第一個(gè)細(xì)節(jié)
C、在模塊化程序設(shè)計(jì)中,一個(gè)模塊內(nèi)部的控制結(jié)構(gòu)也要符合結(jié)構(gòu)化原則
D、在程序設(shè)計(jì)過程中,不能同時(shí)采用結(jié)構(gòu)化程序設(shè)計(jì)方法與模塊化程序設(shè)計(jì)方法
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:在模塊化程序設(shè)計(jì)中,模塊之間的聯(lián)系可.以通過程序的控制結(jié)構(gòu)來實(shí)
現(xiàn),在自頂向下、逐步細(xì)化的設(shè)計(jì)過程中,首先要考慮全局目標(biāo),而不是細(xì)節(jié)。在
程序設(shè)計(jì)中模塊化和結(jié)泡化可以同時(shí)使用,一個(gè)模塊的內(nèi)部結(jié)構(gòu)也要符合結(jié)構(gòu)化設(shè)
il原則。
6、下列特征中不是面向?qū)ο蠓椒ǖ闹饕卣鞯氖?)。
A、多態(tài)性
B、繼承
C、封裝性
D、模塊化
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:面向?qū)ο鬀]計(jì)方法與面向過程設(shè)計(jì)方法有本質(zhì)的不同,其基本原理
是:使用現(xiàn)實(shí)世界的概念抽象地思考問題從而自然地解決問題C其特點(diǎn)包括:分類
性、多態(tài)性、封裝性、模塊獨(dú)立性、繼承和多態(tài)性等。模塊化是結(jié)構(gòu)化程序設(shè)計(jì)的
特點(diǎn)。
7、有下列二叉樹,對(duì)此二叉樹中序遍歷的結(jié)果為()。
A、BDYEACFXZ
B、DYBEAFCZX
C、ABCDEFXYZ
D、ABDYECFXZ
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:對(duì)二叉樹的中序遍歷是指:首先遍歷左子樹,然后訪問根結(jié)點(diǎn),最后
遍歷右子樹。在遍歷左、右子樹時(shí),注意依舊按照“左子樹一根結(jié)點(diǎn)一右子樹”的順
序。本題的遍歷順序是這樣的:①首先訪問左子樹:BDEY:②在左子樹BDEY
中,也按中序遍歷,先訪問左子樹DY;在左子樹DY中,也按中序遍歷,先訪問
左子樹,左子樹沒有,則訪問根結(jié)點(diǎn)D,然后訪問右子樹Y;③接著訪問根B,
再訪問右子樹E;④訪訶左子樹BDEY后,接著訪問根結(jié)點(diǎn)八,接著訪問右子樹
CFXZ;⑤右子樹CFXZ的訪問順序同理可得:FCZXo
8、下列不屬于軟件工程的3個(gè)要素的是()。
A、32具
B、過程
C、方法
D、環(huán)境
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析?:軟件工程包括3個(gè)要素,即方法、工具和過程。方法是完成軟件工程
項(xiàng)目的技術(shù)手段:工具支持軟件的開發(fā)、管理和文檔生成:過程支持軟件開發(fā)的各
個(gè)環(huán)節(jié)的控制、管理。
9、設(shè)計(jì)軟件結(jié)構(gòu)是在軟件生命周期的(》
A、軟件定義期
B、軟件開發(fā)期
C、軟件維護(hù)期
D、以上三個(gè)都不是
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:設(shè)計(jì)軟件結(jié)構(gòu)是在軟件概要設(shè)計(jì)階段進(jìn)行的,而概要設(shè)計(jì)屬于軟件開
發(fā)期。
10、下列工具中為需求分析常用工具的是()。
A、PAD
B、PFD
C、N-S
D、DFD
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:需求分析常用的工具有數(shù)據(jù)流圖(DFD)、數(shù)據(jù)字典(DD)、判定樹和判
定表。PAD(問題分析圖)、PFD(程序流程圖)、N-S(盒式圖)都是詳細(xì)設(shè)計(jì)的常用工
具,不是需求分析的工具。
二、選擇題(2分)(本題共30題,每題7.0分,共30
分。)
11、下列敘述中正確的是()。
A、C程序由函數(shù)組成
B、C程序由主函數(shù)構(gòu)成
C、C程序由函數(shù)和過程構(gòu)成
D、在C程序中無論是整數(shù)還是實(shí)數(shù),都可以正確無誤的表示出來
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:本題涉及C語言最基本的兩個(gè)知識(shí)點(diǎn):①C程序是由函數(shù)構(gòu)成的,
有且僅有一個(gè)主函數(shù),也可以有其他的函數(shù);②整數(shù)在允許的范圍內(nèi)可以準(zhǔn)確無
誤的表示出來,但計(jì)算機(jī)的存儲(chǔ)能力有限,不能表示無限精度的實(shí)數(shù)。
12、設(shè)有定義下列:inta=1,b=2,c=3,d=4,m=2,n=2;則表達(dá)式(m=a>B)&&(n=c>D)
運(yùn)算后,n的值是()。
A、4
B、3
C、2
D、0
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:在邏輯與&&運(yùn)算中,如果第一個(gè)操作數(shù)為假,則結(jié)果是假,后面的
操作數(shù)不參與運(yùn)算,本題中因?yàn)榈谝粋€(gè)操作數(shù)(m=a>B為假,所以第二個(gè)操作數(shù)
(n=c>d)不參加運(yùn)算,囚此n的值不變。
13、執(zhí)行卜列程序段后,變量a,b,c的值分別是()。inix=5,y=4;inia,b,c;a=(??
x==y++)?x:++y;b=++X;C=y;
A、a=5,b=5,c=5
B、a=4,b=5,c=5
C、a=5,b=6,c=5
D、a=l,b=5,c=6
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:本題考查自加(++)、自減(-)運(yùn)算符的使用。"++i「r',在使用i之
前'先使i的值加1或者減1,再使用此時(shí)的表達(dá)式的值參與運(yùn)算:”,先使
用此時(shí)的i的值參與運(yùn)算,在使用i之后,再使i的值加1或者減1。對(duì)于第1個(gè)
表達(dá)式-x=4,y++=4o兩者相等,-x=y++為真,所以a=x=4,執(zhí)行完此語句后y
的值是5。第2個(gè)表達(dá)式6=++*,x的值先加1,然后賦給b,即b=x+l=5第一個(gè)
表達(dá)式c=y=5o
14、下列程序的輸出結(jié)果是()。main(){inta=l,b=2;printf("%d,%d\n",-a,++B);)
A、1,2
B、1,3
C、0,2
D、0,3
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:本題主要考查自加(++)、自減(-)運(yùn)算符的使用?!?+i,-i”在使用i之
前,先使i的值加1或者減1,然后再使用i此時(shí)的值參與運(yùn)算:“i++,i-”是在使用
i參與表達(dá)式運(yùn)算之后,再使i的值加1或者減1。本題中--a和料b是先執(zhí)行a減1
和b加1操作,再輸出表達(dá)式的值。
15、下列變量聲明合法的是()。
A、short.a=1.4e-1;
B、doubleb=l+3e2.8;
C、longdo=0xfdaL;
D、float2_aaa=le-3;
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:解答本題需了解3個(gè)知識(shí)點(diǎn):①標(biāo)識(shí)符是由字母、數(shù)字或下畫線組
成,并且它的第一個(gè)字符必須是字母或者下畫線;②do是C語言中的一個(gè)關(guān)鍵
字,不能再用做變量名和函數(shù)名:③C語言規(guī)定指數(shù)形式的實(shí)型常量e或E后面
的指數(shù)必須是整數(shù)。
16、在函數(shù)scanf的格式控制中,格式說明的類型與輸入項(xiàng)的類型應(yīng)該對(duì)應(yīng)匹配。
如果類型不匹配,系統(tǒng)將()。
A、不予接收
B、并不給出出錯(cuò)信息,但不能得到正確的數(shù)據(jù)
C、能接收到正確輸入
D、給出出錯(cuò)信息,不予接收輸入
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:在scanf函數(shù)的格式控制中,格式說明的類型與輸入項(xiàng)的類型必須一
一對(duì)應(yīng)匹配,如不匹配將導(dǎo)致數(shù)據(jù)輸入出現(xiàn)錯(cuò)誤,但是系統(tǒng)并不報(bào)錯(cuò)。
17、若有下列定義(設(shè)ini類型變量占2個(gè)字節(jié)):fbalx=123.4567;則下列語句:
printf("x=%5.2f;x);輸出的結(jié)果是()。
A、x=123.46
B、123.4567
C、x=123.4567
D、123.46
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:本題考查printf函數(shù)的格式。“%5.2「格式符中的”「表示以帶小數(shù)點(diǎn)
的形式輸出單精度或者雙精度數(shù);“5”表示指定數(shù)據(jù)輸出寬度為5;“.2”表示指定輸
出數(shù)據(jù)小數(shù)位占2位數(shù),并對(duì)截去的第一位小數(shù)做四舍五入處理。
18、下列程序的輸出結(jié)果是()。#include<stdio.h>main(){inti;for(i=l;i<
=10;i++){if((i*i>=20)&&(i*i<=100))break;)printf("%d\n",i*i);}
A、49
B、36
C、25
D、64
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:本題考查汀語句。當(dāng)執(zhí)行到第一個(gè)滿足(i*i>=20)&&(i*iV=100)這個(gè)
條件的i出現(xiàn)時(shí),通過break語句跳出循環(huán),執(zhí)行下列的printf語句。
19、若執(zhí)行下列的程序時(shí),從鍵盤上輸入1和2,則輸出結(jié)果是()。#include<
stdio.h>main(){inta,b.s;scanf("%d%d",&a,&B);S=a;if(a<B)s=b;s=s*s;
printtf("%d\n,',s);}
A、1
B、4
C、2
D、9
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:本題考查if語句。scanf函數(shù)通過鍵盤讀入a、b的值,a=l,b=2o第
一個(gè)if語句,先判斷條件,發(fā)現(xiàn)aVb條件成立,則s=b=2,s=s*s=4。
20N有下列程序:main(){intt,a=l,b=5,C=-2;while(a>b>C){t=a;a=b;b=t;c++;)
printf("%d,%d,%d",a,b,C);)程序的輸出結(jié)果是()。
A、1,5,0
B、1,5,-2
C、5,1,-1
D、5,1,-2
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:本題考查while循環(huán)。先判斷while循環(huán)的控制表達(dá)式是否成立,發(fā)
現(xiàn)a>b>c不成立,所以不執(zhí)行循環(huán)。直接輸出a、b、c的值。
21運(yùn)行下列程序,若從鍵盤輸入字母“a”,則輸出結(jié)果是()。Charc;c=getchar();
if(c>=,a,&&c<=,g,)c=c+4;elseif(c>=,g,&&c<=,z,)c=c-21;elseprintf("input
error!\n");putchar(C);
A、f
B、t
C>e
D、d
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:首先,getchar函數(shù)通過鍵盤讀入字符3,即c=,a,(其實(shí)c得到的是字
符a的ASCII碼值),然后判斷if語句的控制條件,發(fā)現(xiàn)匕,>=3&&匕,V=,g,成
立,則執(zhí)行下列的語句,c=c+4,c得到的是字符e的ASCII碼值,退出if語句,
通過putchar函數(shù)輸出字符e。
22、在C語言中,函數(shù)調(diào)用時(shí)()。
A、實(shí)參和形參各占獨(dú)立的存儲(chǔ)單元
B、實(shí)參和形參共用存儲(chǔ)單元
C、由系統(tǒng)自動(dòng)確定實(shí)參和形參是否共用存儲(chǔ)單元
D、由用戶指定實(shí)參和形參是否共用存儲(chǔ)單元
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。函數(shù)的形參是函數(shù)定義時(shí)由用戶定
義的形式上的變量,實(shí)參是函數(shù)調(diào)用時(shí),主調(diào)函數(shù)為被調(diào)函數(shù)提供的原始數(shù)據(jù)。在
函數(shù)調(diào)用時(shí),實(shí)參和其所對(duì)應(yīng)的形參分別占用不同的存儲(chǔ)單元,彼此之間不影響。
23、下列程序的輸出結(jié)果是()。#include<stdio.h>intb=2;intfunc(int*A)
{b+=*a;retumb;}main(){inta=l,t=2;t+=func(&A);printf(M%d\n",t);}
A、4
B、5
C、6
D、8
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。在執(zhí)行函數(shù)func時(shí),由于全局定
義了一個(gè)變量b,所以在函數(shù)體中執(zhí)行時(shí)b=2+l=3,最終t=2+3=5。
24、若有定義floata=25,b,*p=&b;,則下列對(duì)賦值語句*p=a;和p=&a;的正確解釋為
()。
A、兩個(gè)語句都是將變量a的值賦予變量p
R、*p=a是使p指向變量a,而p=&n是將變量a的值賦予變量指針p
C、*p=a是將變量a的值賦予變量b,而p=&a是使p指向變量a
D、兩個(gè)語句都是使p指向變量a
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:“P”是指針變量,指向一個(gè)地址:“*p”為p指針?biāo)赶虻刂返膬?nèi)容。
25、若有定義血b[8],%p=b;則p+6表示()。
A、數(shù)組元素b[6]的值
B、數(shù)組元素b[6]的地址
C、數(shù)組元素b[7]的地址
D、數(shù)組元素b[0]的值加上6
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:指針中存放的是變量的地址,指針也可以進(jìn)行增減運(yùn)算,這時(shí)指針移
動(dòng)的最小單位是一個(gè)存儲(chǔ)單元,而不是一個(gè)字節(jié)。所以題中將p+6指的是將指針
向后移動(dòng)了6個(gè)存儲(chǔ)單元,指向b[6],存放的是b[6]的地址。
26、已有定義:chara[尸xyz”,b[]={,x;y;z,};,下列敘述中正確的是()。
A、數(shù)組a和b的長(zhǎng)度相同
B、a數(shù)組長(zhǎng)度小于b數(shù)組長(zhǎng)度
C、a數(shù)組K度大丁b數(shù)組K度
D、上述三種說法都不對(duì)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:字符數(shù)組川中用字符串常量“xyz”進(jìn)行初始化,字符數(shù)組a[]的長(zhǎng)度
為字符的個(gè)數(shù),所以其值為3,并不包括字符串結(jié)束標(biāo)記)(T;字符串?dāng)?shù)組b□用3
個(gè)字符,X,、丁工富來初始化,所以其字符串的長(zhǎng)度等于3。
27、卜列程序的輸出結(jié)果是()。voidf(int*x,int*y)|intt;t=*x,*x=*y;*y=t;}main()
{inta[8]={l,2,3,4,5,6,7,8},i,*p,*q;p=a;q=&a[7];while(p<q){f(p,q);p++;q-;}for(i=0;i
<8;i+)printf(',%d,';a[i]);}
A、823,4,5,6,7,1
B、5,6,7,8,1,234
C、1,234,5,6,7,8
D、876,5,4,3,2,1
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:函數(shù)f()的功能是對(duì)兩個(gè)數(shù)據(jù)互換。在主函數(shù)中指針變量p和q分別
指向數(shù)組a|8]的首和尾,在while循環(huán)中實(shí)現(xiàn)從首尾開始數(shù)組元素的互換操作。
28、對(duì)兩個(gè)數(shù)組a和b進(jìn)行下列初始化:charm[]=,,1234567H;char
n[]={T,2,3,4,5,6,7};則下列敘述正確的是()。
A、數(shù)組m與數(shù)組n完全相同
B、數(shù)組m與數(shù)組n長(zhǎng)度相同
C、數(shù)組m比數(shù)組n長(zhǎng)1
D、數(shù)組m與數(shù)組n中都存放字符串
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:本題考查字符數(shù)組和字符串賦值給數(shù)組的一些區(qū)別。.語句“char
m[尸”234567”;"定義了一個(gè)字符型數(shù)組并進(jìn)行了初始化,C語言規(guī)定,在字符串的
末尾自動(dòng)加上串結(jié)束標(biāo)汜、0"因此數(shù)組m的長(zhǎng)度是8;而數(shù)組n是按照字符方式
對(duì)數(shù)組進(jìn)行初始化,系統(tǒng)不會(huì)自動(dòng)加上串結(jié)束標(biāo)記'\0',因此數(shù)組n的長(zhǎng)度是7。
29、卜列程序的輸出結(jié)果是()。#include<stdio.h>main()(char
inti,j;i=sizeof(A);j=strlen(A);printf(,,%d,%d,',i,j);}
A、7,7
B、7,6
C、6,6
D、6,7
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:sizeof()函數(shù)的功能是返回字符串所占的字節(jié)數(shù),sWen()函數(shù)的功能是
返回字符串的長(zhǎng)度,其中、(T是一個(gè)轉(zhuǎn)義字符,它占存儲(chǔ)空間,但不計(jì)入串的長(zhǎng)
度。
30、設(shè)變量己正確定義廁下列能正確計(jì)算f=n!的程序段是()。
A^f=0;for(i=l;i<=n;i++)f*=i;
B、f=l;for(i=l;i<n;i++)f*=i;
C、f=l;for(i=n;i>l;i++)f*=i;
D、f=l;for(i=n;i>=2;i-)f*=i;
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:要正確計(jì)算函數(shù)1=1!,由n!的數(shù)學(xué)定義可知n!=n*(n-l)*(n-
2)*……*1。在選項(xiàng)A中,由于f的初值為0,在for循環(huán)語句中,f依次乘以
1,2,3,最后計(jì)算£=出=0,所以選項(xiàng)A不正確。在選項(xiàng)B中,f的初值為1,
在for循環(huán)語句中,f依次乘以1,2,3,……,(n-l)o最后計(jì)算得到f=(n-l)!,所以選項(xiàng)
B不正確。在選項(xiàng)C)中,「的初值為1,在for循環(huán)語句中,f依次乘以
n,n+l,n+2,……,所以選項(xiàng)C)不正確。在選項(xiàng)D)中,f的初值為1,在for循環(huán)語句
中,f依次乘以n,n-l,n-2,......,2。最后計(jì)算£二出,所以選項(xiàng)D)正確。
31、設(shè)有定義:intnl=0,n2,*p=&n2,*q=&nl;,下列賦值語句中與n2=nl;語句等價(jià)
的是()。
A、*p=*q;
B、p=q;
C^*p=&nl;
D、p=*q;
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:在定義指針變量p和q時(shí),分別把變量n2和nl的地址賦給了指針變
量p和q,所以*p和*q中內(nèi)容就分別是變量n2和nl的值,所以語句叩=*q與語句
n2=nl等價(jià)。因此選項(xiàng)A正確。
32、設(shè)己包含頭文件Vstring.h>,下列程序段的運(yùn)行結(jié)果是()。char
si口二{"ACDEF”};chars2[]="ABCH;strcpy(sl,s2);printf("%d",strlen(sl));
A、3
B、4
C、6
D、5
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:頭文件Vstring.h>是字符串處理函數(shù)對(duì)應(yīng)的頭文件,要想調(diào)用C語
言的庫(kù)函數(shù)時(shí),都要在程序中嵌入該函數(shù)對(duì)應(yīng)的頭文件,否則無法使用庫(kù)函數(shù)。
strcpy(sl,s2)把s2中的字符串復(fù)制到si中,所以結(jié)果就為s2的長(zhǎng)度。
33、設(shè)fp為指向某二進(jìn)制文件的指針,且已讀到此文件末尾,則函數(shù)feof(fp)的返
回值為()。
A、EOF
B、非0值
C、0
D、NULL
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:ANSIC提供的feof函數(shù)的功能是判斷fp所指的文件的位置是否已達(dá)
到文件尾,如果達(dá)到文件尾,則feof函數(shù)的值為1,否則為0,表示文件尚未結(jié)
束。
34、下列程序執(zhí)行的輸出結(jié)果是()。#inClude<stdio.h>main(){chara|2||4];
strcpy(a,,'are,,);strcpy(a[1l/you*');a[0][3]='&';printff'%s\n",A);}
A^are&you
B、you
C、are
D、&
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:strcpy(a,"are")中數(shù)組名a代表數(shù)組首地址的地址常量,該操作把a(bǔ)re
復(fù)制到a中,a[0][3]=,&\且strcpy(a[l]Jyou")把you復(fù)制到a[l]中,故輸出a為
“arc&you”。
35、一個(gè)源文件中的外部變量的作用域?yàn)?)。
A、本文件的全部范圍
B、本程序的全部范圍
C、本函數(shù)的全部范圍
D、從定義該變量的位置開始到本文件結(jié)束
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:一個(gè)源文件中的外部變量的作用域是從定義該變量的位置開始到本文
件結(jié)束。
36、下列程序的運(yùn)行結(jié)果是()。#include<stdio.h>#defineADD(x)x+xmain(){int
m=l,n=2,k=3;ints=ADD(m+n)*k;printf("s=%dH,s);}
A、sum=18
B、sum=10
C、sum=9
D、sum=25
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:本題考查帶參數(shù)的宏的定義及相關(guān)運(yùn)算:
S=m+n+m+n*k=1+2+1+2*3=10。
37、當(dāng)說明一個(gè)結(jié)構(gòu)體變量時(shí)系統(tǒng)分配給它的內(nèi)存是()。
A、各成員所需要內(nèi)存量的總和
B、結(jié)構(gòu)中第一個(gè)成員所需的內(nèi)存量
C、成員中占內(nèi)存最大者所需的容量
D、結(jié)構(gòu)中最后一個(gè)成員所需要的內(nèi)存量
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:本題主要考查結(jié)構(gòu)體的內(nèi)存使用:對(duì)結(jié)構(gòu)體而言,結(jié)構(gòu)中不同的成員
分別使用不同的內(nèi)存空間,一個(gè)結(jié)構(gòu)所占內(nèi)存空間的大小是結(jié)構(gòu)中每個(gè)成員所占內(nèi)
存空間大小的總和,結(jié)閡中每個(gè)成員相互獨(dú)立。
38、下列語句段中,正確的是()。
A、struct{intx;floaty;inta|2|;unsignedb[3|;charname|10];);
B>structstu{unsigneda|3|;unsignedb|4];}x;int*p=&x.a;
C^structsu{inta;floatx[4];}y={1,1.0);floatdata=y.x;
D^stmctnd{inta,b;unsignedc[2]=5;);
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:本題主要考查的知識(shí)點(diǎn)是結(jié)構(gòu)類型的概念和定義,結(jié)構(gòu)定義的一般形
式是:struct結(jié)構(gòu)類型名稱{數(shù)據(jù)類型成員名1;數(shù)據(jù)類型成員名2;數(shù)據(jù)類型成
員名n;};slruct為關(guān)鍵字,是結(jié)構(gòu)的標(biāo)識(shí)符;{}中包圍的是組成該結(jié)構(gòu)的成員預(yù);
每個(gè)成員的數(shù)據(jù)類型既可以是簡(jiǎn)單的數(shù)據(jù)類型,也可以是復(fù)雜的數(shù)據(jù)類型。整個(gè)定
義作為一個(gè)完整的語句,用分號(hào)結(jié)束。結(jié)構(gòu)類型名稱是可以省略的,此時(shí)定義的結(jié)
構(gòu)稱為無名結(jié)構(gòu)。
39、設(shè)x=011050,則x=x&01252的值是()。
A、0000001000101000
B、1111110100011001
C、0000001011100010
D、1100000000101000
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:本題主要考查按位與運(yùn)算,x=011050的二進(jìn)制形式為
0001001000101000,01252的二進(jìn)制形式為0000001010101010,兩者相與得
0000001000101000o
40、已知函數(shù)fread.的調(diào)用形式為fread(buffer,size,count,fp);,其中buffer代表的是
()。
A、存放讀入數(shù)據(jù)項(xiàng)的存儲(chǔ)區(qū)
B、一個(gè)指向所讀文件的文件指針
C、一個(gè)指針,是指向輸入數(shù)據(jù)存放在內(nèi)存中的起始地址
D、一個(gè)整型變量,代表要讀入的數(shù)據(jù)項(xiàng)總數(shù)
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:數(shù)據(jù)塊讀取函數(shù)調(diào)用形式:fread(buffer,size,count,fp)。fread函數(shù)參數(shù)
說明:“buffer”是一個(gè)指針,對(duì)fread來說,它是讀入數(shù)據(jù)的存放地址。對(duì)fwriie來
說,是要輸出數(shù)據(jù)的地址?!皊ize”是要讀寫的字節(jié)數(shù):“count”是要進(jìn)行讀寫多少個(gè)
size字節(jié)的數(shù)據(jù)項(xiàng);“fp”是指文件型指針。
三、公共基礎(chǔ)填空題(本題共5題,每題7.0分,共5
分。)
41、在算法的4個(gè)特性中,算法必須能在執(zhí)行有限個(gè)步驟之后終止指的是算法的
______特性。
標(biāo)準(zhǔn)答案:有窮性
知識(shí)點(diǎn)解析:算法的4個(gè)基本特性包括:可靠性、確定性、有窮性和擁有足夠的情
報(bào),其中,算法的有窮性指的是算法必須在有限的時(shí)間內(nèi)完成,即算法必須在執(zhí)行
有限個(gè)步驟之后終止。
42、按照邏輯結(jié)構(gòu)分類,結(jié)構(gòu)可以分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),棧屬于o
標(biāo)準(zhǔn)答案:線性結(jié)構(gòu)
知識(shí)點(diǎn)解析:數(shù)據(jù)的邏輯結(jié)構(gòu),是指數(shù)據(jù)元素之間的邏輯關(guān)系,分為線性結(jié)構(gòu)和非
線性結(jié)構(gòu),常見的線性結(jié)構(gòu)有線性表、棧和隊(duì)列等,常見的非線性結(jié)構(gòu)有樹、二叉
樹等。
43、棧中允許進(jìn)行插入和刪除的一端叫做。
標(biāo)準(zhǔn)答案:棧頂
知識(shí)點(diǎn)解析:棧是限定在表的一端進(jìn)行插入和刪除操作的線性表。在表中,允許插
入和刪除的一端叫做“棧頂”,不允許插入和刪除的一端叫做“棧底
44、在面向?qū)ο蟪绦蛟O(shè)計(jì)中,從外面看只能看到對(duì)象有外部特征,而不知道也無須
知道數(shù)據(jù)的具體結(jié)構(gòu)以及實(shí)現(xiàn)操作的算法,這稱為對(duì)象的。
標(biāo)準(zhǔn)答案:封裝性
知識(shí)點(diǎn)解析:對(duì)象具有下列5個(gè)基本特點(diǎn):①標(biāo)識(shí)唯一性;②分類性;③多態(tài)
性;④封裝性;⑤模塊獨(dú)立性好。其中,封裝性是指從外面看只能看到對(duì)象的外
部特征,對(duì)象的內(nèi)部特征即處理能力的實(shí)行和內(nèi)部狀態(tài),對(duì)外是不可見的,對(duì)象的
內(nèi)部狀態(tài)只能由其自身改變。
45、軟件工程研究的內(nèi)容主要包括:技術(shù)和軟件工程管理。
標(biāo)準(zhǔn)答案:軟件開發(fā)
知識(shí)點(diǎn)解析:軟件工程包括軟件開發(fā)技術(shù)和軟件工程管理。其中軟件開發(fā)技術(shù)包
括:軟件開發(fā)方法學(xué)、開發(fā)過程、開發(fā)工具和軟件工具環(huán)境,其主體內(nèi)容是軟件開
發(fā)方法學(xué):軟件工程管理包括:軟件管理學(xué)、軟件工程經(jīng)濟(jì)學(xué)、軟件心理學(xué)等內(nèi)
容。
四、填空題(本題共10題,每題1.0分,共10分。)
46、表示“整數(shù)x的絕對(duì)值大于5”時(shí)值為“假”的C語言表達(dá)式是。
標(biāo)準(zhǔn)答案:(x>-5)&&(xV5)
知識(shí)點(diǎn)解析:本題考查基本邏輯表達(dá),“整數(shù)x的絕對(duì)值大于5”時(shí)值為“假”,即整
數(shù)x的絕對(duì)值小于等于5,也就是整數(shù)x要大于等于-5且要小于等于5。這里“且”
用“與(&&)”表示,所以C語言表達(dá)式為:(x>-5)&&(xV5)。
47、設(shè)y為血型變量,請(qǐng)寫出描述“y是偶數(shù)”的表達(dá)式。
標(biāo)準(zhǔn)答案:(y%2)==0
知識(shí)點(diǎn)解析:因符合偶數(shù)的條件是對(duì)2取余為0,所以要描述y是偶數(shù)的表達(dá)式是
(y%2)==0o
48、下列程序的運(yùn)行結(jié)果是omain(){intx=l,y=2,z=3;printf(,,%d,',,x<
y?y:x);primf("%d,",z<y?x++:y++);primf("%d,%d,',x,y);}
標(biāo)準(zhǔn)答案:2,2,1,3
知識(shí)點(diǎn)解析:本題考查++,--運(yùn)算符和條件運(yùn)算符的使用?!氨磉_(dá)式1?表達(dá)式2:
表達(dá)式3”的功能是:表達(dá)式1的值若非0,則計(jì)算表達(dá)式2的值,且表達(dá)式2的值
為最終結(jié)果;若表達(dá)式1的值為0,則計(jì)算表達(dá)式3的值,且為最終結(jié)果。本題
中,x=l,y=2時(shí),x<y成立,輸出y的值2;y=2,z=3時(shí),zVy不成立,執(zhí)行
y++,輸出2后y值增1,所以最后一個(gè)輸出x的值不變?yōu)?,y的值為增加后的
3o
49、下列程序段中循環(huán)體的執(zhí)行次數(shù)是。a=15;b=0do{b+=2;a-
=2+b;}while(a>=0);
標(biāo)準(zhǔn)答案:3
知識(shí)點(diǎn)解析:本題考查do…while語句形式:do循環(huán)體while表達(dá)式首先執(zhí)行循
環(huán)體語句,然后檢測(cè)循環(huán)控制條件表達(dá)式的值,若為真,則重復(fù)執(zhí)行循環(huán)體語句,
否則退出循環(huán)。第1次循環(huán):b+=2,b=2,a-=2+b,a=U:第2次循環(huán);b=4,
a=5;第3次循環(huán):b=6,a=-3,此時(shí)再判斷循環(huán)條件不滿足,退出循環(huán)。
50、語句“int(*ptr)();”的含義是是指向函數(shù)的指針,該函數(shù)返回一個(gè)血型數(shù)
據(jù)。
標(biāo)準(zhǔn)答案:ptr
知識(shí)點(diǎn)解析:本題考查函數(shù)指針的概念
溫馨提示
- 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. 人人文庫(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物材料編程調(diào)控腫瘤血管生成的策略
- 生物打印技術(shù)在神經(jīng)干細(xì)胞移植中的應(yīng)用
- 生物化學(xué)虛擬實(shí)驗(yàn)與交叉學(xué)科融合
- 生物制品穩(wěn)定性試驗(yàn)強(qiáng)制降解試驗(yàn)設(shè)計(jì)
- 生物制劑聯(lián)合免疫抑制劑治療的MDT協(xié)同方案
- 生物制劑失應(yīng)答的炎癥性腸病免疫調(diào)節(jié)治療
- 生物3D打?。浩鞴僖浦查L(zhǎng)期功能維持方案設(shè)計(jì)
- 數(shù)據(jù)面試題及業(yè)務(wù)理解能力含答案
- 圖書出版采購(gòu)編輯面試題及答案
- 深度解析(2026)《GBT 19396-2025鋱鏑鐵磁致伸縮材料》
- 【MOOC答案】《電子線路設(shè)計(jì)、測(cè)試與實(shí)驗(yàn)(二)》(華中科技大學(xué))章節(jié)作業(yè)慕課答案
- 2025年高考數(shù)學(xué)立體幾何檢測(cè)卷(立體幾何中的三角函數(shù)應(yīng)用)
- 2025年綜合類-衛(wèi)生系統(tǒng)招聘考試-護(hù)士招聘考試歷年真題摘選帶答案(5卷100題)
- 駐外銷售人員管理辦法
- 醫(yī)療反歧視培訓(xùn)
- GB/T 45701-2025校園配餐服務(wù)企業(yè)管理指南
- 2025-2030中國(guó)高效節(jié)能電機(jī)行業(yè)競(jìng)爭(zhēng)力優(yōu)勢(shì)與發(fā)展行情監(jiān)測(cè)研究報(bào)告
- 健身房合伙協(xié)議書
- 美甲師聘用合同協(xié)議
- 《儲(chǔ)能電站技術(shù)監(jiān)督導(dǎo)則》2580
- 保安人員安全知識(shí)培訓(xùn)內(nèi)容
評(píng)論
0/150
提交評(píng)論