- 相關(guān)推薦
2017計算機二級C語言基礎(chǔ)訓(xùn)練及答案
想提高計算機等級考試成績平時就要多做練習(xí),積累做題方法和技巧,提高做題速度。以下是小編為大家整理的2017計算機二級C語言基礎(chǔ)訓(xùn)練及答案,希望對大家的復(fù)習(xí)有所幫助!
1.按照“先進后出”原則組織數(shù)據(jù)的結(jié)構(gòu)是( )。
A.隊列
B.棧
C.雙向鏈表
D.二叉樹
2.下列選項中不屬于軟件生命周期開發(fā)階段任務(wù)的是( )。
A.軟件測試
B.概要設(shè)計
C.軟件維護
D.詳細設(shè)計
3.設(shè)在C語言中,float類型數(shù)據(jù)占4個字節(jié),則double 類型數(shù)據(jù)占( )個字節(jié)。
A.1
B.2
C.8
D.4
4.如果進棧序列為el、e2、e3、e4,則可能的出棧序列是( )。
A.e3、el、e4、e2
B.e2、e4、e3、el
C.e3、e4、e2
D.任意順序
5.數(shù)據(jù)庫管理系統(tǒng)DBMS中用來定義模式、內(nèi)模式和外模式的語言為( )。
A.C
B.Basic
C.DDL
D.DML
6.以三級模式為框架形成的3種數(shù)據(jù)庫中,真實存在于計算機外存的數(shù)據(jù)庫是( )。
A.概念數(shù)據(jù)庫
B.用戶數(shù)據(jù)庫
C.物理數(shù)據(jù)庫
D.邏輯數(shù)據(jù)庫
7.一些重要的程序設(shè)計語言(in C語言和Pascal語言) 允許過程的遞歸調(diào)用,而實現(xiàn)遞歸調(diào)用中的存儲分配通常用( )。
A.棧
B.堆
C.數(shù)組
D.鏈表
8.下列敘述中正確的是( )。
A.軟件測試應(yīng)該由程序開發(fā)者來完成
B.程序經(jīng)調(diào)試后一般不需要測試
C.軟件維護只包括對程序代碼的維護
D.以上三種說法都不對
9.有下列程序:
main()
{ int y=10;
do{y--;}while(--y);
printf("%d ",--y);
)
當執(zhí)行程序時,輸出的結(jié)果是( )。
A.-1
B.1
C.4
D.0
10.表達式’5’-’1’的值是( )。
A.整數(shù)4
B.字符4
c.表達式不合法
D.字符6
11.下列函數(shù)的類型是( )。
fun(double x)
{ float y;
y=3*x-4:
return y;
}
A.int
B.不確定
C.void
D.float
12.下列程序的運行結(jié)果是( )。
int y=5,x=14;
y=((x=3*Y,x+1),x-1);
printf("x=%d,y=%d",x,y);
A.x=27,y=27
B.x=12,y=13
C.x=15,y=14
D.x=y=27
13.若有下列定義和語句:
int u=011,v=0x11,w=11;
printf("%o,%x,%d ",u,v,w);
則輸出結(jié)果是( )。
A.9,17,11
B.9,11,11
C.11,11,11
D.11,17,11
14.若有下列定義(設(shè)int類型變量占2個字節(jié)):
int i=8,j=9;
則下列語句:
printf("i=%%d,j=%%d ",i,j);
輸出的結(jié)果是( )。
A.i=8,j=9
B.i=%d,j=%d
C.i=%8,j=%9
D.8,9
15.下列程序的輸出的結(jié)果是( )。
main()
{ double d=3.2;int x,Y;
x=1.2;v=(x+3.8)/5.0;
printf("%d ",d*y);
}
A.3
B.3.2
C.0
D.3.07
16.設(shè)“int x=2,y=1;”,則表達式(!x|| Y--)的值是( )。
A.0
B.1
C.2
D.-1
17.設(shè)有以下語句:
int a=1,b=2,c;
c=a^(b<<2);
執(zhí)行后,c的值為( )。
A.6
B.7
C.8
D.9
18.下列程序執(zhí)行后的輸出結(jié)果是( )。
void func(int*a,int b[])
{ b[0]=*a+b;}
main()
{ int a,b[5];
a=0.b[0]=3;
func(&a,b);printf("%d ",b[0]);
}
A.6
B.7
C.8
D.9
19.有以下程序:
main()
{ int i,j,x=0;
for(i=0;i<2;i++)
{ x++;
for(j=0;j<=3;j++)
{if(j=0;j<=3;j++)
x++;
}
x++;
}
printf("x=%d ",x);
}
程序執(zhí)行后的輸出結(jié)果是( )。
A.x=4
B.x=8
C.x=6
D.x=12
20.若有以下程序段,w和k都是整型變量:
┇
w=k:
LB:if(w==0)go to LE;
W--:
printf("*")
goto LB;
LE;
┇
則不能與上面程序段等價的循環(huán)語句是( )。
A.for(w=k;w!=0;w--)printf("*");
B.for(w=k;w;--w)printf("*");
C.w=k;
while(w--!=0)printf("*");
D.w=k:
w++;do{w--;printf("*");}while(w!=0);
21.下列程序執(zhí)行后的輸出結(jié)果是( )。
main()
{ char x=0xFFFF;printf("%d ",x--);}
A.-32767
B.FFFE
C.1
D.32768
22.下面的函數(shù)調(diào)用語句中func函數(shù)的實參個數(shù)是( )。
func((f2v1,v2),(v3,v4,v5),(v6,max(v7,v8)))
A.3
B.4
C.5
D.8
23.語句“printf("akbre"’hi’you ")”;的輸出結(jié)果是( )。
A.akbre’hi’y ’ou
B.are’hiyou
C.re ’hi’you
D.abre’hi’you
24.下面程序輸出的是( )。
main()
{ int t=l;fun(fun(t));}
fun(int h)
{ static int a[3]={1.2.3};
int k;
for(k=0;k<3;k++)a[k]+=a[k]-h;
for(k=0;k<3;k++)printf("%d",a[k]);
printf(" ");
return(a[h]);}
A.1,2,3,
1,5,9,
B.1,3,5,
1,3,j,
C.1,3,5,
0,4,8,
D.1,3。5,
-1,3,7,
25.以下敘述中正確的是( )。
A.預(yù)處理命令行必須位于C源程序的起始位置
B.在C語言中,預(yù)處理命令行都以“#”開頭
c.每個C程序必須在開頭包含預(yù)處理命令行:#include
D.C語言的預(yù)處理不能實現(xiàn)宏定義和條件編譯的功能
選擇題答案與解析
1.B!窘馕觥織J蔷性表的一種,其插入和刪除運算都只在表的一端進行。進行插入、刪除的一端稱為棧頂,封閉的一端稱為棧底。棧頂元素是最后插入的元素,不是最后被刪除的元素,是按先進后出的原則組織數(shù)據(jù)的。
2.C!窘馕觥寇浖x、軟件開發(fā)、軟件運行維護組成了軟件的生命周期。其中軟件定義階段的主要工作是可行性研究與計劃制訂和需求分析等;軟件開發(fā)階段的主要工作有概要設(shè)計、詳細設(shè)計和測試等;運行維護階段的主要工作是軟件的運行及后期的維護等。
3.C。【解析】在C語言中各種數(shù)據(jù)類型在內(nèi)存中所占的字節(jié)數(shù)與機器的位數(shù)有關(guān),16位機中(也就是在標準c 中),若int類型數(shù)據(jù)占2個字節(jié),則float類型數(shù)據(jù)占4個字節(jié),double類型數(shù)據(jù)占8個字節(jié)。
4.B。【解析】棧的特點是先進后出,可知el肯定是最后出棧的,因此正確答案為選項B。
5.C。【解析】數(shù)據(jù)定義語言Data Definition Language
(DDL)是SQL語言的一部分,用來定義模式、內(nèi)模式和外
模式。
6.B!窘馕觥竣僖詢(nèi)模式為框架所組成的數(shù)據(jù)庫,1物理數(shù)據(jù)庫;②以概念模式為框架所組成的數(shù)據(jù)庫叫概念數(shù)據(jù)庫;③以外模式為框架所組成的數(shù)據(jù)庫叫用戶數(shù)據(jù)庫。它是真實存在于計算機外存中的數(shù)據(jù)庫。
7.A。【解析】在允許過程的遞歸調(diào)用的程序設(shè)計語言中,由于C語言中棧的特性為先進后出,因此用棧來實現(xiàn)遞歸調(diào)用中的存儲分配。
8.D!窘馕觥砍绦蛘{(diào)試是由程序開發(fā)者完成診斷和改正程序中的錯誤的過程;軟件測試是由專門的測試人員完成,是發(fā)現(xiàn)錯誤而執(zhí)行程序的過程;軟件維護是指軟件系統(tǒng)交付使用以后,為了改正錯誤或滿足新的需要而修改軟件的過程,是軟件生存周期中非常重要的一個階段。
9.D。【解析】本題考查do-while循環(huán)。當--y是0(即y是o)時結(jié)束循環(huán),輸出--y,先將y的值減1再輸出Y的值。
10.A!窘馕觥吭赾語言中,字符都是變?yōu)槠鋵?yīng)的ASCII碼值來參加算術(shù)運算的,但字符間的相對位置關(guān)系還是不變的,字符5和字符1的ASCII碼值相差仍是4。
11.A!窘馕觥勘绢}考查函數(shù)值的類型。在函數(shù)調(diào)用時,盡管Y的類型是float.x的類型是double,但是因為函數(shù)定義時沒有指定類型說明,系統(tǒng)默認函數(shù)值的類型為int 型,所以計算后Y的類型是int型。
12.C!窘馕觥慷禾柋磉_式的解題思路是從左到右,依次求解,整個逗號表達式的值就是最后一個表達式的值。
表達式(x=3*y,x_+ 1)中,依次是x=3*y=3*5= 15,表達式x+1=16,但沒有給x或y賦值,所以x還是等于15;第3個表達式x-1=15-1=14,所以y的值為14。
13.C。【解析】“%o”表示八進制無符號型輸出整型數(shù)據(jù)(即不帶前導(dǎo)O);“%x”是示以十六進制無符號型輸出整型數(shù)據(jù)(即不帶前導(dǎo)ox或OX);“%d”表示輸出帶符號的十進制整型數(shù)。
14.B!窘馕觥勘绢}考查函數(shù)的輸出格式。在printf函數(shù),格式說明符中有兩個“%”說明;將第1個%后面的字符原樣輸出,并不輸出其對應(yīng)r的變量值。
15.C!窘馕觥扛鶕(jù)賦值運算的類型轉(zhuǎn)換規(guī)則,先將double型的常量l.2轉(zhuǎn)換為int型,因為x的類型是int,則X的值為1;執(zhí)行語句y=(K+3.8)/5.0時,即先將整型變量X的值1轉(zhuǎn)換為double型1.0,然后3.8相加得4.8,進行除法運算4.8/5.0結(jié)果為0.即變量y的值為0,d*Y的值也為0,故選C選項。
16.B!窘馕觥恳騒為2,所以!X時表達式值為0,因Y 為1,y--表達式的值為1然后自減1,y為0,所以!x || y --時表達式的值為1。
17.D!窘馕觥勘绢}考查兩個知識點,按位異或左移把b 左移2位化成二進制c=a(b<<2)=a^(000010<<2)= a^001000=0000001^O01000=9,故選擇D。
18.A!窘馕觥勘绢}考查函數(shù)的調(diào)用,從主函數(shù)傳遞到調(diào)用函數(shù)中,*a的值為0,因此當執(zhí)行完調(diào)用函數(shù)后,b[0] 的值為6。
19.B。【解析】當i=0時,i<2成立,執(zhí)行第一個for循環(huán)x自加為1,接著執(zhí)行第二個for循環(huán);j=0時j<=3成立,此時if不成立,執(zhí)行x++后,x為2;接著j=1時,i<= 3成立,繼續(xù)循環(huán),此時if成立,continue是跳出本次循環(huán),繼續(xù)下一次循環(huán),不再執(zhí)行x++了;接著j=2時,j<=3成立,此時if不成立,執(zhí)行其后的語句;當j=4時,退出第二個循環(huán),接著執(zhí)行循環(huán)外部的x++,x為4;當i=1時,i<2成立,執(zhí)行第一個循環(huán),x=5,此時接著執(zhí)行循環(huán)外部的語句,即第二個循環(huán);j=0時j<3成立,此時if不成立,x++后,x 為6,接著j為1時,j<=3成立,繼續(xù)循環(huán),此時if成立,不再執(zhí)行x++了;接著J=2時,j<=3成立,此時if不成立,執(zhí)行其后的x++,x為7;i=3時,j<=3成立,此時if成立,不再執(zhí)行其后的語句了;當j=4時,退出第二個循環(huán),執(zhí)行循環(huán)外部的語句,最終x為8,故選B選項。
21.C!窘馕觥恳驗閤=0x FFFF=11111111,因此當以整型形式輸出時對應(yīng)的數(shù)為一1。
22.A!窘馕觥繉崊⑹窃谡{(diào)用時傳遞該函數(shù)的參數(shù)。故選A。
23.C!窘馕觥肯容敵鯽、b表示退一格,當執(zhí)行到:后,光標往后退,接著輸出re ’hi ’y(反斜杠后又加一個反斜杠的意思是要輸出一個反斜杠),此時又執(zhí)行:后,就被ou覆蓋。
24.D!窘馕觥勘绢}考查雙重函數(shù)調(diào)用及for循環(huán)使用,fun函數(shù)中第一個for循環(huán)語句的作用是給數(shù)組a賦值。當?shù)谝淮握{(diào)用fun函數(shù)時,把實參1傳給形參,輸出a數(shù)組的元素為1,3,5;第二次調(diào)用fun函數(shù)時,由于數(shù)組a為靜態(tài)局部變量,故輸出a數(shù)組的元素為一1,3,7。
25.B!窘馕鰈本題是對基本知識點的理解,預(yù)處理命令行的位置沒有規(guī)定,只是習(xí)慣寫在起始位置而已,當需要時才用#include頭文件,預(yù)處理的作用就是實現(xiàn)宏定義和條件編譯。
【計算機二級C語言基礎(chǔ)訓(xùn)練及答案】相關(guān)文章:
計算機二級C語言模擬試題及答案12-08
計算機二級《C語言》試題及答案201611-21
計算機二級C語言歷年真題及答案05-29
計算機二級備考習(xí)題及答案(C語言)201703-22
計算機二級C++C++語言概述03-30