點擊查看:2018年12月計算機二級C語言考試強化提分試題匯總
1、以下語句的輸出結(jié)果是( )。
int a=-1,b=4,k;
k=(+ +a<0)&&!(b - -<=0);
printf("%d,%d,%d\n",k,a,b);
A. 1,0,4
B. 1,0,3
C. 0,0,3
D. 0,0,4
2、下列程序的輸出結(jié)果是( )。
char *p1="abcd", *p2="ABCD", str[50]="xyz";
strcpy(str+2,strcat(p1+2,p2+1));
printf("%s",str);
A. xyabcAB
B. abcABz
C. ABabcz
D. xycdBCD
3、執(zhí)行下面的程序后,a的值是( )。
#define SQR(X) X*X
main( )
{ int a=10,k=2,m=1;
a/=SQR(k+m)/SQR(k+m);
printf("%d\n",a); }
A. 10
B. 1
C. 9
D. 0
4、設(shè)A為存放(短)整型的一維數(shù)組,如果A的首地址為P,那么A中第i 個元素的地址為( )。
A.P+i*2
B. P+(i-1)*2
來源:考試大
C. P+(i-1)
D. P+i
5、下列程序執(zhí)行后輸出的結(jié)果是( )。
int d=1;
fun (int p)
{ int d=5;
d + =p + +;
printf("%d,",d); }
main( )
{ int a=3;
fun(a);
d + = a + +;
printf("%d\n",d); }
A. 8, 4
B. 9, 6
C. 9, 4
D. 8, 5
6、表達式:10!=9的值是( )。
A. true
B. 非零值
C. 0
D. 1
7、若有說明: int i,j=7, *p=&i;, 則與i=j; 等價的語句是( )。
A. i= *p;
B. *p=*&j;
C. i=&j;
D. i=* *p;
8、不能把字符串:Hello!賦給數(shù)組b的語句是( )。
A. char b[10]={’H’,’e’,’l’,’l’,’o’,’!’};
B. char b[10]; b="Hello!";
C. char b[10]; strcpy(b,"Hello!");
D.char b[10]="Hello!";
9、在C程序中有如下語句:char *func(int x,int y); 它是( )。
A. 對函數(shù)func的定義。
B. 對函數(shù)func的調(diào)用。
C.對函數(shù)func的原型說明。
D. 不合法的。
10、以下程序的輸出結(jié)果是( )。
char str[15]=”hello!”;
printf(“%d\n”,strlen(str));
A. 15
B. 14
C. 7
D. 6
參考答案:1、D 2、D 3、B 4、B 5、A 6、D 7、B 8、B 9、C 10、D
11[單選題] 如果定義
float a[10],x;
則以下敘述中正確的是
A.語句a=&x;是非法的B.表達式a+1是非法的C.三個表達式a[1]、*(a+1)、*&a[1]表示的意思完全不同D.表達式,&a[1]是非法的,應(yīng)該寫成+(&(a[1]))
參考答案:A
參考解析:B選項中,表達式a+1不是非法的;C選項中,*(a+1)即指a[1];D選項中,*&a[1]不是非法的。因此A選項正確。
12[單選題] 以下敘述中正確的是( )
A.'\0'表示字符O
B."a"表示一個字符常量
C.表達式:'a'>'b'的結(jié)果是”假”
D.'\"'是非法的
參考答案:C
參考解析:A選項中,'\0'表示結(jié)束;B選項中,字符常量是用單引號括起來的一個字符;D選項中,'\"'是雙引號符。因此C選項正確。
13[單選題] 下列關(guān)于數(shù)據(jù)庫設(shè)計的敘述中,正確的是( )。
A.在需求分析階段建立數(shù)據(jù)字典
B.在概念設(shè)計階段建立數(shù)據(jù)字典
C.在邏輯設(shè)計階段建立數(shù)據(jù)字典
D.在物理設(shè)計階段建立數(shù)據(jù)字典
參考答案:A
參考解析:數(shù)據(jù)字典是在需求分析階段建立,在數(shù)據(jù)庫設(shè)計過程中不斷修改、充實和完善的。
14[單選題] 軟件設(shè)計中劃分模塊的一個準則是( )。
A.低內(nèi)聚低耦合B.高內(nèi)聚低耦合C.低內(nèi)聚高耦合D.高內(nèi)聚高耦臺
參考答案:B
參考解析:一般較優(yōu)秀的軟件設(shè)計,應(yīng)盡量做到高內(nèi)聚,低耦合,即減弱模塊之間的耦合性和提高模塊內(nèi)的內(nèi)聚性,有利于提高模塊的獨立性。
15[單選題] 在一個C源程序文件中所定義的全局變量,其作用域為( )。
A.由具體定義位置和extem說明來決定范圍
B.所在程序的全部范圍
C.所在函數(shù)的全部范圍
D.所在文件的全部范圍
參考答案:A
參考解析:全局變量的作用域是從聲明處到文件的結(jié)束。所以選擇A)。
16[單選題] 若有C語言表達式2+3*4+7/3,以下選項中敘述正確的執(zhí)行順序是
A.先執(zhí)行3*4得12,再執(zhí)行2+12得14,再執(zhí)行7/3得2,最后執(zhí)行14+2得16
B.先執(zhí)行3*4得12,再執(zhí)行7/3得2.5,最后執(zhí)行2+12+2.5得16.5
C.先執(zhí)行7/3得2,再執(zhí)行3*4得12,再執(zhí)行12+2得l4,最后執(zhí)行2+14得l6
D.先執(zhí)行2+3得5,再執(zhí)行5*4得20,再執(zhí)行20+7得27,最后執(zhí)行27/3得9
參考答案:A
參考解析:首先,在c語言中,乘除法優(yōu)先級要高于加減法,其次,除法運算符"/"兩邊參加運算對象都是整數(shù),運算結(jié)果要取整,故排除B,D選項;C語言中。因為“*”和“/”都滿足從左到右的運算規(guī)則,故應(yīng)先計算3*4=12。因此c排除,答案為A選項。
17[單選題] 以下敘述中正確的是( )。
A.c語言規(guī)定必須用main作為主函數(shù)名,程序?qū)拇碎_始執(zhí)行
B.可以在程序中由用戶指定任意一個函數(shù)作為主函數(shù),程序?qū)拇碎_始執(zhí)行
C.c語言程序?qū)脑闯绦蛑械谝粋函數(shù)開始執(zhí)行、
D.main的各種大小寫拼寫形式都可以作為主函數(shù)名,如MAIN,Main等
參考答案:A
參考解析:C語言中的主函數(shù)只能是main()函數(shù),不能任意指定,所以B選項錯誤。C語言從主函數(shù)main()開始,到主函數(shù)main()結(jié)束,所以C選項錯誤。主函數(shù)必須寫成小寫的main,不能混淆大小寫,所以D選項錯誤。
18[單選題] 設(shè)變量已正確定義并賦值,以下正確的表達式是( )。
A.X=Y+z+5,++YB.int(15.8%5)C.X=Y*5=X+ZD.X=25%5.0
參考答案:A
參考解析:B與D選項中取模運算符%的左右兩個操作數(shù)均應(yīng)為整數(shù),所以B、D錯誤。c選項中不能將X+Y的值賦給表達式Y(jié)*5,所以c錯誤。
19[單選題] 設(shè)文件指針fp已定義,執(zhí)行語句fp=fopen(”61e”,”W”);后,以下針對文本文件file操作敘述的選項中正確的是( )。
A.只能寫不能讀
B.寫操作結(jié)束后可以從頭開始讀
C.可以在原有內(nèi)容后追加寫
D.可以隨意讀和寫
參考答案:A
參考解析:考查文件操作函數(shù)fopen的基礎(chǔ)知識, 以”W”方式打開文件,只能寫不能讀。選項A正確。
20[單選題] 設(shè)Z.X樹中共有31個結(jié)點,其中的結(jié)點值互不相同。如果該二叉樹的后序序列與中序序列相同,該二叉樹的深度為( )。
A.31B.16C.17D.5
參考答案:A
參考解析:二叉樹遍歷可以分為3種:黃序遍歷(訪問根結(jié)點在訪問左子樹和訪問右子樹之前)、中序童歷(訪問根結(jié)點在訪問左子樹和訪問右子樹兩者之問)、后序童歷(訪問根結(jié)點在訪問左子樹和訪問右子樹之后)。由結(jié)點售互不相同而后序序列與中序序列相同,可知該二叉樹所有的結(jié)點都沒有右子樹,所以31個結(jié)點的二叉樹深度為31:故選A選項。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關(guān)推薦:
2018年全國計算機等級考試復(fù)習(xí)知識點匯總(各科目)
2018全國計算機等級考試備考經(jīng)驗及應(yīng)試技巧匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |