




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2020年全國計算機二級等級考試全真模擬試卷
及答案(共六套)
2020年全國計算機二級等級考試全真模擬試卷
及答案(第一套)
1.在最壞情況下
A)快速排序的時間復雜度比冒泡排序的時間復雜度要小
B)快速排序的時間復雜度比希爾排序的時間復雜度要小
C)希爾排序的時間復雜度比直接插入排序的時間復雜度要小
D)快速排序的時間復雜度與希爾排序的時間復雜度是一樣的
參考答案:C
2.在深度為7的滿二叉樹中,度為2的結點個數為
A)64
B)63
C)32
D)31
參考答案:B
3.設棧的順序存儲空間為S(l:m),初始狀態為top=m+l。現經過一
系列入棧與退棧運算后,top=20,則當前棧中的元素個數為
A)30
B)20
C)m-19
D)m-20
參考答案:C
4.算法空間復雜度的度量方法是
A)算法程序的長度
B)算法所處理的數據量
C)執行算法所需要的工作單元
D)執行算法所需要的存儲空間
參考答案:D
5.下面不屬于軟件開發階段任務的是
A)測試
B)可行性研究
C)設計
D)實現
參考答案:B
6.下面屬于字符類的實例是
A)'518'
B)〃5"
C),nm
D),\n,
參考答案:D
7.某系統結構圖如下圖所示
該系統結構圖的最大扇出數是
A)n
B)1
C)3
D)4
參考答案:A
8.一個興趣班可以招收多名學生,而一個學生可以參加多個興趣班。
則實體興趣班和實體學生之間的聯系是
A)1:1聯系
B)l:m聯系
C)m:1聯系
D)m:n聯系
參考答案:D
9.有三個關系表R、S和T如下,其中三個關系對應的關鍵字分別為A,
B和復合關鍵字(A,B)。
表T的記錄項(b,q,4)違反了
A)實體完整性約束
B)參照完整性約束
C)用戶定義的完整性約束
D)關系完整性約束
參考答案:B
10.在數據庫系統中,給出數據模型在計算機上物理結構表示的是
A)概念數據模型
B)邏輯數據模型
C)物理數據模型
D)關系數據模型
參考答案:C
11.若有定義語句:inta=12;,則執行語句:a+=a-=a*a;后,a的
值是
A)-264
B)552
C)144
D)264
參考答案:A
12.若在程序中變量均已定義成int類型,且已賦大于1的值,則下列
選項中能正確表示代數式五的表達式是
A)1.0/a/b/c
B)l/(a*b*c)
C)1.0/a*b*c
D)1/a/b/(double)c
參考答案:A
13.有以下程序
ftinclude<stdio.h>
main()
(
intx=010,y=10;
printf("%d,%d\n”,++x,y一);
}
程序運行后的輸出結果是
A)9,10
B)11,10
C)010,9
D)10,9
參考答案:A
14.以下選項中敘述正確的是
A)C語言的標識符可分為關鍵字、預定義標識符和用戶標識符三類
B)C語言的標識符可分為語句、變量和關鍵字三類
C)C語言的標識符可分為函數名、變量和預定義標識符三類
D)C語言的標識符可分為運算符、用戶標識符和關鍵字三類
參考答案:A
15.以下選項中敘述正確的是
A)函數體必須由{開始
B)C程序必須由main語句開始
C)C程序中的注釋可以嵌套
D)C程序中的注釋必須在一行完成
參考答案:A
16.已知a=5,b=6,c=7,d=8,m=2,n=2,執行(m=a>b)&&(n=c〈d)后n的值
為
A)2
B)0
C)1
D)-1
參考答案:A
17.有以下程序
ftinclude<stdio.h>
main()
(
intx=23;
do
(
printf("%2d\n”,x一);
}while(!x);
程序的執行結果是
A)輸出23
B)輸出321
C)不輸出任何內容
D)陷入無限循環
參考答案:A
18.有以下程序
ftinclude<stdio.h>
main()
(
charc;
while((c=getchar())!='\n')
(
switch(c,2')
{
case0:
case1:putchar(c+4)
case2:putchar(c+4);break;
case3:putchar(c+3)
default:putchar(c+2);break;
printf(〃\n〃);
程序運行后從第一列開始輸入以下數據
2473〈回車〉
程序的輸出結果是
A)668977
B)4444
C)6677877
D)68766
參考答案:A
19.有以下程序
ftinclude<stdio.h>
main()
{inti=0,sum=l;
do
(
sum+=i++;
}while(i<6);
printf(,z%d\n”,sum);
程序的輸出結果是
A)16
B)18
C)20
D)22
參考答案:A
20.有以下程序段,若變量已正確定義并賦值
if(a>b)printf("x=%d,”,x);
elseprintf("y=%d,”,y);
if(a<=b)i++;
elsej++;
則與此程序段功能相同的選項是
A)if(a>b){printf("x=%d,”,x);j++;}
else{printf("y=%d,”,y);i++;}
B)if(a>b){printf("x=%d,”,x);i++;}
else{printf("y=%d,”,y);j++;}
C)if(a〈=b){printf("x=%d,”,x);i++;}
else{printf("y=%d,”,y);j++;}
D)if(a>=b){printf("x=%d,”,x);i++;}
else{printf("y=%d,”,y);j++;}
參考答案:A
21.以下程序的功能是判斷輸入的一個整數是否能被3或7整除,若能
整除,輸出YES,否則輸出NO。在下劃線處應填入的選項是
ftinclude<stdio.h>
main()
{intk;
printf("Enteraintnumber:");scanf("%d",&k);
ifprintf("YES'n");
elseprintf("N0\n");
printf("%d\n",k%3);
}
A)((k%3==0)||(k%7==0))
B)(k/3==0)||(k/7==0)
C)((k%3=0)||(k%7=0))
D)((k%3==0)&&(k%7==0))
參考答案:A
22.以下選項中,不能對主函數中變量i和j的值進行交換的程序是
A)ttinclude<stdio.h>
voidswap(int*p,int*q)
{int*t;
*t=*p;*p=*q;*q=*t;
main()
inti=10,j=20,*a=&i,*b=&j;
swap(a,b);printf(,,i=%dj=%d\n”,i,j);
}
B)ttinclude<stdio.h>
voidswap(int*p,int*q)
{intt;
t=*p;*p=*q;*q=t;
}
main()
(
inti=10,j=20,*a=&i,*b=&j;
swap(a,b);printf(,,i=%dj=%d\n〃,i,j);
)
C)ftinclude<stdio.h>
ftinclude<stdlib.h>
voidswap(int*p,int*q)
{int*t;
t=(int*)malloc(sizeof(int));
*t=*p;*p=*q;*q=*t;
free(t);
main()
(
inti=10,j=20;
/,,,
swap(&i,&j);printf(i=%dj=%d\n,i,j);
)
D)#include<stdio.h>
voidswap(int*p,int*q)
{intt;
t=*p;*p=*q;*q=t;
)
main()
(
inti=10,j=20,*x=&i,*y=&j;
swap(x,y);printf(,,i=%dj=%d\n〃,i,j);
)
參考答案:A
23.有以下程序
ttinclude<stdio.h>
main()
inta[10]={1,3,5,7,11,13,17},*p=a;
printf("%d,",*(p++));
printf("%d\n",*(++p));
}
程序運行后的輸出結果是
A)1,5
B)3,5
C)3,7
D)1,3
參考答案:A
24.有以下程序
ftinclude<stdio.h>
main()
(
int*p,x=100;
p=&x;x=*p+10;
printf("%d\n",x);
}
程序運行后的輸出結果是
A)110
B)120
C)100
D)90
參考答案:A
25.以下程序中給數組所有元素輸入數據,請從選項中選擇正確的答
案填入下劃線處
ftinclude<stdio.h>
main()
(
inta[10],i=0;
while(i<10)scanf("%d",);
■
I
■
■
}
A)a+(i++)
B)&a[i+l]
C)a+i
D)&a(i++)
參考答案:A
26.有以下程序
ftinclude<stdio.h>
voidfun(intx,inty,int*z)
{*z=y-x;}
main()
inta,b,c;
fun(10,5,&a);fun(7,a,&b);fun(a,b,&c);
printf("%d,%d,%d\n”,a,b,c);
}
程序運行后的輸出結果是
A)-5,-12,-7
B)5,2,3
C)-5,-12,-17
D)5,-2,-7
參考答案:A
27.有以下程序
ftinclude<stdio.h>
voidfun(int*s,intnl,intn2)
{inti,j,t;
i=nl;j=n2;
while(i<j)
{t=*(s+i);*(s+i)=*(s+j);*(s+j)=t;
i++;j—;
}
main()
inta[10]={1,2,3,4,5,6,7,8,9,0},i,*p=a;
fun(p,0,3);fun(p,4,9);fun(p,0,9);
for(i=0;i<10;i++)printf("%d”,*(a+i));
printf("\n");
}
程序運行后的輸出結果是
A)5678901234
B)0987654321
C)4321098765
D)0987651234
參考答案:A
28.當沒有指定C語言中函數形參的存儲類別時,函數形參的存儲類
別是
A)自動(auto)
B)靜態(static)
C)寄存器(register)
D)外部(extern)
參考答案:A
29.當沒有指定C語言中函數形參的存儲類別時,函數形參的存儲類
別是
A)自動(auto)
B)靜態(static)
C)寄存器(register)
D)外部(extern)
參考答案:A
30.以下語句的輸出結果是
printf("%d\n”,strlen("\t\"\065\xff\n〃));
A)5
B)8
C)14
D)輸出項不合法,無正常輸出
參考答案:A
31.若有說明和語句:charstr*p;p=str;,則此時
*(p+5)中的值為
A),\0,
B)'o'
C)'o'的地址
D)不確定的值
參考答案:A
32.有以下程序
ftinclude<stdio.h>
ftinclude<string.h>
main()
chars[]="Beijing”;
printf("%d\n",strlen(strcpy(s,"China")));
}
程序運行后的輸出結果是
A)5
B)7
C)12
D)14
參考答案:A
33.有以下函數
intfun(char*s,char*t)
{while((*s)&&(*t)&&(*t++==*s++));
return(*s-*t);
}
函數的功能是
A)比較兩個字符串的大小
B)求字符串的長度
C)將字符串s復制到字符串t中
D)連接字符串s和字符串t
參考答案:A
34.以下敘述正確的是
A)EOF只能作為文本文件的結束標志,其值為
B)EOF可以作為所有文件的結束標志
C)EOF只能作為二進制文件的結束標志
D)任何文件都不能用EOF作為文件的結束標志
參考答案:A
35.以下敘述正確的是
A)在C語言中調用fopen函數就可把程序中要讀、寫的文件與磁盤上
實際的數據文件聯系起來
B)fopen函數的調用形式為:fopen(文件名)
C)fopen函數的返回值為NULL時,則成功打開指定的文件
D)fopen函數的返回值必須賦給一個任意類型的指針變量
參考答案:A
36.以下不能對文件進行輸出的庫函數是
A)fpout
B)fputc
C)fwrite
D)fprintf
參考答案:A
37.有以下程序
ftinclude<stdio.h>
ftdefineN2
ftdefineMN+l
ftdefineMUN(M+l)*M/2
main()
printf("%d\n",MUN);
}
程序運行后的輸出結果是
A)8
B)9
C)5
D)6
參考答案:A
38.有以下程序
ftinclude<stdio.h>
structlink(
intdata;
structlink*next;
);
main()
{structlink*h,a,b;
h=&a;a.data=10;a.next=&b;b.data=20;
■I
I
}
程序運行時不能輸出10,20的語句是
A)printf("%d,%d\n,z,h->data,a.next,data);
B)printf("%d,%d\n”,a.data,(*a.next).data);
C)printf("%d,%d\n”,h->data,(*a.next).data);
D)printf("%d,%d\n”,a.data,a.next->data);
參考答案:A
39.有以下程序
ftinclude<stdio.h>
main()
{inta=3,b=3;
printf("%d\n',a&b);
}
程序運行后的輸出結果是
A)3
B)1
C)0
D)6
參考答案:A
40.有以下程序段
FILE*fp;
if((fp=fopen("test,txt","w"))==NULL)
{printf(〃不能打開文件!〃);
exit(0);}
else
printf(〃成功打開文件!”);
若指定文件test,txt不存在,且無其他異常,則以下敘述錯誤的是
A)輸出〃不能打開文件!〃
B)輸出〃成功打開文件!〃
C)系統將按指定文件名新建文件
D)系統將為寫操作建立文本文件
參考答案:A
2020年全國計算機二級等級考試全真模擬試卷
及答案(第二套)
1.下列敘述中正確的是
A)一個算法的空間復雜度大,則其時間復雜度也必定大
B)一個算法的空間復雜度大,則其時間復雜度必定小
C)一個算法的時間復雜度大,則其空間復雜度必定小
D)算法的時間復雜度與空間復雜度沒有直接關系
參考答案:D
2.下列敘述中正確的是
A)循環隊列中的元素個數隨隊頭指針與隊尾指針的變化而動態變
化
B)循環隊列中的元素個數隨隊頭指針的變化而動態變化
0循環隊列中的元素個數隨隊尾指針的變化而動態變化
D)以上說法都不對
參考答案:A
3.棵二叉樹中共有80個葉子結點與70個度為1的結點,則該二叉樹中
的總結點數為
A)219
B)229
C)230
D)231
參考答案:B
4.對長度為10的線性表進行冒泡排序,最壞情況下需要比較的次數
為
A)9
B)10
C)45
D)90
參考答案:C
5.構成計算機軟件的是
A)源代碼
B)程序和數據
0程序和文檔
D)程序、數據及相關文檔
參考答案:D
6.軟件生命周期可分為定義階段、開發階段和維護階段,下面不屬
于開發階段任務的是
A)測試
B)設計
C)可行性研究
D)實現
參考答案:C
7.下面不能作為結構化方法軟件需求分析工具的是
A)系統結構圖
B)數據字典(DD)
0數據流程圖(DFD圖)
D)判定表
參考答案:A
8.在關系模型中,每一個二維表稱為一個
A)關系
B)屬性
0元組
D)主碼(鍵)
參考答案:A
9.若實體A和B是一對多的聯系,實體B和C是一對一的聯系,則實體A
和C的聯系是
A)一對一
B)一對多
0多對一
D)多對多
參考答案:B
有三個關系R,S和T如下
RST
ABCABC
a12a12
b21b21
c31c31
d32
10則由關系R和S得到關系T的操作是。
A)選擇
B)投影
0交
D)并
參考答案:D
11.以下敘述中正確的是
A)C語言程序所調用的函數必須放在main函數的前面
B)C語言程序總是從最前面的函數開始執行
C)C語言程序中main函數必須放在程序的開始位置
D)C語言程序總是從main函數開始執行
參考答案:D
12.C語言程序中,運算對象必須是整型數的運算符是
A)&&
B)/
0%
D)*
參考答案:C
13.有以下程序
#include<stdio.h>
main()
(
intsum,pad,pAd;
sum=pad=5;
pAd=++sum,pAd++,++pad;
printf("%d\n",pad);
}
程序的輸出結果是
A)5
B)6
C)7
D)8
參考答案:B
14,有以下程序
#include<stdio.h>
main()
(
inta=3;
a+=a-=a*a;
printf("%d\n",a);
}
程序的輸出結果是
A)0
B)9
C)3
D)-12
參考答案:D
15.sizeof(double)是
A)一個整型表達式
B)一個雙精度型表達式
0一個不合法的表達式
D)一種函數調用
參考答案:A
16.有以下程序
#include<stdio.h>
main()
(
inta=2,c=5;
printf("a=%%d,b=%%d\n"/a,c);
)
程序的輸出結果是
A)a=2,b=5
B)a=%2,b=%5
C)a=%d,b=%d
D)a=%%d,b=%%d
參考答案:C
17.若有定義語句:
chara='\82';
則變量a
A)說明不合法
B)包含1個字符
0包含2個字符
D)包含3個字符
參考答案:A
18.有以下程序
#include<stdio.h>
main()
(
charcl='A',c2='Y';
printf("%d,%d\n",cl,c2);
}
程序的輸出結果是
A)輸出格式不合法,輸出出錯信息
B)65,89
C)65,90
D)A,Y
參考答案:B
19.若變量已正確定義
for(x=0,y=0;(y!=99&&x<4);x++)
則以上for循環
A)執行3次
B)執行4次
0執行無限次
D)執行次數不定
參考答案:B
20.對于while(!E)s;,若要執行循環體s,則E的取值應為:
A)E等于1
B)E不等于0
0E不等于1
D)E等于0
參考答案:D
21.有以下程序
#include<stdio.h>
main()
(
intx;
for(x=3;x<6;x++)
printf((x%2)?("*%d"):("#%d"),x);
printf("\n");
}
程序的輸出結果是
A)*3#4*5
B)#3*4#5
C)*3*4#5
D)*3#4#5
參考答案:A
22.有以下程序
#include<stdio.h>
main()
{inta,b;
for(a=l,b=l;a<=100;a++)
{if(b>=20)break;
if(b%3==1){b=b+3;continue;}
b=b-5;
}
printf("%d\n",a);
}
程序的輸出結果是
A)10
B)9
C)8
D)7
參考答案:B
23.有以下程序
#include<stdio.h>
voidfun(intx,inty,int*c,int*d)
{*c=x+y;*d=x-y;}
main()
{inta=4,b=3,c=0,d=0;
fun(a,b,&c,&d);
printf("%d%d\n",c,d);
)
程序的輸出結果是
A)00
B)43
C)34
D)71
參考答案:D
24,有以下程序
#include<stdio.h>
voidfun(int*p7int*q)
{intt;
t=*p;*p=*q;*q=t;
*q=*p;
}
main()
{inta=0,b=9;
fun(&a,&b);
printf("%d%d\n",a,b);
)
程序的輸出結果是
A)90
B)00
C)99
D)09
參考答案:C
25.有以下程序
#include<stdio.h>
main()
{inta[]={2,4,6,8,10Lx,*p,y=l;
P=&a[l];
for(x=0;x<3;x++)y+=*(p+x);
printf("%d\n",y);
}
程序的輸出結果是
A)13
B)19
C)11
D)15
參考答案:B
26.有以下程序
#include<stdio.h>
main()
(
inti,x[3][3]={t,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
printf("%d",x[i][2-i]);
printf("\n");
}
程序的輸出結果是
A)150
B)357
C)147
D)369
參考答案:B
27,設有某函數的說明為
int*func(inta[10],intn);
則下列敘述中,正確的是
A)形參a對應的實參只能是數組名
B)說明中的a[10]寫成a口或*a效果完全一樣
C)func的函數體中不能對a進行移動指針(如a++)的操作
D)只有指向10個整數內存單元的指針,才能作為實參傳給a
參考答案:B
28.有以下程序
#include<stdio.h>
charfun(char*c)
(
if(*c<='Z'&&*c>='A')
*c-='A'-'a';
return*c;
)
main()
(
chars[81]z*p=s;
gets(s);
while(*p)
(
*P=fun(p);
putchar(*p);
P++;
}
printf("\n");
}
若運行時從鍵盤上輸入OPENTHEDOOR〈回車〉,程序的輸出結果
是
A)OPENTHEDOOR
B)OPENtHEdOOR
0openthedoor
D)OpenTheDoor
參考答案:C
29.設有定義語句:
char*aa[2]={"abcd","ABCD"};
則以下敘述正確的是
A)aa[0]存放了字符串"abed"的首地址
B)aa數組的兩個元素只能存放含有4個字符的一維數組的首地址
0aa數組的值分別是字符串"abed"和"ABCD"
D)aa是指針變量,它指向含有兩個元素的字符型數組
參考答案:A
30,有以下程序
#include<stdio.h>
intfun(char*s)
{char*p=s;
while(*p!=0)p++;
return(p-s);
)
main()
{printf("%d\n",fun("goodbey!"));}
程序的輸出結果是
A)0
B)6
C)7
D)8
參考答案:C
31.有以下程序
#include<stdio.h>
intfun(intn)
{inta;
if(n==l)return1;
a=n+fun(n-1);
return(a);
}
main()
{printf("%d\n",fun(5));}
程序的輸出結果是
A)9
B)14
C)10
D)15
參考答案:D
32,有以下程序
#include<stdio.h>
intd=l;
voidfun(intp)
(
intd=5;
d+=p++;
printf("%d",d);
)
main()
inta=3;
fun(a);
d+=a++;
printf("%d\n",d);
}
程序的輸出結果是
A)84
B)96
C)94
D)85
參考答案:A
33.有以下程序
#include<stdio.h>
intfun(intA)
(
intb=0;
staticintc=3;
a=(c++,b++);
return(a);
}
main()
inta=2,i,k;
for(i=0;i<2;i++)
k=fun(a++);
printf("%d\n",k);
}
程序的輸出結果是
A)4
B)0
01
D)2
參考答案:B
34,有以下程序
#include<stdio.h>
main()
{charc[2][5]={"6934","8254"},*p[2];
inti,j,s=0;
for(i=0;i<2;i++)p[i]=c[i];
for(i=0;i<2;i++)
for(j=0;p[i][j]>0&&p[i][j]<='9';j+=2)
s=10*s+p[i][j]-'O';
printf("%d\n",s);
}
程序的輸出結果是
A)693825
B)69825
C)63825
D)6385
參考答案:D
35.有以下程序
#include<stdio.h>
#defineSQR(X)X*X
main()
(
inta=10,k=2,m=l;
a/=SQR(k+m)/SQR(k+m);
printf("%d\n",a);
}
程序的輸出結果是
A)0
B)1
C)9
D)10
參考答案:B
36.有以下程序
#include<stdio.h>
main()
{charx=2,y=2,z;
z=(y?l)&(x?l);
printf("%d\n",z);
}
程序的輸出結果是
A)1
B)0
C)4
D)8
參考答案:B
37,有以下程序
#include<stdio.h>
structS{inta;intb;};
main()
{structSa,*p=&a;
a.a=99;
printf("%d\n",);
}
程序要求輸出結構體中成員a的數據,以下不能填入橫線處的內容是
A)a.a
B)*p.a
C)p->a
D)(*p).a
參考答案:B
38.有以下程序
#include<stdio.h>
#include<stdlib.h>
voidfun(double*pl,double*p2,double*s)
{s=(double*)calloc(l,sizeof(double));
*s=*pl+*(p2+l);
}
main()
{doublea[2]={1.1,2.2},b[2]={10.0,20.0},*s=a;
fun(a,b,s);
printf("%5.2f\n",*s);
}
程序的輸出結果是
A)21.10
B)11.10
C)12.10
D)1.10
參考答案:D
若已建立以下畦表結構,指針P、s分別指向如圖所示結點
datanextdatanextdatanext
39則不能將s所指結點插入到旗表末尾的語句組是
A)p=p->next;s->next=p;p->next=s;
B)s->next='\0';p=p->next;p->next=s;
C)p=p->next;s->next=p->next;p->next=s;
D)p=(*p).next;(*s).next=(*p).next;(*p).next=s;
參考答案:A
40.若fp已定義為指向某文件的指針,且沒有讀到該文件的末尾,則
C語言函數feof(fp)的函數返回值是
A)EOF
B)非。
0-1
D)0
參考答案:D
2020年全國計算機二級等級考試全真模擬試卷
及答案(第三套)
1.下列敘述中正確的是
A)算法的效率只與問題的規模有關,而與數據的存儲結構無關
B)算法的時間復雜度是指執行算法所需要的計算工作量
C)數據的邏輯結構與存儲結構是一一對應的
D)算法的時間復雜度與空間復雜度一定相關
參考答案:B
2.下列敘述中正確的是
A)線性表鏈式存儲結構的存儲空間一般要少于順序存儲結構
B)線性表鏈式存儲結構與順序存儲結構的存儲空間都是連續的
0線性表鏈式存儲結構的存儲空間可以是連續的,也可以是不連
續的
D)以上說法均錯誤
參考答案:C
3.某二叉樹共有12個結點,其中葉子結點只有1個。則該二叉樹的深
度為(根結點在第1層)
A)3
B)6
C)8
D)12
參考答案:D
4.對長度為n的線性表作快速排序,在最壞情況下,比較次數為
A)n
B)n-1
C)n(n-1)
D)n(n-l)/2
參考答案:D
5.結構化程序設計中,下面對goto語句使用描述正確的是
A)禁止使用goto語句
B)使用goto語句程序效率高
0應避免濫用goto語句
D)以上說法均錯誤
參考答案:C
6.下面不屬于軟件測試實施步驟的是
A)集成測試
B)回歸測試
0確認測試
D)單元測試
參考答案:B
7.下面不屬于軟件需求分析階段主要工作的是
A)需求變更申請
B)需求分析
C)需求評審
D)需求獲取
參考答案:A
8.一般情況下,當對關系R和S進行自然連接時,要求R和S含有一個
或者多個共有的
A)記錄
B)行
0屬性
D)元組
參考答案:C
Q則由關系R和S得到關系T的操作是?,
A)選擇
B)差
0交
D)并
參考答案:B
10.有表示公司和職員及工作的三張表,職員可在多家公司兼職。其
中公司C(公司號,公司名,地址,注冊資本,法人代表,員工數),
職員S(職員號,姓名,性別,年齡,學歷),工作W(公司號,職員
號,工資),則表W的鍵(碼)為
A)公司號,職員號
B)職員號,工資
0職員號
D)公司號,職員號,工資
參考答案:A
11.以下敘述中正確的是
A)每個后綴為.C的C語言源程序都可以單獨進行編譯
B)每個后綴為.C的C語言源程序都應該包含一個main函數
0在C語言程序中,main函數必須放在其他函數的最前面
D)在C語言程序中,只有main函數才可單獨進行編譯
參考答案:A
12.C語言中的標識符分為關鍵字、預定義標識符和用戶標識符,以
下敘述正確的是
A)關鍵字可用作用戶標識符,但失去原有含義
B)預定義標識符可用作用戶標識符,但失去原有含義
0在標識符中大寫字母和小寫字母被認為是相同的字符
D)用戶標識符可以由字母和數字任意順序組成
參考答案:B
13.以下選項中合法的常量是
A)999
B)2.7e
C)OXab
D)123E0.2
參考答案:C
14.C語言主要是借助以下哪種手段來實現程序模塊化
A)定義函數
B)定義常量和外部變量
0使用豐富的數據類型
D)使用三種基本結構語句
參考答案:A
15.以下敘述中錯誤的是
A)數值型常量有正值和負值的區分
B)常量可以用一個符號名來代表
0定義符號常量必須用類型名來設定常量的類型
D)常量是在程序運行過程中值不能被改變的量
參考答案:C
16.若有定義和語句:
inta,b;
scanf("%d,%d,",&a,&b);
以下選項中的輸入數據,不能把值3賦給變量a、5賦給變量b的是
A)3,5,4
B)3,5
03,5,
D)3,5
參考答案:D
17.C語言中char類型數據占字節數為
A)1
B)2
C)3
D)4
參考答案:A
18.下列關系表達式中,結果為"假"的是
A)3<=4
B)(3<4)==1
C)(3+4)>6
D)(3!=4)>2
參考答案:D
19.若以下選項中的變量a,b,y均已正確定義并賦值,則語法正確的
switch語句是
A)switch(a*a+b*b)
{default:break;
case3:y=a+b;break;
case2:y=a-b;break;
)
B)switch(a+b)
{easel:case3:y=a+b;break;
caseO:case4:y=a-b;
}
C)switch(a+9)
{casea:y=a-b;
caseb:y=a+b;
}
D)switcha*b
{case10:y=a+b;
default:y=a-b;
}
參考答案:A
20,有以下程序
#include<stdio.h>
main()
{inta=-2,b=0;
while(a++&&++b);
printf("%d,%d\n",a,b);
)
程序運行后輸出結果是
A)0,2
B)0,3
01,3
D)1,2
參考答案:D
21.設有定義:
intx=0,*p;
緊接著的賦值語句正確的是
A)*p=NULL;
B)p=NULL;
C)p=x;
D)*p=x;
參考答案:B
22.下列敘述中正確的是
A)空字符串不占用內存,其內存空間大小是0
B)兩個連續的單引號(“)是合法的字符常量
C)可以對字符串進行關系運算
D)兩個連續的雙引號("")是合法的字符串常量
參考答案:D
23.有以下程序
#include<stdio.h>
main()
{chara='H';
a=(a>='A'&&a<='Z')?(a+32):a;
printf("%c\n",a);
)
程序運行后的輸出結果是
A)H
B)h
C)A
D)a
參考答案:B
24,有以下程序
#include<stdio.h>
intf(intx);
main()
{inta,b=0;
for(a=0;a<3;a+=l)
{b+=f(a);putchar('A'+b);}
}
intf(intx)
{returnx*x+l;}
程序運行后輸出結果是
A)ABE
B)BCD
C)BDI
D)BCF
參考答案:C
25.設有定義:
intx[2][3];
則以下關于二維數組x的敘述錯誤的是
A)元素x⑼可看作是由3個整型元素組成的一維數組
B)數組x可以看作是由x⑼和x[l]兩個元素組成的一維數組
0可以用x[0]=0;的形式為數組所有元素賦初值0
D)x[0]和x⑴是數組名,分別代表一個地址常量
參考答案:C
26.設p是指針變量,語句p=NULL;等價于
A)p='O';
B)p=
0p=
D)p=0;
參考答案:D
27,有以下程序
#include<stdio.h>
main()
{inta[]={10,20,30,40},*p=a,i;
for(i=0;i<=3;i++){a[i]=*p;p++;}
printf("%d\n",a[2]);
)
程序運行后的輸出結果是
A)10
B)20
C)30
D)40
參考答案:C
28有以下程序
#include<stdio.h>
#defineN3
voidfun(inta[][N],intb[])
{inti,j;
for(i=0;i<N;i++)
{b[i]=a[i][0];
for(j=l;j<N;j++)
if(b[i]<a[i][j])b[i]=a[i]0];
)
}
main()
{intx[N][N]={l,2,3,4,5,6,7,8,9},y[N],i;
fun(x,y);
for(i=0;i<N;i++)printf(y[i]);
printf("\n");
}
程序運行后的輸出結果是
A)3,5,7
B)1,3,5,
02,4,8,
D)3,6,9,
參考答案:D
29.有以下程序(strcpy為字符串復制函數,strcat為字符串連接函數)
#include<stdio.h>
#include<string.h>
main()
{chara[10]="abc",b[10]="012",c[10]="xyz";
strcpy(a+1,b+2);
puts(strcat(a,c+1));
}
程序運行后的輸出結果是
A)al2xyz
B)bc2yz
C)a2yz
D)12yz
參考答案:C
30.以下選項中,沒有編譯錯誤的是
A)charstr3[]={'d','e','b','u','g;'\0'};
B)charstrl[5]="pass",str2[6];str2=strl;
C)charname[10];name="china";
D)charstr4[];str4="helloworld";
參考答案:A
31.有以下程序
#include<stdio.h>
main()
(
char*s="12134";
intk=0,a=0;
while(s[k+1])
(
k++;
if(k%2==0)
(
a=a+(s[k]-'O'+1);
continue;
}
a=a+(s[k]-'O');
}
printf("k=%da=%d\n",k,a);
}
程序運行后的輸出結果是
A)k=5a=15
B)k=4a=12
C)k=6a=ll
D)k=3a=14
參考答案:B
32,有以下程序
#include<stdio.h>
main()
(
chara[5][10]={"one","two","three","four","five"};
inti,j;
chart;
for(i=0;i<2;i++)
for(j=i+l;j<5;j++)
if(a[i][0]>aU][0])
(
t=a[i][0];
a[i][O]=a[j][O];
aQ][O]=t;
}
puts(a[l]);
}
程序運行后的輸出結果是
A)owo
B)fwo
C)two
D)fix
參考答案:B
33.有以下程序
#include<stdio.h>
inta=l,b=2;
voidfunl(inta,intb)
{printf("%d%d",a,b);}
voidfun2()
{a=3;b=4;}
main()
{funl(5,6);fun2();
printf("%d%d\n",a,b);
}
程序運行后的輸出結果是
A)5612
B)3456
C)1256
D)5634
參考答案:D
34.有以下程序
#include<stdio.h>
voidfunc(intn)
(
staticintnum=1;
num+=n;
printf("%d",num);
}
main()
(
func(3);
func(4);
printf("\n");
)
程序運行后的輸出是
A)45
B)48
C)35
D)34
參考答案:B
35.有以下程序
#include<stdio.h>
#include<stdlib.h>
voidfun(int*pl,int*p2,int*s)
{s=(int*)calloc(l,sizeof(int));
*s=*pl+*p2;
free(s);
}
main()
{inta[2]={l,2},b[2]={40z50),*q=a;
fun(a,b,q);
printf("%d\n",*q);
}
程序運行后的輸出結果是
A)42
B)41
C)1
D)0
參考答案:C
36.有以下程序
#include<stdio.h>
structSTU{charname[9];charsex;intscore[2];};
voidf(structSTUa[])
{structSTUb={"Zhao",'m',85,90};
a[l]=b;
}
main()
1
{structSTUc[2]={{"Qian",'f,95z92},{"Sun",'m,98,99}};
f(c);
printf("%s,%c,%d,%dj,c[0].name,c[0].sex,c[0].score[0],
c[0].scorefl]);
printf("%s,%c,%d,%d\n",c口].name,c[l].sex,c[l].score[0],
c[l].score[l]);
}
程序運行后輸出結果是
A)Qian,f,95,92,Sun,m,98,99
B)Qian,f,95,92,Zhao,m,85,90
C)Zhao,m,85,90,Sun,m,98,99
D)Zhao,m,85,90,Qian,f,95,92
參考答案:B
37.以下敘述中錯誤的是
A)用typedef可以說明一種新的類型名
B)typedef的作用是用一個新的標識符來代表已存在的類型名
0可以用typedef說明的新類型名來定義變量
D)typedef說明的新類型名必須使用大寫字母,否則會出編譯錯誤
參考答案:D
38.以下敘述中錯誤的是
A)只要類型相同,結構體變量之間可以整體賦值
B)函數的返回值類型不能是結構體類型,只能是簡單類型
0可以通過指針變量來訪問結構體變量的任何成員
D)函數可以返回指向結構體變量的指針
參考答案:B
39.若有定義語句
intb=2;
則表達式(b?2)/(311b)的值是
A)0
B)2
C)4
D)8
參考答案:D
40.有以下程序
#include<stdio.h>
main()
{FILE*fp;inti,a[6]={1,2,3,4,5,6};
fp=fopen("d2.dat","w+");
for(i=0;i<6;i++)fprintf(fp,"%d\n",a[i]);
rewind(fp);
for(i=0;i<6;i++)fscanf(fp,"%d",&a[5-i]);
fclose(fp);
for(i=0;i<6;i++)printf(a[i]);
}
程序運行后輸出結果是
A)1,2,3,4,56
B)6,5,432,1,
04,5,6,1,2,3,
D)123,3,2,1,
參考答案:B
2020年全國計算機二級等級考試全真模擬試卷
及答案(第四套)
L下列敘述中正確的是
A)有且只有一個根結點的數據結構一定是線性結構
B)每一個結點最多有一個前件也最多有一個后件的數據結構一定
是線性結構
0有且只有一個根結點的數據結構一定是非線性結構
D)有且只有一個根結點的數據結構可能是線性結構,也可能是非線
性結構
參考答案:D
2.下列敘述中錯誤的是
A)在雙向鏈表中,可以從任何一個結點開始直接遍歷到所有結點
B)在循環鏈表中,可以從任何一個結點開始直接遍歷到所有結點
0在線性單鏈表中,可以從任何一個結點開始直接遍歷到所有結點
D)在二叉鏈表中,可以從根結點開始遍歷到所有結點
參考答案:C
3.某二叉樹共有13個結點,其中有4個度為1的結點,則葉子結點數為
A)5
B)4
C)3
D)2
參考答案:A0
4.設棧的順序存儲空間為S(l:50),初始狀態為top=0。現經過一系列
入棧與退棧運算后,top=20,則當前棧中的元素個數為
A)30
B)29
C)20
D)19
參考答案:C
5.設棧的順序存儲空間為S(l:50),初始狀態為top=0。現經過一系列
入棧與退棧運算后,top=20,則當前棧中的元素個數為
A)30
B)29
C)20
D)19
參考答案:C
6.程序測試的目的是
A)執行測試用例
B)發現并改正程序中的錯誤
0發現程序中的錯誤
D)診斷和改正程序中的錯誤
參考答案:C
7.下面屬于系統軟件的是
A)財務管理系統
B)數據庫管理系統
0編輯軟件Word
D)殺毒軟件
參考答案:B
8.在關系A(S,SN,D)和B(D,CN,NM)中,A的主關鍵字是S,B的主關
鍵字是D,則D是A的
A)外鍵(碼)
B)候選鍵(碼)
0主鍵(碼)
D)元組
參考答案:A
9.有兩個關系R,S如下,由關系R和S通過運算得到關系T,則所使用
的操作為
A)并
B)自然連接
0笛卡爾積
D)差
參考答案:D
10.在數據庫管理系統提供的數據語言中,負責數據模式定義的是
A)數據定義語言
B)數據管理語言
0數據操縱語言
D)數據控制語言
參考答案:A
11.流程圖是描述算法的很好的工具,一般的流程圖中由幾種基本圖
形組成。其中輸入輸出框的圖形是
A)平行四邊形
B)長方形
C)橢圓型
D)菱形
參考答案:A
12.設有以下代碼
do{
while(條件表達式1)
循環體A;
}while(條件表達式2);
while(條件表達式1)
(
do{
循環體B;
}while(條件表達式2);
其中,循環體A與循環體B相同,以下敘述正確的是
A)循環體A與循環體B的執行次數相同
B)循環體A比循環體B的執行次數多一次
0循環體A比循環體B的執行次數少一次
D)循環體A與循環體B的執行次數不確定
參考答案:A
13.C語言的常量包括數值型常量和符號常量,以下敘述正確的是
A)數值型常量1.0和1所占內存的大小不同
B)不能用sizeof求數值型常量所占內存的大小
0不能用sizeof求符號常量所占內存的大小
D)可以用&A取得符號常量A所占內存的首地址
參考答案:A
14.有以下程序
ftinclude<stdio.h>
main()
{inta;
a=(int)(-1.53*3);
printf("%d\n",a);
程序的運行結果是
A)-4
B)-3
C)-5
D)結果不確定
參考答案:A
15.若有定義:charc;intd;,程序運行時輸入:1,2〈回車》,
能把值1輸入給變量c、值2輸入給變量d的輸入語句是
A)scanf("%c,%d",&c,&d);
B)scanf("%c%d”,&c,&d);
C)scanf("%d,%f",&c,&d);
D)scanf("%d%d”,&c,&d);
參考答案:A
16.有以下程序
ftinclude<stdio.h>
main()
{intk=33;
printf("%d,%o,%x\n”,k,k,k);
}
程序的運行結果是
A)33,41,21
B)33,33,33
C)41,33,21
D)33,21,41
參考答案:A
17.有以下程序
ftinclude<stdio.h>
main()
{inta=0,b=0,c=0,d=0;
(a++&&b++)?c++:d++;
printf("%d,%d,%d,%d\n”,a,b,c,d);
}
程序的運行結果是
A)1,0,0,1
B)1,1,0,1
01,0,1,0
D)1,1,1,0
參考答案:A
18有以下程序
ftinclude<stdio.h>
main()
{inta,b;
for(a=0;a<3;a++)
{scanf("%d",&b);
switch(b)
{case1:printf("%d,",++b);
case2:printf("%d,",++b);
default:printf("%d,〃,++b);
執行時輸入:123〈回車》,則輸出結果是
A)2,3,4,3,4,4,
B)2,3,4,
C)2,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安徽農業大學《機電產品市場營銷學》2023-2024學年第二學期期末試卷
- 上海商學院《影視項目管理與品牌營銷》2023-2024學年第二學期期末試卷
- 安陽學院《MATAB語》2023-2024學年第二學期期末試卷
- 宣化科技職業學院《新聞學概論與實務》2023-2024學年第二學期期末試卷
- 桂林旅游學院《試驗設計方法》2023-2024學年第二學期期末試卷
- 西安郵電大學《供配電技術》2023-2024學年第二學期期末試卷
- 濟源職業技術學院《幼兒園環創》2023-2024學年第二學期期末試卷
- DB13(J)-T 8390-2020 建筑結構設計統一技術標準
- 均值不等式及其應用探究
- 新生兒紅斑護理課件
- 民族大團結 教育課件
- 金融監管學-中國鐵道出版社
- 2024年中國移動IT技術開發及運營管理通道考試題庫(含答案)
- 鋰電池出租合同范本
- 咽喉癌病歷書寫
- DB63T 2187-2023 丹巴腮扁葉蜂監測技術規程
- GA/T 2012-2023竊照專用器材鑒定技術規范
- 基坑降水計算-潛水完整井-非完整井
- 工程機械設備綜合保險附加操作人員責任保險-條款
- 自閉癥兒童融合教育鄧猛
- 抽水蓄能電站地下廠房典型布置培訓課件
評論
0/150
提交評論