- 相關(guān)推薦
2014年計(jì)算機(jī)二級(jí)考試C語言模擬題(1)
選擇題
1.棧和隊(duì)列的共同特點(diǎn)是( )。
A.都是先進(jìn)先出
B.都是先進(jìn)后出
c.只允許在端點(diǎn)處插入和刪除元素
D.沒有共同點(diǎn)
2.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指( )。
A.數(shù)據(jù)所占的存儲(chǔ)空間
B.數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的存放形式
C.數(shù)據(jù)在計(jì)算機(jī)中的順序存儲(chǔ)方式
D.存儲(chǔ)在計(jì)算機(jī)外存中的數(shù)據(jù)
3.關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)能實(shí)現(xiàn)的專門關(guān)系運(yùn)算包括( )。
A.排序、索引、統(tǒng)計(jì)
B.選擇、投影、連接
C.關(guān)聯(lián)、更新、排序
D.顯示、打印、制表
4.已知二叉樹后序遍歷序列是dabec,中序遍歷序列是debac,它的前序遍歷序列是( )。
A.ached
B.decab
C.deabe
D.cedba
5.在單鏈表中,增加頭結(jié)點(diǎn)的目的是( )。
A.方便運(yùn)算的實(shí)現(xiàn)
B.使單鏈表至少有一個(gè)結(jié)點(diǎn)
c.標(biāo)識(shí)表結(jié)點(diǎn)中首結(jié)點(diǎn)的位置
D.說明單鏈表是線性的鏈?zhǔn)酱鎯?chǔ)實(shí)現(xiàn)
6.設(shè)有二元關(guān)系R和三元關(guān)系s,下列運(yùn)算合法的是( )。
A.R∩S
B.R∪S
C.R-S
D.R×S
7.兩個(gè)或兩個(gè)以上模塊之間聯(lián)系的緊密程度稱為( )。
A.耦合性
B.內(nèi)聚性
c.復(fù)雜性
D.數(shù)據(jù)傳輸特性
8.設(shè)a=l,b=2,c=3,d=4,則表達(dá)式:“a A.4
B.3
C.2
D.1
9.若有定義:“int a=4,b=5;float x=3.4,y=2.1;”,則下列表達(dá)式的值為( )。
(float)(a+b)/2+(int)x%(int)y;
A.5.5
B.55
C.5.500000
D.55.00000
10.下列程序的輸出結(jié)果是( )。
main()
{ int a,b,d=25;
a=d/10%9;
b=a&&(一1);
printf("%d,%d\n",a,b);}
A.6,1
B.2,1
C.6,0
D.2,0
11.以下敘述中不正確的是( )。
A.在不同的函數(shù)中可以使用相同名字的變量
B.函數(shù)中的形式參數(shù)是局部變量
C.在一個(gè)函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效
D.在一個(gè)函數(shù)內(nèi)的復(fù)合語句中定義的變量在本函數(shù)范圍內(nèi)有效
12.以下能正確定義二維數(shù)組的是( )。
A.int a[][3];
B.int a[][3]={2*3);
C.int a[][3]={};
D.int a[2][3]一{{1),{2},{3,4}};
13.下列程序的輸出結(jié)果是( )。
#include
main()
{ int a=3,b=2,C=1;
if(a if(b<0)c=0;
else c++:
printf("%d\n",c);
}
A.2
B.0
C.1
D.不確定的值
14.要求通過while循環(huán)不斷讀入字符,當(dāng)讀入字母N時(shí)結(jié)束循環(huán),若變量已正確定義,下列正確的程序段是( )。
A.while((ch—getchar())!=’N’)printf("%c",ch);
B.while(oh=getchar()!=’N’)printf("%C",ch);
C.while(ch=getchar()==’N’)printf("%c",ch);
D.while((ch—getchar())==’N’)printf("%c",ch);
15.下列說法不正確的是( )。
A.調(diào)用函數(shù)時(shí),實(shí)參可以是表達(dá)式
B.調(diào)用函數(shù)時(shí),實(shí)參與形參可以共用內(nèi)存單元
C.調(diào)用函數(shù)時(shí),將實(shí)參的值復(fù)制給形參,使實(shí)參變量和形參變量在數(shù)值上相等
D.調(diào)用函數(shù)時(shí),實(shí)參與形參的類型必須一致
16.下列選項(xiàng)中不是字符常量的是( )。
A.’\v’
B.’\x2a’
C.’a’
D."\0"
17.若已包括頭文件且已有定義char sl [18],s2={"ABCDE")和int i,現(xiàn)要將字符串”ABCDE”賦給sl,下列語句錯(cuò)誤的是( )。
A.strcpy(s1,s2)
B.strcpy(s1,"ABCDE");
C.sl="ABCDE";
D.for(i=0;i<6;i++)sl[i]=s2[i]
18.在位運(yùn)算中,操作數(shù)每左移兩位,其結(jié)果相當(dāng)于( )。
A.操作數(shù)乘以2
B.操作數(shù)除以2
c.操作數(shù)除以4
D.操作數(shù)乘以4
19.以下程序的輸出結(jié)果是( )。
main()
{ int a=7,b=8,*P,*q,*r;
p=&a;q=&b;
r=P;P=q;q=r;
printf("%d,%d,%d,%a\n",*P,*q,a,b);
}
A.8,7,8,7
B.7,8,7,8
C.8,7,7,8
D.7,8,8,7
20.有下列程序:
fun(int x,int y)
{ static int m=0,i=2;
i+=++rn;rfl—i+x+y;return m;
}
main()
{ int j=l,m=1,k;
k=fun(j,m);printf("%d,",k);
k=fun(j.m);printf(”%d\n”,k);
}
執(zhí)行后的輸出結(jié)果是( )。
A.5.5
B.5,11
C.11,11
D.11,5
21.下列程序的運(yùn)行結(jié)果為( )。
#include
main()
{struct date
{int year,month,day;
}today;
printf("%d\n",sizeof(struct date));
}
A.8
B.6
C.10
D.12
22.有以下程序:
#include<
struct stu
{ int num;
char name[10]:
int age;}
void fun(struct stu*p)
{printf("%s\n",(*p).name);}
tllain()
{
struct stu students[3]={{9801,"Zhang".20},
{9802,"Wang",19},{9803,"Zhao",1 8}}
fun(students+2);
}
輸出的結(jié)果是( )。
A.Zhang
B.Zhao
C.Wang
D.18
23.有以下程序:
viod fun(int a,int b,int C)
{ a=456:b=567;c=678;}
main()
{ int x=10,y=20,Z=30;
fun(x,y,z):
printf("%d,%d,%d\n",x,y,z);
}
輸出的結(jié)果是( )。
A.30,20,10
B.10,20,30
C.456,567,678
D.678,567,456
24.有以下結(jié)構(gòu)說明和變量定義,指針p、q、r分別指向鏈表中的3個(gè)連續(xù)結(jié)點(diǎn)。
struct node
{ int data;struct node*next;)*p,*q,*r;
現(xiàn)要將q所指結(jié)點(diǎn)從鏈表中刪除,同時(shí)要保持鏈表的連續(xù),以下不能按要求完成操作的語句是( )。
A.p->next=q->next;
B.P-next=P->next->next;
C.p->next=r;
D.p=q->next;
25.有定義:“int a=2,b=3,c=4;”,則下列選項(xiàng)中值為0的表達(dá)式是( )。
A.(!a==1)&&(!b==O)
B.(a C.a&&b
D.a||(b+b)&&(c-a)
26.設(shè)fun()函數(shù)的定義形式為
void fun(char ch,float x){…}
則下列對(duì)函數(shù)fun的調(diào)用語句中,正確的是( )。
A.fun("abc",3.0);
B.t=fun(’D’.16.5);
C.fun(’65’,2.8);
D.fun(32,32);
27.有下列程序:
main()
{ char p[]={’a’,’h’,’c’},q[]="a";
printf("%d%d\n".sizeof(P),sizeof(q));
}
程序運(yùn)行后的輸出結(jié)果是( )。
A.4 4
B.3 3
C.3 4
D.4 3
28.有下列程序:
main()
{ int k=5,n=0;
while(k>0)
{switch(k)
{dcfault:break;
case 1:n=n+k;
case 2:
case 3:n+=k;
}
k--;
}
printf("%d\n".n);
}
程序運(yùn)行后的輸出結(jié)果足( )。
A.0
B.4
C.6
D.7
29.有以下程序:
main()
{ int a[]=(2,4,6,8,10},y=0,x,*P;
p=&a[1];
for(x=1;x<3;x++) y+=p[x];
printf("%d\n,y");
}
程序運(yùn)行后的輸出結(jié)果是( )。
A.10
B.11
C.14
D.15
30.有下列程序:
void sort(int a[],int n)
{int i,j,t;
for(i=0;i for(j=i+1;j if(a[i] }
main()
{int aa[10]:{1,2,3,4,5,6,7,8,9,10),i;
sort(aa+2,5);
for(i=0;i<10;i++)printf("%d,",aa[i]);
printf("\n");
}
程序運(yùn)行后的輸出結(jié)果是( )。
A.1,2,3,4,5,6,7,8,9,l0,
B.1,2,7,6,3,4,5,8,9,10,
C.1,2,7,6,5,4,3,8,9,10,
D.1,2,9,8,7,6,5,4,3,10,
31.有以下程序:
#include
int abe(int u,int v);
main()
{ int a=24,b一16,c;
c=abc(a,b);
printf("%d\n",c);
}
int abc(int u,int v)
{ int w;
while(v)
{w=u%v;u=v;v=w;)
return;
}
輸出結(jié)果是( )。
A.6
B.7
C.8
D.9
32.下列程序的輸出結(jié)果是( )。
int fl(int x,int y){return x>y?x:y;)
int f2(int x,int y){return x>y?y:x;}
main()
{ int a=4,b=3,c=5,d=2,e,f,g;
e=f2(f1(a,b),f1(c,d));
f=f1(f2(a,b),f2(c,d));
g=a+b+c+d-e-f;
printf("%d,%d,%d\n",e,f,g);}
A.4,3,7
B.3,4,7
C.5,2,7
D.2,5,7
33.語句int(*ptr)()的含義是( )。
A.ptr是一個(gè)返回值為int的函數(shù)
B.ptr是指向int型數(shù)據(jù)的指針變量
C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)
D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int型數(shù)據(jù)的指針
34.下述程序的輸出結(jié)果是( )。
#include
main()
{ char chE2][5]一{”1234”,”5678”},*p[2];
int i,j,s=0;
for(i=0;i<2;i++)
p[i]=ch[i];
for(i=0;i<2;i++)
{s=p[i][j]一’0’;
printf("%d",s);}
}
A.6357
B.6135
C.1357
D.691357
35.下述程序的輸出結(jié)果是( )。
#include
main()
{ int a[2][3]={{1,2,3),{4,5,6}},(*p)[3],i;
p=a ;
for(i=0;i<3;i++)
{ if(i<2)
p[1][i]=p[1][i]一1;
else
p[1][i]=1;)
printf("%d\n",a[0][1]+a[1][1]+a[1][2]);}
A.8
B.7
C.12
D.9
36.若有以下說明,則( )不是對(duì)strcpy庫(kù)函數(shù)正確的調(diào)用。
strcpy庫(kù)函數(shù)用于復(fù)制一個(gè)字符串:char*strl="abcd",str2[10],*str3="hijklmn",*str4[2],*str5="aaaa";
A.strcpy(str2,strl)
B.strcpy(str3,strl)
C.strcpy(strl,str2)
D.strcpy(str5,strl)
37.執(zhí)行下述程序后,輸出的結(jié)果是( )。
#include
#define S(X)X*X
void main()
{int a=9,k=3,m=2;
a/=S(k+m)/s(k+m);
printf("%d",a);
}
A.1
B.4
C.9
D.0
38.已知有如下結(jié)構(gòu)體:
struct sk
{int a;
float b;
}data,*p;
若有P=&data,則對(duì)data的成員a引用正確的是( )。
A.(*p).data.a
B.(*p).a;
C.p->data.a
D.p.data.a
39.下述程序的輸出結(jié)果是( )。
#include
void main()
{int b[6]={2,4,6,8,10,12);
int*p=b,**q=&p;
printf("%d,",*(p++));
printf("%d,",**q);
}
A.4,4
B.2,2
C.4,5
D.2,4
40.以下程序的輸出結(jié)果是( )。
main()
{ int i,k,a[10],p[3];
k=5;
for(i=0:i<10;i++)a[i]=i;
for(i=0;i<3;i++)p[i]=a[i*(i+1)];
for(i=0;i<3;i++)k+=p[i]*2;
printf("%d\n",k、;
}
A.20
B.21
C.22
D.23
選擇題答案與解析
1.C!窘馕觥織J窍薅ㄖ辉诒砦策M(jìn)行插入或刪除操作的線性表,因此棧是先進(jìn)后出的線性表,隊(duì)列是一種特殊的線性表,它只允許在表的前端 (front)進(jìn)行刪除操作,在表的后端(rear)進(jìn)行插入操作,隊(duì)列具有先進(jìn)先出(FIFO)的特點(diǎn)。綜上所述可知,棧和隊(duì)列只允許在端點(diǎn)處插入和刪除元素。
2.B。【解析】數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu),又稱為數(shù)據(jù)的物理結(jié)構(gòu),是數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的存放形式。
3.B!窘馕觥筷P(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)的專門關(guān)系運(yùn)算包括選擇運(yùn)算、投影運(yùn)算和連接運(yùn)算。
4.D。【解析】二叉樹的遍歷有3種:前序、中序和后序。①前序遍歷訪問根結(jié)點(diǎn),然后按左右順序遍歷子結(jié)點(diǎn);②中序首先遍歷左子樹,然后訪問根結(jié)點(diǎn),最后遍歷右子樹;③后序遍歷首先遍歷左子樹,然后遍歷右子樹,最后訪問根結(jié)點(diǎn)。本題根據(jù)后序和中序遍歷的結(jié)果可以得出二叉樹的結(jié)構(gòu),然后再對(duì)其進(jìn)行前序遍歷,正確答案選項(xiàng)為D。
5.A!窘馕觥扛鶕(jù)單位鏈表(包含頭結(jié)點(diǎn))的結(jié)構(gòu),只要掌握了表頭,就能夠訪問整個(gè)鏈表,因此增加頭結(jié)點(diǎn)的目的是為了便于運(yùn)算的實(shí)現(xiàn)。
6.D!窘馕觥勘绢}給出的兩個(gè)關(guān)系R與S的表結(jié)構(gòu)是不同的(R是二元關(guān)系,S是三元關(guān)系),它們不能進(jìn)行∩、∪、一運(yùn)算。而兩個(gè)不同結(jié)構(gòu)的關(guān)系是可以進(jìn)行笛卡兒積(×)運(yùn)算的。
7.A!窘馕觥狂詈闲杂貌时硎灸K間互相連接的緊密程度的度量,它取決于各個(gè)模塊之間接口的復(fù)雜度、調(diào)用方式以及哪些信息通過接口。
8.D!窘馕觥吭谌窟\(yùn)算符中,優(yōu)先級(jí)相同,按從右到左的結(jié)合性計(jì)算,a 9.C!窘馕觥吭谟(jì)算(float)(a4-b)/2時(shí),由于通過強(qiáng)制類型轉(zhuǎn)換將(a+b)轉(zhuǎn)換成了float型,所以應(yīng)先將2轉(zhuǎn)換成float型,再進(jìn)行計(jì)算,得4.500000。在計(jì)算(int)x% (int)y時(shí),先將x和y通過強(qiáng)制類型轉(zhuǎn)換成int型,再進(jìn)行求余運(yùn)算,結(jié)果為1。又因?yàn)?.500000是float型,所以將1和它相加時(shí),先將1 換成float型,再計(jì)算,得到5.500000。類型轉(zhuǎn)換的一般規(guī)則是:低級(jí)類型從高級(jí)類型,并進(jìn)行相應(yīng)的轉(zhuǎn)換。數(shù)據(jù)類型的級(jí)別由低到高的排序表示為:char→int→unsigned→log→float→double。
10.B!窘馕觥慨(dāng)邏輯運(yùn)算符“&&”兩邊的值是非零時(shí),邏輯表達(dá)式的值為真(即為1)。所以b=2&&(-1)= 1,2%9=2,故a=2,故先算a/10=25/10=2。
11.D!窘馕觥吭谝粋(gè)函數(shù)中的復(fù)合語中定義的變量,只能在這個(gè)復(fù)合語句范圍內(nèi)有效。
12.B!窘馕觥窟x項(xiàng)A中對(duì)于二維數(shù)組,必須通過賦值的個(gè)數(shù)來確定其長(zhǎng)度,沒有賦值則無法確定,選項(xiàng)C中賦的是空值,也不能確定其行下標(biāo),而選項(xiàng)D中定義的兩行三列,而賦值的卻是三行兩列。
13.C!窘馕觥康谝粋(gè)if語句,先判斷條件,發(fā)現(xiàn)a
14.A!窘馕觥縲hile循環(huán)的執(zhí)行過程如下:①計(jì)算while后面圓括號(hào)中表達(dá)式的值。當(dāng)值為非0時(shí),執(zhí)行步驟②;當(dāng)值為0時(shí),執(zhí)行步驟④。②執(zhí)行循環(huán)體一次。③轉(zhuǎn)去執(zhí)行步驟①。④退出循環(huán)。在選項(xiàng)A中,表達(dá)式(ch=get- char())!=’N’表示輸入的字符不等于N,如果這個(gè)條件表達(dá)式成立,則執(zhí)行循環(huán)體,打印輸出輸入的字符。如果這個(gè)條件表達(dá)式不成立,即輸入的字符等于N,則退出循環(huán)。所以選項(xiàng)A為正確答案。
15.B!窘馕觥勘绢}考查函數(shù)調(diào)用的基本概念。調(diào)用函數(shù)時(shí),實(shí)參的形式可以是具體的數(shù)值,也可以是表達(dá)式。實(shí)參將數(shù)值或表達(dá)式的值傳遞給形參,因而兩者的類型必須保持一致;形參在運(yùn)算過程中會(huì)發(fā)生改變,但不一定會(huì)影響到實(shí)參值,所以可知兩者不共用內(nèi)存單元。
16.D!窘馕觥縞語言規(guī)定,一個(gè)字符常量代表ASCII 碼字符集里的一個(gè)字符,在群序中用單引號(hào)括起來,以便區(qū)分。’\v’表示的是豎向跳格:’kx2a’表示的是兩位十六迸制數(shù);’a’表示的是字符a對(duì)應(yīng)的ASCII碼值。"\0"用雙引號(hào)故不正確。
17.C!窘馕觥繑(shù)組名sl是代表sl數(shù)組首地址的地址常量,因?yàn)?ldquo;=”左邊不能出現(xiàn)常量,所以s1="ABCDE"的方法是錯(cuò)誤的。
18.D!窘馕觥孔笠苙位相當(dāng)于乘以2的n次冪,右移n 位相當(dāng)于除以2的n次冪。
19.C。【解析】在“r=P;p=q;q=r;”三個(gè)語句是表示P 與q交換,經(jīng)過交換后P指向b的地址,q指向a的地址,因此最后輸出為8,7,7,8,故選擇C選項(xiàng)。
20.B!窘馕觥孔兞縨和i聲明為局部靜態(tài)變量,因此第1次調(diào)用fun()函數(shù)后,局部靜態(tài)變量m和i的值為5和3,第l次調(diào)用結(jié)束時(shí),它們的值不變,第2次調(diào)用時(shí),m和i 的初始值分別為5和3,在執(zhí)行“i+=m+1”后,i的值為9,因此,最終m的值為11。
21.B!窘馕觥縮truct date中包含year、month、day這3 個(gè)整型變量,一個(gè)整型變量占2個(gè)字節(jié);sizeof是求所占字節(jié)數(shù)的運(yùn)算符。
22.B!窘馕觥繌膶(shí)參傳遞過去的是結(jié)構(gòu)體系數(shù)組的第3個(gè)元素,所以輸出的name為Zhao。
23.B。【解析】本題考查實(shí)參與形參調(diào)用,從實(shí)參傳遞到形參時(shí),只是數(shù)值的傳遞,調(diào)用函數(shù)中值的改變不會(huì)影響主函數(shù)中的值,因此原樣輸出。
24.D!窘馕觥勘绢}考查鏈表結(jié)點(diǎn)的刪除,q一>next中存放的是r所指結(jié)點(diǎn)的首地址,將r所指結(jié)點(diǎn)的首地址存于p-- next中,則實(shí)現(xiàn)刪除q所指點(diǎn)的功能,并保持鏈表連續(xù),P所指點(diǎn)與r所指結(jié)點(diǎn)相連。
25.A!窘馕觥勘绢}考查邏輯與運(yùn)算“&&”與邏輯或運(yùn)算“||”。在選項(xiàng)A中,因?yàn)?a=0,所以關(guān)系表達(dá)式!a=1 為0,又因?yàn)檫壿嬇c運(yùn)算符“&&”兩邊的表達(dá)式只要一個(gè)等于零,則整個(gè)表達(dá)式為零,所以選項(xiàng)A正確。在選項(xiàng)8中,關(guān)系表達(dá)式a
26.C!窘馕觥坑深}目的已知條件函數(shù)fun的定義形式void fun(char ch,float x){…)可知第一個(gè)形參為字符型,所以A不符合,第二個(gè)形參為精度型,所以D不符合,函數(shù)fun 定義為void型(無論返回值型),故其沒有返回值,所以選項(xiàng)B錯(cuò)誤。選項(xiàng)C的第一個(gè)實(shí)參的類型為字符型,第二個(gè)實(shí)參的類型為單精度型,與函數(shù)fun的形式參數(shù)的類型相符合,所以選項(xiàng)C為正確答案。
27.C。【解析】語句char p[]={’a’,’b ’,’ c’);定義了一個(gè)一維字符數(shù)組p[],并用3個(gè)字符’a’,’b’ ,’c ’進(jìn)行了初始化;而語句q[]="abe"表示定義了一個(gè)一維字符數(shù)組,并用一個(gè)字符串常量"abc"進(jìn)行了初始化。在C語言中,系統(tǒng)在每個(gè)字符串常量的最后自動(dòng)加入一個(gè)字符’\0 ’作為字符串的結(jié)束符。所以函數(shù)sizeof(q)=4,而sizeof(p)=3,因而選項(xiàng)C為正確答案。
28.D。【解析】本題主要考查while循環(huán)語句和switch case語句的使用方法。其執(zhí)行步驟為:k=5時(shí),跳出switch 語句,然后k自減1;當(dāng)k=4時(shí),跳出switch語句,然后k自減1;當(dāng)k=3時(shí),n=13+k=0+3=3,跳出switch語句,然后k自減1;當(dāng) k=2時(shí)n=n+k=3+2=5,跳出switch語句,然后k自減l;當(dāng)k=1時(shí),case 1:n=n+k一5+1=6,沒有break繼續(xù)執(zhí)行CaSe 3;n=n+k=6+1=7,跳出switch語句,然后k自減1;當(dāng)k=0時(shí),退出循環(huán),所以輸出結(jié)果為7。
29.C!窘馕觥坑深}目的語句P=&a[1]可知,P指向a 數(shù)組中下標(biāo)為1的元素“4”,又因?yàn)镻為指針變量,所以P [x]與*(p+x)等價(jià),因而在for循環(huán)語句中,第一次循環(huán)P [1]指向a數(shù)組中下標(biāo)為2的元素“6”,第二次循環(huán)p[2]指向a數(shù)組中下標(biāo)為3的元素“8”,所以y=6+8=14,因而選項(xiàng)C為正確答案。
30.C!窘馕觥勘绢}考查排序的使用由sort()函數(shù)的兩層for循環(huán)語句可知,其二々能是把數(shù)組a口中的元素按照從大到小的順序進(jìn)行排列。在main()函數(shù)中首先定義了一維整型數(shù)組aa[10],然后調(diào)用sort(aa+2,5)實(shí)現(xiàn)從數(shù)組aa中下標(biāo)為2的元素“3”開始.其后連續(xù)的 5個(gè)元素從大到小進(jìn)行排列,其余元素不變。
31.C!窘馕觥縜bc函數(shù)是求u、v的最大公約數(shù),當(dāng)v= 16時(shí),循環(huán)成立,執(zhí)行其后的語句,即w=u%v,u=v;v=w;w=24%16=8,u=16,v=8,接著返回到while中,當(dāng)v=8 時(shí),循環(huán)成立,執(zhí)行其后昀語句,即w=u%v;u=v;v=w;w=16%8=0,u=8,v=0,接著再返回到while中,當(dāng)v=0 時(shí),循環(huán)不成立,退出循環(huán)。
32.A!窘馕觥扛鶕(jù)函數(shù)的定義可知,如果x>Y成立,則函數(shù)f1返回x的值,函數(shù)f2返回y的值。所以fl(a,b)= 4,n(c,d)=5,f2(a,b)=3;,f2(c,d)=2,故e=f2(4,5)=4,f =f1(3,2)=3,g=4+3斗5+2-4-3=7。
33.C!窘馕觥勘绢}考查的是指向函數(shù)的指針。函數(shù)指針定義的基本格式為:類型標(biāo)識(shí)符(*指針變量名)()。“類型標(biāo)識(shí)符”為函數(shù)返回值的類型。
34.C!窘馕觥勘绢}先將指針P指向二維數(shù)組ch[2] IS],相當(dāng)于p[0]="1234",p[1]="5678";通過雙重for循環(huán),將P中的字符隔一個(gè)輸出一個(gè),通過“s=p[i][j]-’0’;”語句將所要輸出的字符#換成相應(yīng)的十進(jìn)制數(shù)。
35.B!窘馕觥扛鶕(jù)判斷本題共進(jìn)行三次for循環(huán),第一次執(zhí)行for循環(huán),p[1][0]=p[1][0]-1=3;第2次執(zhí)行for循環(huán),p[1][1]=p[1][1]-1=4;第3次執(zhí)行for循環(huán),[1][2] =1,最后輸出的是a[o][1]+a[1][1]+a[1][2]=2+4+ 1=7。
36.C!窘馕觥縮trcpy(sl,s2)函數(shù)的功能是將字符串s2 復(fù)制到字符串s1中。要保證s1存儲(chǔ)區(qū)能容納下s2字符串。
37.D!窘馕觥勘绢}j=要是考查帶參數(shù)的宏的定義,過程如下:int a=a/S(k+m)/S(k+m)=a/(k+m*k+m/k+m)=9/(3十2*3十2/3十2*3十2)=0。
38.B!窘馕觥勘绢}主要考查結(jié)構(gòu)指針:P=&data,訪問結(jié)構(gòu)體的成員。它可以通過結(jié)構(gòu)變量訪問,即data,可以用等價(jià)的指針形式:(*p).a和P->a來訪問結(jié)構(gòu)體變量中的成員。
39.D!窘馕觥渴紫榷x了一個(gè)指向一維數(shù)組b的指針P,一個(gè)指向指針P的指針變量q;輸出*(p++)是先輸出* p,即b[O]的值,再將指針P指向數(shù)組的下一個(gè)元素b[1];輸出**q是輸出指針P所指單元的內(nèi)容。
40.B!窘馕觥康谝粋(gè)循環(huán)的作用是把從0~9的數(shù)賦給a數(shù)組;第二個(gè)循環(huán)的作用是把a(bǔ)數(shù)組中的部分元素放到數(shù)組P中,即p[0]=a[0]=0,p[1]=a[2]=2,p[2]=a[6]= 6;第三個(gè)循環(huán)的作用是把P中的各個(gè)元素的兩倍之和放到k中,即k=5+0+4+12=21。
【計(jì)算機(jī)二級(jí)考試C語言模擬題1】相關(guān)文章:
計(jì)算機(jī)二級(jí)考試C語言考試技巧05-13
2016年計(jì)算機(jī)二級(jí)考試C語言沖刺模擬題05-11
2016計(jì)算機(jī)二級(jí)《C語言》模擬題及答案09-08
計(jì)算機(jī)二級(jí)C語言考試必看技巧09-30
科目一c1考試模擬題09-29
2015年全國(guó)計(jì)算機(jī)二級(jí)考試《C語言》沖刺模擬題(四)09-19
計(jì)算機(jī)二級(jí)C++C++語言概述09-24