




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
國家二級(C語言)筆試模擬試卷第1
套
一、公共基礎(chǔ)選擇題(本題共10題,每題7.0分,共
10分。)
1、下列模式中,能夠給出數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法的是()。
A、內(nèi)模式
B、外模式
C、概念模式
D、邏輯模式
標準答案:A
知識點解析:數(shù)據(jù)庫管理系統(tǒng)的三級模式結(jié)構(gòu)由外模式、模式和內(nèi)模式組成。外
模式,或子模式,或用戶模式,是指數(shù)據(jù)庫用戶所看到的數(shù)據(jù)結(jié)構(gòu),是用戶看到的
數(shù)據(jù)視圖。模式,或邏輯模式,是數(shù)據(jù)庫中對全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特性的描述,
是所有用戶所見到的數(shù)據(jù)視圖的總和。外模式是模式的一部分。內(nèi)模式,或存儲模
式,或物理模式,是指數(shù)據(jù)在數(shù)據(jù)庫系統(tǒng)內(nèi)的存儲介質(zhì)上的表示,即對數(shù)據(jù)的物理
結(jié)構(gòu)和存取方式的描述。
2、在關(guān)系代數(shù)運算中,有5種基本運算,它們是()。
A、并(U)、差(?)、交(。)、除(:)和笛卡兒積(x)
B、并(U)、差(-)、交⑺)、投影(兀)和選擇(0)
C、并(U)、交S)、投影(兀)、選擇(o)和笛卡兒積(X)
D、并(U)、差(-)、投影(兀)、選擇(6和笛卡兒積(X)
標準答案:A
知識點解析:數(shù)據(jù)庫有兩層映像,即外模式/模式和模式/內(nèi)模式映像。模式/內(nèi)
模式映像定義數(shù)據(jù)庫全局邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)之間的對應(yīng)關(guān)系。
3、以下敘述中錯誤的是o
A、用戶所定義的標識符允許使用關(guān)鍵字
B、用戶所定義的標識符應(yīng)盡量做到“見名知意”
C、用戶所定義的標識符必須以字母或下劃線開頭
D、用戶所定義的標識符中,大、小寫字母代表不同標識
標準答案:A
知識點解析:在C語言中,用戶所定義的標識符不能使用關(guān)鍵字。
4、在結(jié)構(gòu)化分析方法中,數(shù)據(jù)字典的作用是()。
A、存放所有需要處理的原始數(shù)據(jù)
B、存放所有處理的結(jié)果
C、存放所有程序文件
D、描述系統(tǒng)中所用到的全部數(shù)據(jù)和文件的有關(guān)信息
標準答案:D
知識點解析:在C語言中,結(jié)構(gòu)化分析方法中的數(shù)據(jù)字典的作用是描跡系統(tǒng)中所
用到的全部數(shù)據(jù)和文件的有關(guān)信息。
5、下面選項中不屬于面向?qū)ο蟪绦蛟O(shè)計特征的是()。
A、繼承性
B、多態(tài)性
C、類比性
D、封閉性
標準答案:C
知識點解析?:面向?qū)ο蟪绦蛟O(shè)計的特征有以下幾點:分類性、繼承性、封裝性、多
態(tài)性、模塊性等。
6、在長度為64的有序線性表中進行順序查找,最壞情況下需要比較的次數(shù)為()。
A、63
B、64
C、6
D、7
標準答案:2
知識點解析:在長度為n的線性表中進行順序查找,如果表中第一個元素就是被查
找元素,則只需做一次比較就查找成功,這是順序查找的最好情況;如果被查找的
元素是線性表中的最后一個元素或者不在線性表中,則需要進行n次比較,這是順
序查找的最壞情況。所以選項B)正確。
7、下列SQL語句中,用于修改表結(jié)構(gòu)的是()。
A、ALTER
B、CREATE
C、UPDATE
D、INSERT
標準答案:1
知識點解析:在SQL語句中,倉ij建用CREATE,刪除用DROP,改變用ALTER,
后面跟類型和名字,附加子句。
8、下列敘述中正確的是
A、一個邏輯數(shù)據(jù)結(jié)構(gòu)只能有一-種存儲結(jié)構(gòu)
B、數(shù)據(jù)的邏輯結(jié)構(gòu)屬于線性結(jié)構(gòu),存儲結(jié)構(gòu)屬于非線性結(jié)構(gòu)
C、一個邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲結(jié)構(gòu),且各種存儲結(jié)構(gòu)不影響數(shù)據(jù)處理的效
率
D、一個邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲結(jié)構(gòu),且各種存儲結(jié)構(gòu)影響數(shù)據(jù)處理的效率
標準答案:8
知識點解析:一?般來說,一種數(shù)據(jù)的邏輯結(jié)構(gòu)根據(jù)需要可以表示成多種存儲結(jié)構(gòu),
常用的存儲結(jié)構(gòu)有順序、鏈接、索引等存儲結(jié)構(gòu)。而采用不同的存儲結(jié)構(gòu),其數(shù)據(jù)
處理的效率是不同的。由此可見,選項D的說法正確。
9、結(jié)構(gòu)化程序設(shè)計主要強調(diào)的是_____o
A、程序的規(guī)模
B、程序的易讀性
C、程序的執(zhí)行效率
D、程序的可移植性
標準答案:2
知識點解析:結(jié)構(gòu)化程序設(shè)計主要強調(diào)的是結(jié)構(gòu)化程序清晰易讀,可理解性好,程
序員能夠進行逐步求精、程序證明和測試,以保證程序的正確性。
10、在面向?qū)ο蠓椒ㄖ?,不屬于“對象”基本特點的是_____o
A、一致性
B、分類性
C、多態(tài)性
D、標識唯一性
標準答案:A
知識點解析:面向?qū)ο蠓椒ㄖ凶罨镜母拍钍菍ο?,它的基本特點有:標識唯-
性、分類性、多態(tài)性、封裝性和模塊獨立性好。
二、選擇題(1分)(本題共〃題,每題1.0分,共〃
分。)
II、數(shù)據(jù)庫技術(shù)的根本目標是要解決數(shù)據(jù)的()。
A、存儲問題
B、共享問題
C、安全問題
D、保護問題
標準答案:B
知識點解析:數(shù)據(jù)庫技術(shù)的根本目標是解決數(shù)據(jù)的共享問題。
12、關(guān)于C語言中數(shù)的表示,以下敘述中正確的是
A、只要在允許范圍內(nèi)整型數(shù)和實型數(shù)都能精確的表示
B、只有整型數(shù)在允許范圍內(nèi)能精確無誤的表示,實型數(shù)會有誤差
C、只有實型數(shù)在允許范圍內(nèi)能精確無誤的表示,整型數(shù)會有誤差
D、只有用八進制表示的數(shù)才不會有誤差
標準答案:B
知識點解析:在C語言中,整型數(shù)值是以補碼表示的。正整數(shù)的補碼與原碼相同,負
數(shù)的補碼是將該數(shù)的絕對值的二進制形式按位取反再加lo這樣,在整型數(shù)的允許范
圍內(nèi)能夠精確的表示整數(shù)。與整型數(shù)據(jù)的存儲方式不同,浮點型數(shù)據(jù)是按照指數(shù)形
式存放的。系統(tǒng)把一個浮點型數(shù)據(jù)分成小數(shù)部分和指數(shù)部分,分別存放。由于浮點
型數(shù)據(jù)是由有限的存儲單元組成的,因此能提供的有效數(shù)字總是有限的,在有效數(shù)字
以外的數(shù)字將被舍去,由此可能會產(chǎn)生一些誤差。
13、能正確表“當(dāng)x的取值在[1,10]和[100,110|范圍內(nèi)為真,否則為假”的表述式
是()。
A、(x>=l)&&(x<=W)&&(x>=100)&&(x<=l10)
B、(x>=l)II(x<=IO)II(x>=100)II(x<=110)
C、(x>=l)&&(x<=10)II(x>=100)&&(x<=110)
D、(x>=l)II(x<=10)&&(x>=100)II(x<=110)
標準答案:4
知識點解析:本題考查邏輯與(&&)和邏輯或(II)運算符的使用。x>=l和x<=10
是邏輯與的關(guān)系,因此C語言表達式應(yīng)寫成“(x>=l)&&(xV=10)”,x>=100和x
<二110也是邏輯與的關(guān)系,因此C語言表達式應(yīng)寫成“(x>=100)&&(x〈=110)”;
[1,10]和[100,110]是邏輯或的關(guān)系,因此只要將前兩個表達式用邏輯或運算符連
接起來即可,所以最后的表達式:(x>=l)&&(X<=10)II(x>=100)&&(x<=l10)o
14、若以下選項中的變量已正確定義,則正確的賦值語句是()。
A^xl=26.8%3;
B、l+2=x2;
C、x3=0xl2;
D^x4=1+2=3;
標準答案:4
知識點解析:正確的賦值語句的左值不能為常量或表達式。選項A)中右值的表達
式錯:選項R)的左值為表達式,錯誤:選項D)的表達式x4=1+2=3,是先執(zhí)行賦值
表達式1+2=3,這本身就是錯誤的,1+2不是變量,不能賦值。
15、若變量已正確說明為float型,要通過scanf("%f%f%F,&a,&b,&c);給a
賦值10.0,b賦值22.0,c賦值33.0,下列不正確的輸入形式是()。
A、10V回車>22V回車>33V回車》
B、10.0,22.0,33.0V回車)
C、C.0V回車>22.033.0V回車》
D、1022V回車>33V回車》
標準答案:2
知識點解析:在scanf("%f%f%f,&a,&b,&c);中,格式描述為“當(dāng)輸
入數(shù)據(jù)時,數(shù)據(jù)之間可用空格、制表符和回車符作為間隔符,而逗號不是合法的間
隔符。
16、下面四個選項中,均是不正確的8進制數(shù)或16進制數(shù)的選項是
A、0I60x8f018
Oabc017Oxa
C、010-0x110x16
D、0al27ff-123
標準答案:8
知識點解析:8進制中,不可能包括8以上的數(shù)字,它的范圍只在。?7之間,以0
開頭。同樣,十六進制是以O(shè)x開頭,數(shù)字在0?9和a?f之間。
17、以下語句的輸出結(jié)果是()printf("%d,%d,%u\n",016,16,-16);
A、16,16,6542。
B、14,16,6542
C、16,16,-16
D、14,16,-16
標準答案:2
知識點解析:暫無解析
18、有以下程序:main(){intm=0256,n=256;printf("%o%o\n\m,n);}程序運行后
的輸出結(jié)果是()。
A、02560400
B、0256256
C、256400
D、400400
標準答案:4
知識點解析:程序中定義了兩個整型變量,一個用八進制表示,一個用十進制表
示,輸出語句中要求m、n都為八進制輸出,顯然m原樣輸出為256,n的值轉(zhuǎn)換
為八進制輸出(256的八進制為400),故輸出400。所以,4個選項中選項C符合題
意°
19、以下選項中可作為C語言合法常量的是
A、-80
B、-80
C、-8el.O
D、-80.0e
標準答案:1
知識點解析?:選項B中,以0開頭表示是一個八進制數(shù),而八進制數(shù)的取值范圍
是0-7,所以-080是不合法的;選項C和D中,e后面的指數(shù)必須是整數(shù),所以
也不合法。
20、以下選項中屬于C語言的數(shù)據(jù)類型是o
A、復(fù)數(shù)型
B、邏輯型
C、雙精度型
D、集合型
標準答案:4
知識之解析:C語言的數(shù)據(jù)類型分為基本類型、構(gòu)苴類型、指針類型、空類型四大
類。其中,基本類型分為整型、字符型、實型三類。實型又稱浮點型,包括單精度
型和雙精度型兩種類型。
21、下列程序的輸出結(jié)果是()。main(){chara[7]="a0\0a0\0";intij;i=sizeof(a);
j=strlen(a);printf("%d%d\n",i,j);)
A、22
B、76
C、72
D、62
標準答案:4
知識點解析:函數(shù)sizeof(a)的功能是求出字符串a(chǎn)中的字符占用存儲空間的大小,
由于字符數(shù)組a有長度為7,所以i=7;函數(shù)slrlen(a)的功能是:求出字符串a(chǎn)的長
度。而每個字符串都以'(T為字符串的結(jié)束標記,所以j的值等于2。
三、選擇題(2分)(本題共20題,每題1.0分,共20
分。)
22>下列程序的輸出結(jié)果是#include"stdio.h""main(){inti,a=0,b=0;
for(i=l;i<10;i++){if(i%2==0){a++;continue;}b++;}printf("a=%d,
b=%d",a,b);)
A^a=4,b=4
B、a=4,b=5
C^a=5,b=4
D、a=5,b=5
標準答案:B
知識點解析:continue語句的作用是跳過本次循環(huán)體中余下尚未執(zhí)行的語句,接著
再一次進行循環(huán)條件的判定。當(dāng)能被2整除時,a就會增1,之后執(zhí)行continue語
句,直接執(zhí)行到for循環(huán)體的結(jié)尾,進行i++,判斷循環(huán)條件。
23、有以下程序:main(){inty=1,x=2,z=3;printf("%d,%d\n",(++x,y++),z+2);}執(zhí)
行后的輸出結(jié)果是()。
A、3,5
B、2,5
C、3,3
D、1,5
標準答案:D
知識點解析:本題考查逗號表達式。逗號表達武的求解步驟是先求解表達式1,然
后依次求解表達式2,直到表達式N的值。整個逗號表達式的值就足最后一個表達
式N的值。(++x,y++)這個表達式的返回值是y++,先使用y的債,然后將y加
1,所以輸出第一個值為1。第二個輸出的值為z+2=3+2=5。
24、函數(shù)fseek。的正確調(diào)用形式是()。
A、fseek(位移量,起始點,文件類型指針);
B、fseek(文件類型指針,位移量,起始點);
C、fseek(文件類型指針,起始點,位移量);
D、fseek(起始點,位移量,文件類型指針);
標準答案:B
知識點解析:改變文件位置的指針函數(shù)fscck()的調(diào)用形式:
fseek(fp,offset,position);cfseek函數(shù)參數(shù)說明:“fp”是指向該文件的文件型指針;
“offset”為位移量,指從起始點position到要確定的新位置的字節(jié)數(shù)。也就是以起點
為基準,向前移動的字節(jié)數(shù)?!皃osition”為起始點,指出以文件的什么位置為基準
進行移動,position的值用整型常數(shù)表示,“0”表示文件的開頭,“1”表示文件的當(dāng)
前位置,“2”表示文件的末尾。
25、有以下程序//includemain(){charp[20]={,a\,b\,c\,d,},q[]=nabc",r[l-'abcdc';
strcat(p,r);strcpy(p+slrlen(q),q);printf("%d\n",strlen(p));)程序運行后的輸出結(jié)果是
A、9
B、6
C、11
D、7
標準答案:B
知識點解析:strcpy()函數(shù)的功能是將字符串q復(fù)制到從pl3]位置開始的存儲單
元,同時復(fù)制字符串結(jié)束標志'\0'到p[6]中。函數(shù)shien()返回的是字符串中不包
括、(T在內(nèi)的實際長度,敢本題答案為B)。
26、與“y=(x>0?l:x<0?-l:Of;的功能相同的if語句是O。
A^if(x>0)v=l;elseif(x<0)y=l;elsey=0;
B、if(x)if(x>0)y=l;elseif(x<0)y=-l;elsey=0;
C、y=-lif(x)if(x>0)y=l;elseif(x==0)y=0;elsey=-1;
D^y=0:if(x>=0)if(x>=0)y=l;elsey=-I;
標準答案:B
知識點解析:y=(x>0?l:x<0?-l:0)中有兩個三目運算符,因此按右到左的順序
運算,可寫成y=(x>0?l:(xV0?-l:0)),故選擇B選項。
27、執(zhí)行語句“for(i=l;i++V4;);”后,變量i的值是()。
A、3
B、4
C、5
D、不定
標準答案:C
知識點解析:for循環(huán)結(jié)束時,i++的值應(yīng)為4,i自加后此時應(yīng)為5,故選擇C選
項。
28>有以下程序:#includevoidWriteStr(char*fn,char*str){FILE*fp:
fp=fopen(fn,"w");fputs(str,fp);fclose(fp);main()(WriteStrC'tl.dat","start'1);
WriteStrC'tl.dat'7'end");)程序運行后,文件tl.dat中的內(nèi)容是()。
A^start
B、end
C、startend
D、cndrt
標準答案:B
知識點解析:暫無解析
29、數(shù)據(jù)結(jié)構(gòu)作為計算機的一門學(xué)科,主要研究數(shù)據(jù)的邏輯結(jié)構(gòu)、對各種數(shù)據(jù)結(jié)構(gòu)
進行的運算以及。
A、數(shù)據(jù)的存儲結(jié)構(gòu)
B、計算方法
C、數(shù)據(jù)映像
D、邏輯存儲
標準答案:A
知識點解析:暫無解析
30、設(shè)有如下函數(shù)定義,則輸出結(jié)果為ochar*fun(char*str)
{char*p=str;\vhile(*p){if(*p>,d,)continue;p++;}returnp;)
main(){printf("%s\n1,,fun("welcome!"));}
A、welcome!
B、come!
C、w
D、程序陷入死循環(huán)中
標準答案:D
知識點解析:暫無解析
31、有如下定義:structperson{charname[9];intage;};structperson
class[10]={nJohnn,l7,"paul",l9,“Mary”,18,“Adam”,16};根據(jù)上述定義,能輸出字母
M的語句是()。
A、printf("%c\n",class[3].name);
B、printf(n%c\n",class[3].name[1]);
C、printf(,'%c\n,,,class[2].name[1]);
D、printf("%c\n",class[2].name[0]);
標準答案:8
知識點解析:本題的關(guān)鍵是弄清楚給結(jié)構(gòu)體數(shù)組賦初值的問題。初始值將按數(shù)組的
各個元素在內(nèi)存中的存放次序逐個地賦給各元素。結(jié)構(gòu)體數(shù)組的各個元素在內(nèi)存中
的存放次序是:class[O\name,class[O].age,class[l].name,class[l].age,...,由此可知,
包含字符“M”的字符串“Mary”賦值給了元素class⑵.name,則與字符相對應(yīng)的
表達式是class[2].name[0]o
32、有以卜程序:#defmeP3voidP(intx){return(p*x*x);}main()
{pritnf("%d\n';F(3+5);)程序運行后的輸出結(jié)果是(),
A、192
B、29
C、25
D、編譯出錯
標準答案:8
知識點解析:本題是一道陷阱題,考生如果沒注意到F()函數(shù)被定義為void類型的
話,很容易錯選為選項A,其實應(yīng)該選擇選項D,編譯出錯。
33、若有下面的程序片段:int[12]={0},*p[3],**pp,i;for(i=0;i<3;i)
p[i]=&a[i*4];pp=p則對數(shù)組元素的錯誤引用是
A、pp[O][l]
B、a|10]
C、p[3][l]
D^*(*(p+2)+2)
標準答案:4
知識點解析:本題綜合考查一維數(shù)組和多維數(shù)組指針變量的表示方法。在C語言
中,引用數(shù)組元素的方法有兩種,即:下標法和指針法。下標法如a[i]形式;指針
法如*(a+i)或*(p+l)。其中a是數(shù)組名,p是指向數(shù)組的指針變量,其初值p=a。再
如氣木(p+2)+2)是a⑵⑵的值,注意語句中指針型數(shù)組的書寫格式,不能寫成“(*數(shù)
組名)[長度]”,因為這是定義指向含有“長度”個元素的一維數(shù)組的指針變量。例如
有定義語句“inta,b,c,c,*P[3]={&a,&b,&c};",它定義了一個名為p的指
針型數(shù)組.其3個元素p[0],p[1],p[2]分別指向B個整型變量a.b.c?注意:
數(shù)組元素的引用方法。
34、若有如下程序:main(){intx=l,n;for(n=0;n<5;n++){switch(n){case
n
3:x+=3;case2:x+=2:case1:case0:default:x+=4;}}printf("%d\n?
x);}則程序執(zhí)行后的輸出結(jié)果是()
A、10
B、18
C、28
D、30
標準答案:4
知識點解析:暫無解析
35、以下程序的輸出結(jié)果是()#includeVstdio.h>main(){unionun{inti;long
k:charc;};structbyte{inta;longb;unionunc;)r;printf("%d\n",
sizeof(r));}
A、10
B、13
C、7
D、8
標準答案:1
知識點解析:暫無解析
36、有以卜.程序:main(){unsignedchara,b,c;a=0x3;b=a|0x8;c=b<<1;
printf("%d%d\n",b,C);}程序運行后的輸出結(jié)果是()。
A、-1112
B、-6-13
C、1224
D、1122
標準答案:8
知識點解析:將a的值用二進制表示:00000011。a與0x8(二進制表示為
00001000)按位或,得到結(jié)果00001011賦值給b,b的值為11。再將b左移一位得
到:00010110,賦值給c,c的值為22。所以最后輸出的b,c的值為11,22。
37、請讀程序:#inckide<stdio.h>main(){inta=5,b=7,c=9;
pintf(n%d,%d,"a,b,C);printf(H%d,%d",a,D);}上面程序的輸出結(jié)果是。
A、579,5,7
B、5,7,5,7
C、5,7,不定7,9
D、5,7,5,7,不定
標準答案:8
知識點解析:printf函數(shù)按格式控制符的個數(shù)輸出表列中對應(yīng)的數(shù)據(jù),若輸出表列
的個數(shù)大于格式控制符個數(shù),則輸出與格式控制符對應(yīng)的輸出表列的數(shù)據(jù),輸出表
列中多的則省略;若格式控制符個數(shù)大于輸出表列的個數(shù),則輸出與格式控制符對
應(yīng)的輸出表列的數(shù)據(jù),格式控制符多的部分輸出的數(shù)據(jù)是隨機的。
38、以下函數(shù)值的類型是()fun(floatx){floaty;y=3*x-4;
returny;)
A、int
B、不確定
C^void
D、float
標準答案:1
知識點解析:暫無解析
39、下面程序段中C的二進制值是ochara=3,b=6.c:c=ab<<1;
A、1011
B、1111
C、11110
D、11100
標準答案:2
知識點解析:C語言提供六種位運算符,按優(yōu)先級由高到低的順序分別為:取反
(?)、左移(VV)和右移(>>)、按位與(&)、按位異或(A)、按位或(|)。所以表達式
?=^<<1先運算1><<1得二進制為00001100,再運算aAOOOOUOO,最后得二進
制值00001111o
40、有以下函數(shù)定義:voidfun(intn,doublex){......}若以下選項中的變量都已
正確定義并賦值,則對函數(shù)fun的正確調(diào)用語句是
A^fun(inty,doublem);
k=fun(10,12.5);
C^fun(x,n);
D^voidfun(n,x);
標準答案:C
知識"解析:選項A)中的實參不能在調(diào)用時聲明;選項B)錯誤,因為無返回值的
函數(shù)不能出現(xiàn)在表達式中;選項D)錯誤,其調(diào)用格式不正確。
41、以下程序的功能是進行位運算:main(){unsignedchara,b;a=7A3;b=?4&
3;printf("%d%d\n",a,B);}程序運行后的輸出結(jié)果是。
A、43
B、73
C、70
D、40
標準答案;A
知識點解析:C語言提供六種位運算符,按優(yōu)先級由高到低的順序分別為:取反
(-)一左移(VV)和右移(>>)T按位與(&)一按位異或(A)T按位或(I)。是按位異
或運算,當(dāng)對應(yīng)位上的二進制數(shù)值相同時,異或的結(jié)果為0,對應(yīng)位上的二進制數(shù)
值不同時,異或的結(jié)果為1,本題“7A3”相當(dāng)于01UA0011,所以a的值為4;
是按位與運算符,只有當(dāng)所有對應(yīng)位上的數(shù)值都為1時,結(jié)果才為1;是按位取
反。題中“-4&3”相當(dāng)于1011&0011=0011,所以b的值為3。
四、公共基礎(chǔ)填空題(本題共4題,每題1.0分,共4
分。)
42、長度為n的順序存儲線性表中,當(dāng)在任何位置上插入一個元素概率都相等時,
插入一個元素所需移動元素的平均個數(shù)為o
A、n/2
標準牝索.
知識之解析:哲無解析
43、下列程序的功能是對輸入的一行字符中的數(shù)字字符的字面值累加,輸出此累加
和,請?zhí)羁铡?include#includemain(){chare;inta,s=0;while()
if(isdigit(c)){a=s-,O,;s+=a:}printf(',s=%d,\s);}
標準答案:(c=getchar())!=’\n\
知識點解析:由題可知,用函數(shù)c=gelchar()從鍵盤上讀取一行的字符(即沒有換
行)所以條件為(c=gctchar())L\n\
44、在面向?qū)ο蠓椒ㄖ校畔㈦[蔽是通過對象的【】性來實現(xiàn)的。
標準答案:封裝
知識點解析:封裝是一種信息隱蔽技術(shù),目的在于將對象的使用者和對象的設(shè)計者
分開。用戶只能見到對象封裝界面上的信息,不必知道實現(xiàn)的細節(jié)。
45、軟件測試按功能劃分的方法劃分,通常分為【】測試方法和黑盒測試方法。
標準答案:白盒
知識點解析:軟件測試的方法分為白盒測試方法和黑盒測試方法。
46、一個項目具有一個項目主管,一個項目主管可管理多個項目,則實體”項目主
管”與實體”項目,,的聯(lián)系屬于【】。
標準答案:一對多
知識點解析:由于一個項目主管可以管理多個項目,而一個項目只能有一個項目主
管,“項目主管”這個實體與“項目”這個實體的管理關(guān)系屬于一對多。
五、填空題(本題共70題,每題1.0分,共70分。)
47、寫出下列程序的輸出結(jié)果。main。{intn=0;while(n++<=l);
printf(”%dj,n);printf("%d",n++);}
A、3,3
標準答案:
知識點解析:本題在while(n++V=l)語句后,直接加了分號,說明如果while。的
條件為真時,該循環(huán)什么都不做:n++是先取n的當(dāng)前值和1做比較,然后再將n
加1。第一次循環(huán),n=0時,循環(huán)條件n++=0V=l成立,執(zhí)行循環(huán),然后得到
n=l。第二次循環(huán),n=l時,循環(huán)條件n++=lV=l成立,執(zhí)行循環(huán),然后得到
n=2o第三次循環(huán),n=2時,循環(huán)條件n++=2V=l不成立,不執(zhí)行循環(huán),但在判斷
循環(huán)條件時仍將n加1,得到產(chǎn)3。退出循環(huán)后執(zhí)行printf語句,第二個printf語句
輸出n++,是先輸出n的當(dāng)前值3
48fwrite函數(shù)的一般調(diào)用形式是
A、fwrite(buffer,count,size>fp);
B>fwrite(fp,size,count,buffer);
C^fwrite(fp,count,size,buffer);
D、fwrite(buffer,size,count,fp);
標準答案:D
知識點解析:暫無解析
49、對數(shù)據(jù)元素之間的邏輯關(guān)系的描述是()。
標準答案:數(shù)據(jù)的邏輯結(jié)構(gòu)
知識點解析:數(shù)據(jù)的邏輯結(jié)構(gòu)是對數(shù)據(jù)元素之間的邏輯關(guān)系的描述,它可以用一個
數(shù)據(jù)元素的集合和定義在此集合中的若干關(guān)系來表示。
50、若變量a,b已定義為血類型并賦值21和55,要求用print?函數(shù)以a=21,b=55的
形式輸出,請寫出完整的的輸出語句【】。
標準答案:printfC4a=%d,b=%d,,,a,b);
知識點解析:printf是格式化輸出函數(shù)。
51以下程序的輸出結(jié)果是[]o#include<stdio.h>voidfun(){staticint
a=0;a+=2;printf(n%d',a);)main(){intcc;for(cc=l;cc<4;cc++)fun();
printfCAn,1);}
標準答案:246
知識點解析:本題考查靜態(tài)(static)局部變量的使用,fun函數(shù)中的靜態(tài)局部變量a
所占用的存儲單元在程序運行過程中始終不釋放,即當(dāng)下一次調(diào)用該函數(shù)時,該變
量仍然保留上一次函數(shù)調(diào)用結(jié)束時已有的值,3次調(diào)用fun函數(shù)分別得到2,4.
6。
52、設(shè)函數(shù)Gndbig已定義為求3個數(shù)中的最大值。以下程序?qū)⒗煤瘮?shù)指針調(diào)用
findbig函數(shù)。請?zhí)羁?。main(){intfindbig(int,int,int);int(*f)(),x,y,z,big;f=;
scanf("%d%d%d",&x,&y,&z}:big=(*f)(x,y,Z);printf("big=%d\nM,big);}
標準答案:findbig
知識點解析:本題考核的知識點是指向函數(shù)的指針變量的使用。本題首先定義了一
個指向函數(shù)的指針變量f,如果希望讓它指向某個兇數(shù),只需把函數(shù)名賦給該指針
變量即可。所以說本題的空格處應(yīng)該填入函數(shù)名findbigo
53、若輸入21、23、34、11、2、6,則以下程序的運行結(jié)果[]。main(){inti;
char+p,num[6];for(i=0;i<5;i++)scanf("%d,",&num[i]);scanf("%d",
&num|5|);p=&num|0];sort(p,6);for(i=0;i<5;i++)printf("%d,”,
num[i]);printf("%d\n",num[5]);}sort(p,m)char*p;intm;{inti;char
change,*pl,*p2;for(i=0:i<m/2:i++){pl=p-i:p2=p+(m-l-i);
change=*pl;*pl=*p2;*p2=change;))
標準答案:6,2,11,34,23,21
知識點解析:暫無解析
54、已有定義:doubleup;,請寫出完整的語句,利用malloc函數(shù)使p指向一個
雙精度型的動態(tài)存儲單元【】。
標準答案:p=(double*)inalloc(sizeof(double))
知識點解析:本題重點考查對申請動態(tài)存儲單元函數(shù)malloc的調(diào)用,malloc函數(shù)
的形參為申請動態(tài)存儲單元的大小,調(diào)用此函數(shù)時需耍進行強制類型轉(zhuǎn)換,所以本
題需要將返回類型強制為double型指針。
55、若有如下程序:voidsub(){staticintx=8;x/=2;printf("%d'\x);}main(){in(m;
for(m=0;m<2;m++)sub();)則程序運行后的輸出結(jié)臬是【】.
標準答案:42
知識點解析:主函數(shù)中的for循環(huán)循環(huán)兩次,即函數(shù)sub。被調(diào)用兩次。在sub()中x
被定義為靜態(tài)整型變量,當(dāng)調(diào)用函數(shù)sub()完畢返回主函數(shù),x中的值仍然保留,
下次調(diào)用函數(shù)sub。時,x不再被賦初值。第1次調(diào)用x/=2相當(dāng)于x=x/2=8/2=4,第
2次調(diào)用x=x/2=4/2=2,因此輸出42。
56^有以下程序:#inckide<stclio.h>main(){chare;
whilc((c=gctchar())!=,?,)putchar(-c);)程序運行時,如果從鍵盤輸入:Y?N?V回
車,,則輸出結(jié)果為【】0
標準答案:X
知識點解析:主函數(shù)中首先定義了一個字符型變量c,接著執(zhí)行下面while語句,
在while循環(huán)中,首先從鍵盤上讀入一個字符Y并給賦給字符變量c,賦值表達式
的值不為'?',執(zhí)行輸出語句,輸出字符X。接著判斷while中的循環(huán)條件,讀入一
個字符,?,并賦值給c,賦值表達式的值為?循環(huán)條件不再滿足,退出循環(huán)。
57、有以下程序#inculdemain(){inia=l,B=2,c=3,d=0;iF(a==l)iF(B!=2)iF(c==3)
d=l;elsed=2;elseiF(c!=3)d=3;elsed=4;elsed=5;printF("%d\n",d);}程序遠行后的
輸出結(jié)果是【】。
標準答案:4
知識點解析:暫無解析
國家二級(C語言)筆試模擬試卷第2
套
一、公共基礎(chǔ)選擇題(本題共io題,每題1.0分,共
10分。)
1、下列特征中不是面向?qū)ο蠓椒ǖ闹饕卣鞯氖?)。
A、多態(tài)性
B、繼承
C、封裝性
D、模塊化
標準答案:D
知識點解析:面向?qū)ο笤O(shè)計方法與面向過程設(shè)計方法有本質(zhì)的不同,其基本原理
是:使用現(xiàn)實世界的概念抽象地思考問題從而自然地解決問題。其特點包括:分類
性、多態(tài)性、封裝性、模塊獨立性、繼承和多態(tài)性等。模塊化是結(jié)構(gòu)化程序設(shè)計的
特點。
2、C語言的基本單位是()。
A、函數(shù)
B、過程
C、子程序
D、子函數(shù)
標準答案:A
知識點解析:C語言是函數(shù)式的語言。它的基本組成單位是函數(shù),在C語言中任何
程序都是由一個或者多個函數(shù)組。
3、面向?qū)ο蟮脑O(shè)計方法與傳統(tǒng)的面向過程的方法有本質(zhì)不同,它的基本原理是
()o
A、模擬現(xiàn)實世界中不同事物之間的聯(lián)系
B、強調(diào)模擬現(xiàn)實世界中的算法而不強調(diào)概念
C、使用現(xiàn)實世界的概念抽象地思考問題,從而自然地解決問題
D、鼓勵開發(fā)者在軟件開發(fā)的絕大部分中都用實際領(lǐng)域的概念去思考
標準答案:4
知識點解析:面向?qū)ο蟮脑O(shè)計方法與傳統(tǒng)的面向過程的方法有本質(zhì)不同,它的基本
原理是,使用現(xiàn)實世界的概念抽象地思考問題,從而自然地解決問題。它強調(diào)模擬
現(xiàn)實世界中的概念,而不強調(diào)算法,鼓勵開發(fā)者在軟件開發(fā)的絕大部分中都用應(yīng)用
領(lǐng)域的概念去思考。
4、若x和y都是血型變量,x=100,y=200,且有程序片段:printf(,,%du,
(x,y));,則輸出結(jié)果是_____o
A、200
B、100
C、100200
D、輸出格式符不夠,輸出不確定的值
標準答案:1
知識點解析:暫無解析
5、在計算機中,算法是指o
A、查詢方法
B、加工方法
C、解題方案的準確而完整的描述
D、排序方法
標準答案:4
知識點解析:計算機算法是指解題方案的準確而完整的描述,它有以下幾個基本特
征:可行性、確定性、有窮性和擁有足夠的情報。
6、棧通常采用的兩種存儲結(jié)構(gòu)是
A、順序存儲結(jié)構(gòu)和鏈式存儲結(jié)構(gòu)
B、散列方式和索引方式
C、鏈表存儲結(jié)構(gòu)和數(shù)組
D、線性存儲結(jié)構(gòu)和非線性存儲結(jié)構(gòu)
標準答案:1
知識點解析:和線性表類似,棧也有兩種存儲方法,一是順序棧,二是鏈式棧。棧
的順序存儲結(jié)構(gòu)是利用一組地址連續(xù)的存儲單元一次存儲自棧底到棧頂?shù)臄?shù)據(jù)元
素,同時附設(shè)指針top指示棧頂元素的位置,由于棧的操作是線性表操作的特例,
相對而言,鏈式棧的操作更易于實現(xiàn)。注意:這3種運算方法在各種存儲結(jié)構(gòu)中的
應(yīng)用。
7、在微機中,bit的中文含義是()
A、二進制位
B、字節(jié)
C、字
D、雙字
標準答案:1
知識點解析:暫無解析
8、下列敘述中錯誤的是()。
A、一種數(shù)據(jù)的邏輯結(jié)構(gòu)可以有多種存儲結(jié)構(gòu)
B、數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)的處理效率無關(guān)
C、數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)的處理效率密切相關(guān)
D、數(shù)據(jù)的存儲結(jié)構(gòu)在計算機中所占的空間不一定是連續(xù)的
標準答案:2
知識點解析:數(shù)據(jù)的存儲結(jié)構(gòu)分為順序結(jié)構(gòu)和鏈式結(jié)構(gòu),一個數(shù)據(jù)的邏輯結(jié)構(gòu)可以
有多種存儲結(jié)構(gòu)。順序結(jié)構(gòu)中數(shù)據(jù)元素所占的存儲空間是連續(xù)的,而鏈式存儲結(jié)構(gòu)
中,數(shù)據(jù)元素所占的存儲空間不一定是連續(xù)的。數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)的處理效率
密切相關(guān)。
9、下列描述中,不是線性表順序存儲結(jié)構(gòu)特征的是()。
A、不便于插入和刪除
B、需要連續(xù)的存儲空間
C、可隨機訪問
D、需另外開辟空間來保存元素之間的關(guān)系
標準答案:8
知識點解析:線性表的順序存儲是用一片連續(xù)的空間來存放數(shù)據(jù)元素,其特點是邏
輯上相鄰的元素在物理位置上也相鄰。數(shù)據(jù)元素之間邏輯上的先后關(guān)系自動隱含在
物理位置的相鄰元素之中,因此,不需要另外開辟空間來保存元素之間的關(guān)系。
10、下列不屬于軟件工程的3個要素的是()。
A、工具
B、過程
C、方法
D、環(huán)境
標準答案:8
知識點解析:軟件工程包括3個要素,即方法、工具和過程。方法是完成軟件工程
項目的技術(shù)手段;工具支持軟件的開發(fā)、管理和文檔生成;過程支持軟件開發(fā)的各
個環(huán)節(jié)的控制、管理。
二、選擇題(1分)(本題共〃題,每題7.0分,共〃
分。)
11、下列選項中不合法的十六進制數(shù)是()。
A、Oxff
B、0X11
C、Oxlg
D、OXabc
標準答案:C
知識點解析:十六進制是以“Ox”或“OX”開頭的字符串,字符串中只能含有0?9這
10個數(shù)字和a、b、c、d、e、f這6個字母。
12、數(shù)據(jù)管理技術(shù)發(fā)展的三個階段中,()沒有專門的軟件對數(shù)據(jù)進行管理。
I.人工管理階段H.文件系統(tǒng)階段HI.數(shù)據(jù)庫階段
A、僅I
B、僅III
c、I和n
D、H和III
標準答案:A
知識點解析:數(shù)據(jù)管理技術(shù)發(fā)展的三個階段中,只有人工管理階段,沒有操作系
統(tǒng),沒有管理數(shù)據(jù)的軟件,數(shù)據(jù)處理方式是批處理。在文件系統(tǒng)階段,操作系統(tǒng)中
已經(jīng)有了專門數(shù)據(jù)管理軟件,一般稱為文件系統(tǒng)。在數(shù)據(jù)庫系統(tǒng)階段,出現(xiàn)了統(tǒng)一
管理數(shù)據(jù)的專門軟件系統(tǒng),即數(shù)據(jù)庫管理系統(tǒng)。
13、下列合法的聲明語句是()。
A、int_abc=50;
B、doubleint=3+5e2.5;
CNlongdo=lL;
D、float3_asd=3e-3;
標準答案:A
知識點解析:標識符是由字母、數(shù)字或下劃線組成,并且它的第一個字符必須是字
母或者下劃線。B選項E不是表達變量類型的標識符,它不能再用做變量名和函
數(shù)名。C選項do是C語言的…個關(guān)鍵字。D選項標識符只能以字母或下劃線開
始。
14、有以下程序#includcmain(){inta=l,b=0it(!a)b++;elseit(a==O)it(a)b+=2else
b+=3printf("%d\n",b);}程序運行后的輸出結(jié)果是()。
A、0
B、1
C、2
D、3
標準答案:A
知識點解析:a=l所以!a表達式為假,不執(zhí)行b++。又a=l所以a=0為假,所以跳
過語句后面的if和else語句(因為else和最近的if語句組成一條復(fù)合語句),直接輸
出,所以結(jié)果為0。
15、若有以下程序:main(){intk=2,i=2,m;m=(k+=i*=k);
printf("%d,%d\n",m,i);}執(zhí)行后的輸出結(jié)果是
A、8,6
B、8,3
C、6,4
D、7,4
標準答案:4
知識點解析:本題考查的知謖點是運算符的優(yōu)先級.在復(fù)合賦值語句中,應(yīng)該由右
向左依次賦值,在表達式中,右端由i*=k得i=2*2為4,k=k+i,即k值為6,m=k
故m=6.所以4個選項44c正確。
16、變量a已被定義為整型,下列表達式有錯的是
A、a='A'+20
B、a-='a'
C、a=c+d
D、a='c'+'d'
標準答案:4
知識點解析:暫無解析
17、已知字母A的ASCH參政值是65,字母a的ASCH碼值是97,以下程序列
omain(){chara='A';intb=20;printf(n%d,%o',,(a=a+a,a+b,b),a+,a'+,A,,b);}
A、表達式非法,輸出零或不確定值
B、因輸出項過多,無輸出或輸出不確定值
C、輸出結(jié)果為20,141
D、輸出結(jié)果為20,141,20
標準答案:4
知識點解析:本題中首先輸出逗號表達式“a=a+a,a+b,b”的值,即20。然后以八進
制的形式輸出a+匕的值為97對應(yīng)的八進制數(shù)141,由于最后一個表達式b沒
7j對應(yīng)輸出格式的輸出項表列就不會輸出。
18、IEEE802.3的物理層協(xié)議10BASE-T規(guī)定從網(wǎng)卡到集線器的最大距離為()
A、100m
B、185m
C、360m
D、500m
標準答案:1
知識點解析:暫無解析
19、在函數(shù)scanf的格式控制中,格式說明的類型與輸入項的類型應(yīng)該對應(yīng)匹配。
如果類型不匹配,系統(tǒng)將()。
A、不予接收
B、并不給出出錯信息,但不能得到正確的數(shù)據(jù)
C、能接收到正確輸入
D、給出出錯信息,不予接收輸入
標準答案:2
知識點解析:在scanf函數(shù)的格式控制中,格式說明的類型與輸入項的類型必須一
一對應(yīng)匹配,如不匹配將導(dǎo)致數(shù)據(jù)輸入出現(xiàn)錯誤,但是系統(tǒng)并不報錯。
20、若有以下程序段intm=0xabc,n=0xabc;m-=n;printf("%X\n",m);執(zhí)行后輸出結(jié)果
是
A、0X0
B、0x0
C、0
D、0XABC
標準答案:c
知識點常析:格式字符x或x是以十六進制無符號形式輸出整型數(shù)(不帶前導(dǎo)Ox或
OX)o對于x用abc輸出,X用ABC輸出。
21、以下能正確定義且賦初值的語句是。
A、intnl=n2=10:
B、charc=32;
C、floatf=f+l.l;
D、doublex=12.3E2.5;
標準答案:B
知識點解析:語句“intnl=n2=10;”中,由于變量n2未定義,所以此賦值語句錯
誤:由于賦值語句中不能存在運算表達式,所以選項C中的賦值語句錯誤;選項
D中指數(shù)表示錯誤,C語言規(guī)定,e后面的指數(shù)必須為整數(shù);選項B中的“32”是
ASCII碼的表示形式,這是C語言中字符型數(shù)據(jù)和整型數(shù)據(jù)通用的表現(xiàn),即一個字
符數(shù)據(jù)可以以字符形式出現(xiàn),也可以以整數(shù)形式出現(xiàn)。
三、選擇題(2分)(本題共20題,每題1.0分,共20
分。)
22、若運行以下程序時,從鍵盤輸入ADescriptorVCR>(VCR>表示回車),則下
面程序的運行結(jié)果是()c#include<stdio.h>main(){chare;intv0=l,vl=0,v2=0;
do{switch(c=gctchar()){casc,a,:casc,A,:casc,c\case,E,:casc'i':cascT:
case,o,:case,O,:case'u':case'U':vl+=l:default:v0+=1;v2+=1;}}while(c!=,\n,);
printf(HvO=%d,vl=%d,v2=%d\n",v0,vI,v2);}
A^v0=7,vl=4,v2=7
B、v0=8,vl=4,v2=8
C、v0=ll,vl=4,v2=ll
D、v0-13,vl-4,v2=12
標準答案:D
知識點解析:本題考查的是switch語句的應(yīng)用。分析程序,do-while語句是先執(zhí)行
do后面的語句再判斷是否符合while的條件。V2+=l;語句無論讀入的是什么字母
(包括回車符),此語句都要執(zhí)行,語句default:v()+=l;亦是如此;而語句
case,U,:vl+=l;只有在讀入的字母
是匕'、Q、E、T、T、4、'O'、3、P'時才會執(zhí)行。
23、以下關(guān)于C語言數(shù)據(jù)類型的敘述中正確的是()。
A、C基本數(shù)據(jù)類型包括:分為整型、實型、浮點型、字符型四種
B、實型常量的表達方式包括十進制形式、十六進制形式、二進制形式、八進制形
式、指數(shù)形式
C、若要處理如“人員信息”等含有不同類型的相關(guān)數(shù)據(jù),應(yīng)自定義結(jié)構(gòu)體類型
D、若只處理“真”和“假”兩種邏輯值,應(yīng)使用邏輯類型
標準答案:C
知識點。析:C基本數(shù)據(jù)類型包括:分為整型、實型、枚舉型、字符型四種,實型
就是浮點型,實型數(shù)據(jù)只有十進制,沒有2,8,16進制表達,在C語言中沒有定
義邏輯類型,而是一般用0代表假,用非零代表真。
24、有下列程序:#include<stdio.h>main(){charcl,c2,c3,c4,c5,c6;
scanf("%c%c%c%c",&cl,&c2,&c3,&c4);c5=getchar();c6=getchar();
putchar(cl);putchar(c2);printf("%c%c\n",c5,c6);}程序運行后,若從鍵盤輸入(從
第1列開始):123<CR>45678<CR>則輸出結(jié)果是(
A、1267
B、1256
C、1278
D、1245
標準答案:D
知識點解析:當(dāng)用scanf函數(shù)從鍵盤輸入數(shù)據(jù)時,每行數(shù)據(jù)的末尾按下回車鍵
(Enter鍵)之前,可以任意修改。但按下回車鍵putchar(cl)(Enter鍵)之后,scanf函
數(shù)即接受了這一行數(shù)據(jù),不能再回去修改。所以本題中,當(dāng)輸入I23VCR〉時,
變量cl、c2、c3的值分別為1、2、3,當(dāng)輸入45678VCR〉時,變量c5、c6的值
4和5。所以用輸出函數(shù)putchar(cl)輸出1,putchar(c2)輸出2,
primf("%c%c\n”,c5,c6)輸出45。所以選項D)為正確答案。
25、已知大寫字母A的ASCH碼是65,小寫字母a的ASCII碼是97。下列不能將
變量c中的大寫字母轉(zhuǎn)換為對應(yīng)小寫字母的語句是()。
A、c=(c-'A')%26+'a'
c=c+32
C、c=c?'A'+'a'
D、c=('A'+C)%26-'a,
標準答案:D
知識點解析:由題意可知,小寫字符a和大寫字符A的ASCH代碼相差為32,所
以選項C)能將大寫字符c的ASCII代碼轉(zhuǎn)換為小寫字符c的ASCII代碼;選項A)
和C)左側(cè)的表達式都是大寫字符c與大寫字符A的差與3的ASCII代碼的和就是
小寫字符c的ASCH代碼。而選項D)中應(yīng)該是加上而不是減去匕\
26、下列選項中錯誤的說明語句是
A、chara[]={,t,/oVy7oVu7\0,};
B、charaU={"toyou\0"};
C、chara[]="toyou\0";
D、chara[]='toyou\0';
標準答案:D
知識點解析:通過賦初值的方式給一維數(shù)組賦字符串,可以用給一般數(shù)組賦初值的
相同方式給一維字符數(shù)組賦字符串,也可以在賦值時直接賦字符串常量。選項B)和
C)后面的、(T是多余的,在C語言中,系統(tǒng)會自動在字符串的結(jié)尾處加上一個字符、(T
作為串的結(jié)束標記。
27、需求分析階段的任務(wù)是確定_____o
A、軟件開發(fā)方法
B、軟件開發(fā)工具
C、軟件開發(fā)費用
D、軟件系統(tǒng)功能
標準答案:D
知識點解析:暫無解析
28、有以下程序:#include<stdio.h>main(){unsignedinta;intb=-l;a=b;
printf("%u”,a);程序運行后的輸出結(jié)果是()。
A、-1
B、65535
C、32767
D、-32768
標準答案:2
知識點0析:不同類型的對象進行混合運算時,需要進行數(shù)據(jù)的類型轉(zhuǎn)換,其轉(zhuǎn)換
方向為int—>unsigned—>long—>doublc<,本題程序中的變量b為int型,需要轉(zhuǎn)換為
unsigned型。ini型變量的數(shù)值范圍為?32768?32767,最高位為符號位,而
unsigned所表示的數(shù)的范圍為0~65535,它的最高位為數(shù)值位。由于內(nèi)存中是以
補碼形式存儲數(shù)據(jù)的,所以整型數(shù)-1在內(nèi)存中表示為16個1,最高位的1表示符
號為負,將它轉(zhuǎn)換為unsigned類型,即將原符號位的1看成數(shù)值,所以得到16個
數(shù)值1,即65535。
29、在int(*prt)[3];定義中,標識符prt().
A、定義不合法
B、是一個指針數(shù)組名,每個元素都是一個指向整型變量的指針
C、是一個指針,它指向一個具有三個元素的一維數(shù)組
D、是一個指向整型變量的指針
標準答案:4
知識點解析:此題的關(guān)鍵是要分清指針數(shù)組與指向一維數(shù)組指針之間的不同,題中
的說明語句定義了一個由針變量prl,它指向包含三個整數(shù)元素的一維數(shù)組。要注
意:*prt兩側(cè)的圓括號不能缺少,如果寫成*ptr[3],則ptr與⑶先結(jié)合,是數(shù)組,
然后再與前面的。號結(jié)合,則*ptr[3]將是一個指針數(shù)組。
30、有以下程序:main(){char*p[]={"3697","2584"};inti,j;longnum=0;for(i=0;i<
2;i++){j=0;while(p[i][j]!=,\0,){if((p[il[j]-,0,)%2)num=10*num+p[i][j]->0*;j+=2;}
printf("%d\n",num);}程序執(zhí)行啟鬲輸出結(jié)果是()0
A、35
B、37
C、39
D、3975
標準答案:4
知識點解析:本題首先定義了一個字符指針數(shù)組p,然后使用一個兩重循環(huán)遍歷數(shù)
組p.因為內(nèi)循環(huán)的循環(huán)變量j每次會加2,所以只能遍歷到數(shù)組p每行中列下標
為偶數(shù)的字符,它們是‘3,,夕、然后,將它們通過表達式轉(zhuǎn)換
為對應(yīng)的整數(shù)3、9、2、8,并用%2來判斷該整數(shù)是否為奇數(shù)。所以最終能執(zhí)行到
num=10*num+語句的只有,3,和,歹兩個字符。此時已不難算出,運行后
num中的值為39。故應(yīng)該選擇C。
31、若輸入000051,卜列程序的運行結(jié)果為omain(){unsignedinta;
scanf("%o",&a);printf(H%o\n",getbits(a));}getbits(value)unsignedintvalue:
{inti,j,m,n;unsignedintz,a,q;z=0;for(i=1;i<=15;i+=2){q=l;
for(j=I;j<=(16-i-l)/2;j++)q=q*2;a=value>>(l6-i);a=a<<15;a=a>>
15;z=z+a*q;}return(z);}
A、6
B、51
C、51
D、10
標準答案:1
知識點解析:暫無解析
32、下列說法中,不正確的是。
A、主函數(shù)main中定義的變量在整個文件或程序中有效
B、不同函數(shù)中,可以使用相同名字的變量
C、形式參數(shù)是局部變量
D、在函數(shù)內(nèi)部,可在復(fù)合語句中定義變量,這些變量只在本復(fù)合語句中有效
標準答案:1
知識點解析:暫無解析
33、若i和j已定義為int類型,則以下程序段中內(nèi)循環(huán)體總的執(zhí)行次數(shù)是o
for(i=5;i;i—)for(j=0;j<5;j++){...}
A、20
B、25
C、24
D、30
標準答案:2
知識點解析:對于第一個for語句.i從5至1,且對于第二個for語句.在i取5
至1的某個值時,j又從0變化至5。
34、有以下程序main。{char*s="abcde";s+=2;printf("%ld\nn,s);}程序運行
后的輸出結(jié)果是()
A、cde
B、字符c的ASCII碼值
C、字符c的地址
D、出錯
標準答案:4
知識點解析:暫無解析
35、若有下面的說明和定義,則sizeof(structaa)的值是structaa{intredouble
r2;floatr3;unionuu{charul[5];longu2[2])ua;)mya;
A、30
B、29
C、24
D、22
標準答案:8
知識點解析:結(jié)構(gòu)體變量所占內(nèi)存長度是各成員占的內(nèi)存長度之和,每個成員分別
占有自己的內(nèi)存單元;共用體變量所占的內(nèi)存長度等于最長的成員的長度。結(jié)構(gòu)體
變量aa中,成員rl占2個字節(jié),「2占8個字節(jié),「3占4個字節(jié),共用體ua占8個
字節(jié),所以共占用2+8+4+8=22個字節(jié)。
36、若有以下說明和定義:typcdetint1EGER;IN1EGERp,*q:以下敘述正確的
是()。
A、p是整型變量
B、p是基類型為整型的指針變量
C、q是基類型為整型的指針變量
D、程序中可用INTEGER代替int類型名
標準答案:2
知識點解析:本題中INTEGER被定義為im*的別名,故直接由它定義的類型基類
型為整型的指針變量。因此,p是基類型為int的指針變量,q是int型指針的指針
變顯。故4個選項中B正確。
37、若已定義的函數(shù)有返回值,則以下關(guān)于該函數(shù)調(diào)用敘述中錯誤的是
A、函數(shù)調(diào)用可以作為獨立的語句存在
B、函數(shù)調(diào)用可以作為一個函數(shù)的實參
C、函數(shù)調(diào)用可以出現(xiàn)在表達式中
D、函數(shù)調(diào)用可以作為一個函數(shù)的形參
標準答案:8
知識點解析:在c語言中規(guī)定,無返回值的函數(shù)調(diào)用,可以作為表達式或表達式的
一部分.也可以作為一條語句:而有返回值的函數(shù)調(diào)用只能作為一個函數(shù)的實參
(即將其返回值傳給相應(yīng)的形參),而不能作為形參(因為形參是在函數(shù)定義時說明
的)。
38、以下程序運行后的輸出結(jié)果是ointd=l:fun(intp){staticintd=5:
d+=p;printf(M%d">D);returnd;)main()(inta=3;printf("%d\n,fun(a+fun(D)));|
A、699
B、669
C、61515
D、6615
標準答案:4
知識點解析:靜態(tài)局部變量在編譯時賦初值,即只賦初值一次,在程序運行時它已
有初值。以后每次調(diào)用時不再重新賦初值而只是保留上次函數(shù)調(diào)用結(jié)束時的值,而
對自動變量賦初值,不是在編譯時進行的,而在函數(shù)調(diào)用時進行,每調(diào)用一次函數(shù)
重新給一次初值,相當(dāng)于執(zhí)行一次賦值語句。本題在程序開頭定義了全局變量d并
賦初值1,在被調(diào)函數(shù)fun()中,定義了靜態(tài)局部變量d,初值為5。在第一次調(diào)用
函數(shù)fun時,d初值為5,p由主函數(shù)傳遞過來的值為1,則d=d+p=5+l=6,由于d
是靜態(tài)局部變量,在函數(shù)調(diào)用結(jié)束后,它仍保留d=6。再次調(diào)用fun函數(shù),d的初
值為6,而由主函數(shù)傳遞的p的值為9,則此時d=d
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- cad技術(shù)與實踐考試試題及答案
- c 編程面試試題及答案
- b1科4模擬考試試題及答案
- ae影視后期考試試題及答案
- a2扣分考試試題及答案
- a1駕照從業(yè)資格證考試試題及答案
- 外嚙合齒輪泵端面間隙混合潤滑特性研究
- 2025幼兒結(jié)構(gòu)化面試試題及答案
- 合肥市城鎮(zhèn)老年人健康適能影響因素模型構(gòu)建研究
- 2025土建施工員考試試題及答案
- 安徽省部分高中2025屆高考生物四模試卷含解析
- 2025-2030全球及中國燃氣輪機服務(wù)行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 初中學(xué)生安全教育課件
- 項目平行分包協(xié)議書范本
- 讓空氣更清新(教學(xué)課件)五年級科學(xué)下冊(青島版)
- 2025-2030自愿碳信用交易行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 輪式拖拉機的設(shè)計計算書
- 2025年中國辦公椅數(shù)據(jù)監(jiān)測研究報告
- 自動駕駛車輛的遠程監(jiān)控與維護系統(tǒng)-全面剖析
- 排他協(xié)議合同協(xié)議
- 物聯(lián)網(wǎng)工程技術(shù)考研真題卷100道及答案
評論
0/150
提交評論