2025年全國計算機二級等級考試全真模擬試卷及答案(共八套)_第1頁
2025年全國計算機二級等級考試全真模擬試卷及答案(共八套)_第2頁
2025年全國計算機二級等級考試全真模擬試卷及答案(共八套)_第3頁
2025年全國計算機二級等級考試全真模擬試卷及答案(共八套)_第4頁
2025年全國計算機二級等級考試全真模擬試卷及答案(共八套)_第5頁
已閱讀5頁,還剩182頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

2025年全國計算機二級等級考試全真模擬試卷及答案(共八套)2025年全國計算機二級等級考試全真模擬試卷及答案(第一套)1.設棧的順序存儲空間為S(0:49),棧底指針bottom=49,棧頂指針top=30(指向棧頂元素)。則棧中的元素個數(shù)為A)30B)29C)20D)19參考答案:C2.某二叉樹的前序序列為ABCDEFG,中序序列為DCBAEFG,則該二叉樹的深度(根結點在第1層)為A)2B)3C)4D)5參考答案:C3.下列敘述中正確的是A)存儲空間連續(xù)的數(shù)據(jù)結構一定是線性結構B)存儲空間不連續(xù)的數(shù)據(jù)結構一定是非線性結構C)沒有根結點的非空數(shù)據(jù)結構一定是線性結構D)具有兩個根結點的數(shù)據(jù)結構一定是非線性結構參考答案:D4.下列敘述中正確的是A)帶鏈隊列的存儲空間可以不連續(xù),但隊頭指針必須大于隊尾指針B)帶鏈隊列的存儲空間可以不連續(xù),但隊頭指針必須小于隊尾指針C)帶鏈隊列的存儲空間可以不連續(xù),且隊頭指針可以大于也可以小于隊尾指針D)帶鏈隊列的存儲空間一定是不連續(xù)的參考答案:C5.某系統(tǒng)結構圖如下圖所示該系統(tǒng)結構圖的寬度是A)2B)3C)4D)n參考答案:D6.下面不能作為軟件需求分析工具的是A)PAD圖B)數(shù)據(jù)字典(DD)C)數(shù)據(jù)流程圖(DFD圖)D)判定樹參考答案:A7.下面不屬于對象基本特點的是A)標識唯一性B)可復用性C)多態(tài)性D)封裝性參考答案:B8.在數(shù)據(jù)庫設計中,描述數(shù)據(jù)間內(nèi)在語義聯(lián)系得到E-R圖的過程屬于A)邏輯設計階段B)需求分析階段C)概念設計階段D)物理設計階段參考答案:C9.有兩個關系R,S如下,由關系R和S得到關系T,則所使用的操作為A)并B)自然連接C)差D)交參考答案:A10.關系數(shù)據(jù)模型A)只能表示實體間1:1聯(lián)系B)只能表示實體間1:m聯(lián)系C)可以表示實體間m:n聯(lián)系D)能表示實體間1:n聯(lián)系而不能表示實體間n:1聯(lián)系參考答案:C11.以下選項中敘述正確的是A)C程序中的語句要經(jīng)過編譯才能轉換成二進制機器指令B)算法需要包含所有三種基本結構C)有些算法不能用三種基本結構來表達D)簡單算法的操作步驟不能超過20步參考答案:A12.以下選項中敘述正確的是A)復雜任務可以分解成簡單子任務B)C語言程序中的所有函數(shù)必須保存在同一個源文件中C)全部三種基本結構都包含的才是結構化程序D)C語言程序可以定義多個不同內(nèi)容的main函數(shù)參考答案:A13.以下選項中,合法的數(shù)值型常量是A)3.1415B)"A"C)092D)0xDH參考答案:A14.以下選項中,合法的實數(shù)是A)4.5E2B)E1.3C)7.11ED)1.2E1.2參考答案:A15.若有定義inta,b,c;以下選項中的賦值語句正確的是A)a=(b=c)+1;B)(a=b)=c=1;C)a=(b==c)=1;D)a+b=c;參考答案:A16.有如下程序#include<stdio.h>main(){intx=0x13;printf("%d\n",x+1);}程序運行后的輸出結果是A)20B)14C)12D)13參考答案:A17.對于if(表達式)語句,以下敘述正確的是A)"表達式"的值可以是任意合法的數(shù)值B)在"表達式"中不能出現(xiàn)變量C)在"表達式"中不能出現(xiàn)常量D)"表達式"的值必須是邏輯值參考答案:A18.以下程序段中,不能實現(xiàn)條件"如果a<b則x=10,否則x=-10"的是A)if(a<b)x=10;if(b<a)x=-10;B)if(a<b)x=10;elsex=-10;C)x=-10;if(a<b)x=10;D)x=(a>=b)?-10:10;參考答案:A19.以下能夠實現(xiàn)計算5!的程序段是A)intfac=1,k=0;do{k++;fac*=k;}while(k<5);B)intfac=0,k=1;do{fac*=k;k++;}while(k<5);C)intfac=1,k=1;do{k++;fac*=k;}while(k<=5);D)intfac=1,k=0;do{fac*=k;k++;}while(k<5);參考答案:A20.有以下程序#include<stdio.h>main(){intx=0,y=6;do{while(--y)x++;}while(y--);printf("%d,%d\n",x,y);}程序的運行結果是A)5,-1B)6,0C)5,0D)6,-1參考答案:A21.有以下程序#include<stdio.h>main(){char*s="120119110";intn0,n1,n2,nn,i;n0=n1=n2=nn=i=0;do{switch(s[i++]){default:nn++;case'0':n0++;case'1':n1++;case'2':n2++;}}while(s[i]);printf("n0=%d,n1=%d,n2=%d,nn=%d\n",n0,n1,n2,nn);}程序的運行結果是A)n0=3,n1=8,n2=9,nn=1B)n0=2,n1=5,n2=1,nn=1C)n0=2,n1=7,n2=10,nn=1D)n0=4,n1=8,n2=9,nn=1參考答案:A22.有以下程序#include<stdio.h>intm1(intx,inty){returnx<=y?x:y;}intm2(intx,inty){returnx<=y?y:x;}intfun(inta,intb){returna+b;}main(){intx=2,y=3,z=1;printf("%d\n",fun(m1(x,y),m2(y,z)));}程序的運行結果是A)5B)6C)4D)3參考答案:A23.有如下程序#include<stdio.h>intsub(doublea,doubleb){return(int)(a-b);}main(){printf("%d\n",sub(3.8,2.1));}程序運行后的輸出結果是A)1B)1.7C)2D)2.0參考答案:A24.有如下程序#include<stdio.h>main(){char*p1=0;int*p2=0;double*p3=0;printf("%d,%d,%d\n",sizeof(p1),sizeof(p2),sizeof(p3));}程序運行后的輸出結果是A)4,4,4B)1,4,8C)0,0,0D)1,2,4參考答案:A25.有如下程序#include<stdio.h>main(){inta=0,*ptr;ptr=&a;*ptr=3;a=(*ptr)++;printf("%d,%d\n",a,*ptr);}程序運行后的輸出結果是A)4,4B)0,1C)1,4D)0,4參考答案:A26.有如下程序#include<stdio.h>main(){inti,k;intarray[4][2]={{1,2},{4,9},{6}};for(i=0;i<2;i++)for(k=0;k<4;k++){printf("%d,",array[k][i]);}printf("\n");}程序運行后的輸出結果是A)1,4,6,0,2,9,0,0,B)1,2,4,9,6,C)2,9,0,0,1,4,6,0,D)2,9,6,1,4,參考答案:A27.有如下程序#include<stdio.h>main(){inti,*ptr;intarray[3]={8,2,4};for(ptr=array,i=0;i<2;i++)printf("%d,",*ptr++);printf("\n");}程序運行后的輸出結果是A)8,2,B)8,8,C)2,4,D)4,8,參考答案:A28.有如下程序#include<stdio.h>main(){inti,*ptr;intarray[5]={5,3,1};for(ptr=array,i=0;i<5;i++,ptr++){if(*ptr==0)putchar('X');elseputchar('A'+*ptr);}printf("\n");}程序運行后的輸出結果是A)FDBXXB)FFFXXC)FDBBBD)ABCDE參考答案:A29.有如下程序#include<stdio.h>#include<string.h>main(){charname[10]="c-book";char*str=name;printf("%d,%d,%d,%d\n",sizeof(name),strlen(name),sizeof(str),strlen(str));}程序運行后的輸出結果是A)10,6,4,6B)11,6,11,6C)11,6,1,6D)10,7,1,7參考答案:A30.有如下程序#include<stdio.h>main(){charname[10]={'S','T','R','I','N','G'};name[3]='E';name[5]=0;printf("%s\n",name);}程序運行后的輸出結果是A)STRENB)STRIEGC)STRENGD)STREN0參考答案:A31.有如下程序#include<stdio.h>intdisp(char*str){while(*str)putchar(*str++);return*str;}main(){printf("%d\n",disp("NAME"));}程序運行后的輸出結果是A)NAME0B)NAMEEC)NAMED)NAME\0參考答案:A32.有如下程序#include<stdio.h>main(){char*p,old_str[10]="wind";intpassword;scanf("%d",&password);p=old_str;while(*p){printf("%c",*p+password);p++;}printf("\n");}程序運行時,從鍵盤輸入2<回車>,輸出結果是A)ykpfB)windC)xjoeD)2222參考答案:A33.有如下程序#include<stdio.h>intsum(int*array,intlen){if(len==0)returnarray[0];elsereturnarray[0]+sum(array+1,len-1);}main(){intarray[5]={1,2,3,4,5};intres=sum(array,4);printf("%d\n",res);}程序運行后的輸出結果是A)15B)10C)8D)1參考答案:A34.有如下程序#include<stdio.h>int*sum(intdata){staticintinit=0;init+=data;return&init;}main(){inti,*p;for(i=1;i<=4;i++)sum(i);p=sum(0);printf("%d\n",*p);}程序運行后的輸出結果是A)10B)0C)1D)15參考答案:A35.有如下程序#include<stdio.h>#defineD(x)4*x+1main(){inti=2,j=4;printf("%d\n",D(i+j));}程序運行后的輸出結果是A)13B)25C)9D)12參考答案:A36.有如下程序#include<stdio.h>structS{intx,y;};main(){structSdata[2]={4,3,1,9};inti;for(i=0;i<2;i++)printf("%d,%d;",data[i].x,data[i].y>>1);printf("\n");}程序運行后的輸出結果是A)4,1;1,4;B)4,1;2,4;C)4,3;1,9;D)4,3;2,3;參考答案:A37.有如下程序#include<stdio.h>#include<string.h>structS{charname[10];};voidchange(structS*data,intvalue){strcpy(data->name,"****");value=13;}main(){structSinput;intnum=4;strcpy(,"THIS");change(&input,num);printf("%s,%d\n",,num);}程序運行后的輸出結果是A)****,4B)****,13C)THIS,4D)THIS,13參考答案:A38.有如下程序#include<stdio.h>#include<string.h>structS{charname[10];};main(){structSs1,s2;strcpy(,"12345");strcpy(,"ABC");s1=s2;printf("%s\n",);}程序運行后的輸出結果是A)ABCB)ABC45C)12345D)ABC12參考答案:A39.有如下程序#include<stdio.h>main(){inti,array[5]={3,5,10,4};for(i=0;i<5;i++)printf("%d,",array[i]&3);printf("\n");}程序運行后的輸出結果是A)3,1,2,0,0,B)3,5,10,4,0,C)3,3,3,3,0,D)3,2,2,2,0,參考答案:A40.有如下程序#include<stdio.h>main(){inti;FILE*fp;for(i=0;i<5;i++){fp=fopen("output.txt","w");fputc('A'+i,fp);fclose(fp);}}程序運行后,在當前目錄下會生成一個output.txt文件,其內(nèi)容是A)EB)EOFC)ABCDED)A參考答案:A2025年全國計算機二級等級考試全真模擬試卷及答案(第二套)1.下列敘述中正確的是A)一個算法的空間復雜度大,則其時間復雜度也必定大B)一個算法的空間復雜度大,則其時間復雜度必定小C)一個算法的時間復雜度大,則其空間復雜度必定小D)算法的時間復雜度與空間復雜度沒有直接關系參考答案:D2.下列敘述中正確的是A)循環(huán)隊列中的元素個數(shù)隨隊頭指針與隊尾指針的變化而動態(tài)變化B)循環(huán)隊列中的元素個數(shù)隨隊頭指針的變化而動態(tài)變化C)循環(huán)隊列中的元素個數(shù)隨隊尾指針的變化而動態(tài)變化D)以上說法都不對參考答案:A3.棵二叉樹中共有80個葉子結點與70個度為1的結點,則該二叉樹中的總結點數(shù)為A)219B)229C)230D)231參考答案:B4.對長度為10的線性表進行冒泡排序,最壞情況下需要比較的次數(shù)為A)9B)10C)45D)90參考答案:C5.構成計算機軟件的是A)源代碼B)程序和數(shù)據(jù)C)程序和文檔D)程序、數(shù)據(jù)及相關文檔參考答案:D6.軟件生命周期可分為定義階段、開發(fā)階段和維護階段,下面不屬于開發(fā)階段任務的是A)測試B)設計C)可行性研究D)實現(xiàn)參考答案:C7.下面不能作為結構化方法軟件需求分析工具的是A)系統(tǒng)結構圖B)數(shù)據(jù)字典(DD)C)數(shù)據(jù)流程圖(DFD圖)D)判定表參考答案:A8.在關系模型中,每一個二維表稱為一個A)關系B)屬性C)元組D)主碼(鍵)參考答案:A9.若實體A和B是一對多的聯(lián)系,實體B和C是一對一的聯(lián)系,則實體A和C的聯(lián)系是A)一對一B)一對多C)多對一D)多對多參考答案:B10.A)選擇B)投影C)交D)并參考答案:D11.以下敘述中正確的是A)C語言程序所調(diào)用的函數(shù)必須放在main函數(shù)的前面B)C語言程序總是從最前面的函數(shù)開始執(zhí)行C)C語言程序中main函數(shù)必須放在程序的開始位置D)C語言程序總是從main函數(shù)開始執(zhí)行參考答案:D12.C語言程序中,運算對象必須是整型數(shù)的運算符是A)&&B)/C)%D)*參考答案:C13.有以下程序#include<stdio.h>main(){intsum,pad,pAd;sum=pad=5;pAd=++sum,pAd++,++pad;printf("%d\n",pad);}程序的輸出結果是A)5B)6C)7D)8參考答案:B14.有以下程序#include<stdio.h>main(){inta=3;a+=a-=a*a;printf("%d\n",a);}程序的輸出結果是A)0B)9C)3D)-12參考答案:D15.sizeof(double)是A)一個整型表達式B)一個雙精度型表達式C)一個不合法的表達式D)一種函數(shù)調(diào)用參考答案:A16.有以下程序#include<stdio.h>main(){inta=2,c=5;printf("a=%%d,b=%%d\n",a,c);}程序的輸出結果是A)a=2,b=5B)a=%2,b=%5C)a=%d,b=%dD)a=%%d,b=%%d參考答案:C17.若有定義語句:chara='\82';則變量aA)說明不合法B)包含1個字符C)包含2個字符D)包含3個字符參考答案:A18.有以下程序#include<stdio.h>main(){charc1='A',c2='Y';printf("%d,%d\n",c1,c2);}程序的輸出結果是A)輸出格式不合法,輸出出錯信息B)65,89C)65,90D)A,Y參考答案:B19.若變量已正確定義for(x=0,y=0;(y!=99&&x<4);x++)則以上for循環(huán)A)執(zhí)行3次B)執(zhí)行4次C)執(zhí)行無限次D)執(zhí)行次數(shù)不定參考答案:B20.對于while(!E)s;,若要執(zhí)行循環(huán)體s,則E的取值應為:A)E等于1B)E不等于0C)E不等于1D)E等于0參考答案:D21.有以下程序#include<stdio.h>main(){intx;for(x=3;x<6;x++)printf((x%2)?("*%d"):("#%d"),x);printf("\n");}程序的輸出結果是A)*3#4*5B)#3*4#5C)*3*4#5D)*3#4#5參考答案:A22.有以下程序#include<stdio.h>main(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1){b=b+3;continue;}b=b-5;}printf("%d\n",a);}程序的輸出結果是A)10B)9C)8D)7參考答案:B23.有以下程序#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)00B)43C)34D)71參考答案:D24.有以下程序#include<stdio.h>voidfun(int*p,int*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)90B)00C)99D)09參考答案:C25.有以下程序#include<stdio.h>main(){inta[]={2,4,6,8,10},x,*p,y=1;p=&a[1];for(x=0;x<3;x++)y+=*(p+x);printf("%d\n",y);}程序的輸出結果是A)13B)19C)11D)15參考答案:B26.有以下程序#include<stdio.h>main(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d",x[i][2-i]);printf("\n");}程序的輸出結果是A)150B)357C)147D)369參考答案:B27.設有某函數(shù)的說明為int*func(inta[10],intn);則下列敘述中,正確的是A)形參a對應的實參只能是數(shù)組名B)說明中的a[10]寫成a[]或*a效果完全一樣C)func的函數(shù)體中不能對a進行移動指針(如a++)的操作D)只有指向10個整數(shù)內(nèi)存單元的指針,才能作為實參傳給a參考答案:B28.有以下程序#include<stdio.h>charfun(char*c){if(*c<='Z'&&*c>='A')*c-='A'-'a';return*c;}main(){chars[81],*p=s;gets(s);while(*p){*p=fun(p);putchar(*p);p++;}printf("\n");}若運行時從鍵盤上輸入OPENTHEDOOR<回車>,程序的輸出結果是A)OPENTHEDOORB)oPENtHEdOORC)openthedoorD)OpenTheDoor參考答案:C29.設有定義語句:char*aa[2]={"abcd","ABCD"};則以下敘述正確的是A)aa[0]存放了字符串"abcd"的首地址B)aa數(shù)組的兩個元素只能存放含有4個字符的一維數(shù)組的首地址C)aa數(shù)組的值分別是字符串"abcd"和"ABCD"D)aa是指針變量,它指向含有兩個元素的字符型數(shù)組參考答案:A30.有以下程序#include<stdio.h>intfun(char*s){char*p=s;while(*p!=0)p++;return(p-s);}main(){printf("%d\n",fun("goodbey!"));}程序的輸出結果是A)0B)6C)7D)8參考答案:C31.有以下程序#include<stdio.h>intfun(intn){inta;if(n==1)return1;a=n+fun(n-1);return(a);}main(){printf("%d\n",fun(5));}程序的輸出結果是A)9B)14C)10D)15參考答案:D32.有以下程序#include<stdio.h>intd=1;voidfun(intp){intd=5;d+=p++;printf("%d",d);}main(){inta=3;fun(a);d+=a++;printf("%d\n",d);}程序的輸出結果是A)84B)96C)94D)85參考答案:A33.有以下程序#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)4B)0C)1D)2參考答案:B34.有以下程序#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]-'0';printf("%d\n",s);}程序的輸出結果是A)693825B)69825C)63825D)6385參考答案:D35.有以下程序#include<stdio.h>#defineSQR(X)X*Xmain(){inta=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("%d\n",a);}程序的輸出結果是A)0B)1C)9D)10參考答案:B36.有以下程序#include<stdio.h>main(){charx=2,y=2,z;z=(y<<1)&(x>>1);printf("%d\n",z);}程序的輸出結果是A)1B)0C)4D)8參考答案:B37.有以下程序#include<stdio.h>structS{inta;intb;};main(){structSa,*p=&a;a.a=99;printf("%d\n",__________);}程序要求輸出結構體中成員a的數(shù)據(jù),以下不能填入橫線處的內(nèi)容是A)a.aB)*p.aC)p->aD)(*p).a參考答案:B38.有以下程序#include<stdio.h>#include<stdlib.h>voidfun(double*p1,double*p2,double*s){s=(double*)calloc(1,sizeof(double));*s=*p1+*(p2+1);}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.10B)11.10C)12.10D)1.10參考答案:D39.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;參考答案:A40.若fp已定義為指向某文件的指針,且沒有讀到該文件的末尾,則C語言函數(shù)feof(fp)的函數(shù)返回值是A)EOFB)非0C)-1D)0參考答案:D2025年全國計算機二級等級考試全真模擬試卷及答案(第三套)1.下列敘述中正確的是A)算法的效率只與問題的規(guī)模有關,而與數(shù)據(jù)的存儲結構無關B)算法的時間復雜度是指執(zhí)行算法所需要的計算工作量C)數(shù)據(jù)的邏輯結構與存儲結構是一一對應的D)算法的時間復雜度與空間復雜度一定相關參考答案:B2.下列敘述中正確的是A)線性表鏈式存儲結構的存儲空間一般要少于順序存儲結構B)線性表鏈式存儲結構與順序存儲結構的存儲空間都是連續(xù)的C)線性表鏈式存儲結構的存儲空間可以是連續(xù)的,也可以是不連續(xù)的D)以上說法均錯誤參考答案:C3.某二叉樹共有12個結點,其中葉子結點只有1個。則該二叉樹的深度為(根結點在第1層)A)3B)6C)8D)12參考答案:D4.對長度為n的線性表作快速排序,在最壞情況下,比較次數(shù)為A)nB)n-1C)n(n-1)D)n(n-1)/2參考答案:D5.結構化程序設計中,下面對goto語句使用描述正確的是A)禁止使用goto語句B)使用goto語句程序效率高C)應避免濫用goto語句D)以上說法均錯誤參考答案:C6.下面不屬于軟件測試實施步驟的是A)集成測試B)回歸測試C)確認測試D)單元測試參考答案:B7.下面不屬于軟件需求分析階段主要工作的是A)需求變更申請B)需求分析C)需求評審D)需求獲取參考答案:A8.一般情況下,當對關系R和S進行自然連接時,要求R和S含有一個或者多個共有的A)記錄B)行C)屬性D)元組參考答案:C9.A)選擇B)差C)交D)并參考答案:B10.有表示公司和職員及工作的三張表,職員可在多家公司兼職。其中公司C(公司號,公司名,地址,注冊資本,法人代表,員工數(shù)),職員S(職員號,姓名,性別,年齡,學歷),工作W(公司號,職員號,工資),則表W的鍵(碼)為A)公司號,職員號B)職員號,工資C)職員號D)公司號,職員號,工資參考答案:A11.以下敘述中正確的是A)每個后綴為.C的C語言源程序都可以單獨進行編譯B)每個后綴為.C的C語言源程序都應該包含一個main函數(shù)C)在C語言程序中,main函數(shù)必須放在其他函數(shù)的最前面D)在C語言程序中,只有main函數(shù)才可單獨進行編譯參考答案:A12.C語言中的標識符分為關鍵字、預定義標識符和用戶標識符,以下敘述正確的是A)關鍵字可用作用戶標識符,但失去原有含義B)預定義標識符可用作用戶標識符,但失去原有含義C)在標識符中大寫字母和小寫字母被認為是相同的字符D)用戶標識符可以由字母和數(shù)字任意順序組成參考答案:B13.以下選項中合法的常量是A)999B)2.7eC)0XabD)123E0.2參考答案:C14.C語言主要是借助以下哪種手段來實現(xiàn)程序模塊化A)定義函數(shù)B)定義常量和外部變量C)使用豐富的數(shù)據(jù)類型D)使用三種基本結構語句參考答案:A15.以下敘述中錯誤的是A)數(shù)值型常量有正值和負值的區(qū)分B)常量可以用一個符號名來代表C)定義符號常量必須用類型名來設定常量的類型D)常量是在程序運行過程中值不能被改變的量參考答案:C16.若有定義和語句:inta,b;scanf("%d,%d,",&a,&b);以下選項中的輸入數(shù)據(jù),不能把值3賦給變量a、5賦給變量b的是A)3,5,4B)3,5C)3,5,D)3,5參考答案:D17.C語言中char類型數(shù)據(jù)占字節(jié)數(shù)為A)1B)2C)3D)4參考答案:A18.下列關系表達式中,結果為"假"的是A)3<=4B)(3<4)==1C)(3+4)>6D)(3!=4)>2參考答案:D19.若以下選項中的變量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){case1:case3:y=a+b;break;case0: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;}參考答案:A20.有以下程序#include<stdio.h>main(){inta=-2,b=0;while(a++&&++b);printf("%d,%d\n",a,b);}程序運行后輸出結果是A)0,2B)0,3C)1,3D)1,2參考答案:D21.設有定義:intx=0,*p;緊接著的賦值語句正確的是A)*p=NULL;B)p=NULL;C)p=x;D)*p=x;參考答案:B22.下列敘述中正確的是A)空字符串不占用內(nèi)存,其內(nèi)存空間大小是0B)兩個連續(xù)的單引號('')是合法的字符常量C)可以對字符串進行關系運算D)兩個連續(xù)的雙引號("")是合法的字符串常量參考答案:D23.有以下程序#include<stdio.h>main(){chara='H';a=(a>='A'&&a<='Z')?(a+32):a;printf("%c\n",a);}程序運行后的輸出結果是A)HB)hC)AD)a參考答案:B24.有以下程序#include<stdio.h>intf(intx);main(){inta,b=0;for(a=0;a<3;a+=1){b+=f(a);putchar('A'+b);}}intf(intx){returnx*x+1;}程序運行后輸出結果是A)ABEB)BCDC)BDID)BCF參考答案:C25.設有定義:intx[2][3];則以下關于二維數(shù)組x的敘述錯誤的是A)元素x[0]可看作是由3個整型元素組成的一維數(shù)組B)數(shù)組x可以看作是由x[0]和x[1]兩個元素組成的一維數(shù)組C)可以用x[0]=0;的形式為數(shù)組所有元素賦初值0D)x[0]和x[1]是數(shù)組名,分別代表一個地址常量參考答案:C26.設p是指針變量,語句p=NULL;等價于A)p='0';B)p='';C)p="";D)p=0;參考答案:D27.有以下程序#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)10B)20C)30D)40參考答案:C28有以下程序#include<stdio.h>#defineN3voidfun(inta[][N],intb[]){inti,j;for(i=0;i<N;i++){b[i]=a[i][0];for(j=1;j<N;j++)if(b[i]<a[i][j])b[i]=a[i][j];}}main(){intx[N][N]={1,2,3,4,5,6,7,8,9},y[N],i;fun(x,y);for(i=0;i<N;i++)printf("%d,",y[i]);printf("\n");}程序運行后的輸出結果是A)3,5,7B)1,3,5,C)2,4,8,D)3,6,9,參考答案:D29.有以下程序(strcpy為字符串復制函數(shù),strcat為字符串連接函數(shù))#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)a12xyzB)bc2yzC)a2yzD)12yz參考答案:C30.以下選項中,沒有編譯錯誤的是A)charstr3[]={'d','e','b','u','g','\0'};B)charstr1[5]="pass",str2[6];str2=str1;C)charname[10];name="china";D)charstr4[];str4="helloworld";參考答案:A31.有以下程序#include<stdio.h>main(){char*s="12134";intk=0,a=0;while(s[k+1]){k++;if(k%2==0){a=a+(s[k]-'0'+1);continue;}a=a+(s[k]-'0');}printf("k=%da=%d\n",k,a);}程序運行后的輸出結果是A)k=5a=15B)k=4a=12C)k=6a=11D)k=3a=14參考答案:B32.有以下程序#include<stdio.h>main(){chara[5][10]={"one","two","three","four","five"};inti,j;chart;for(i=0;i<2;i++)for(j=i+1;j<5;j++)if(a[i][0]>a[j][0]){t=a[i][0];a[i][0]=a[j][0];a[j][0]=t;}puts(a[1]);}程序運行后的輸出結果是A)owoB)fwoC)twoD)fix參考答案:B33.有以下程序#include<stdio.h>inta=1,b=2;voidfun1(inta,intb){printf("%d%d",a,b);}voidfun2(){a=3;b=4;}main(){fun1(5,6);fun2();printf("%d%d\n",a,b);}程序運行后的輸出結果是A)5612B)3456C)1256D)5634參考答案:D34.有以下程序#include<stdio.h>voidfunc(intn){staticintnum=1;num+=n;printf("%d",num);}main(){func(3);func(4);printf("\n");}程序運行后的輸出是A)45B)48C)35D)34參考答案:B35.有以下程序#include<stdio.h>#include<stdlib.h>voidfun(int*p1,int*p2,int*s){s=(int*)calloc(1,sizeof(int));*s=*p1+*p2;free(s);}main(){inta[2]={1,2},b[2]={40,50},*q=a;fun(a,b,q);printf("%d\n",*q);}程序運行后的輸出結果是A)42B)41C)1D)0參考答案:C36.有以下程序#include<stdio.h>structSTU{charname[9];charsex;intscore[2];};voidf(structSTUa[]){structSTUb={"Zhao",'m',85,90};a[1]=b;}main(){structSTUc[2]={{"Qian",'f',95,92},{"Sun",'m',98,99}};f(c);printf("%s,%c,%d,%d,",c[0].name,c[0].sex,c[0].score[0],c[0].score[1]);printf("%s,%c,%d,%d\n",c[1].name,c[1].sex,c[1].score[0],c[1].score[1]);}程序運行后輸出結果是A)Qian,f,95,92,Sun,m,98,99B)Qian,f,95,92,Zhao,m,85,90C)Zhao,m,85,90,Sun,m,98,99D)Zhao,m,85,90,Qian,f,95,92參考答案:B37.以下敘述中錯誤的是A)用typedef可以說明一種新的類型名B)typedef的作用是用一個新的標識符來代表已存在的類型名C)可以用typedef說明的新類型名來定義變量D)typedef說明的新類型名必須使用大寫字母,否則會出編譯錯誤參考答案:D38.以下敘述中錯誤的是A)只要類型相同,結構體變量之間可以整體賦值B)函數(shù)的返回值類型不能是結構體類型,只能是簡單類型C)可以通過指針變量來訪問結構體變量的任何成員D)函數(shù)可以返回指向結構體變量的指針參考答案:B39.若有定義語句intb=2;則表達式(b<<2)/(3||b)的值是A)0B)2C)4D)8參考答案:D40.有以下程序#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("%d,",a[i]);}程序運行后輸出結果是A)1,2,3,4,5,6,B)6,5,4,3,2,1,C)4,5,6,1,2,3,D)1,2,3,3,2,1,參考答案:B2025年全國計算機二級等級考試全真模擬試卷及答案(第四套)1.下列敘述中正確的是A)有且只有一個根結點的數(shù)據(jù)結構一定是線性結構B)每一個結點最多有一個前件也最多有一個后件的數(shù)據(jù)結構一定是線性結構C)有且只有一個根結點的數(shù)據(jù)結構一定是非線性結構D)有且只有一個根結點的數(shù)據(jù)結構可能是線性結構,也可能是非線性結構參考答案:D2.下列敘述中錯誤的是A)在雙向鏈表中,可以從任何一個結點開始直接遍歷到所有結點B)在循環(huán)鏈表中,可以從任何一個結點開始直接遍歷到所有結點C)在線性單鏈表中,可以從任何一個結點開始直接遍歷到所有結點D)在二叉鏈表中,可以從根結點開始遍歷到所有結點參考答案:C3.某二叉樹共有13個結點,其中有4個度為1的結點,則葉子結點數(shù)為A)5B)4C)3D)2參考答案:A04.設棧的順序存儲空間為S(1:50),初始狀態(tài)為top=0?,F(xiàn)經(jīng)過一系列入棧與退棧運算后,top=20,則當前棧中的元素個數(shù)為A)30B)29C)20D)19參考答案:C5.設棧的順序存儲空間為S(1:50),初始狀態(tài)為top=0?,F(xiàn)經(jīng)過一系列入棧與退棧運算后,top=20,則當前棧中的元素個數(shù)為A)30B)29C)20D)19參考答案:C6.程序測試的目的是A)執(zhí)行測試用例B)發(fā)現(xiàn)并改正程序中的錯誤C)發(fā)現(xiàn)程序中的錯誤D)診斷和改正程序中的錯誤參考答案:C7.下面屬于系統(tǒng)軟件的是A)財務管理系統(tǒng)B)數(shù)據(jù)庫管理系統(tǒng)C)編輯軟件WordD)殺毒軟件參考答案:B8.在關系A(S,SN,D)和B(D,CN,NM)中,A的主關鍵字是S,B的主關鍵字是D,則D是A的A)外鍵(碼)B)候選鍵(碼)C)主鍵(碼)D)元組參考答案:A9.有兩個關系R,S如下,由關系R和S通過運算得到關系T,則所使用的操作為A)并B)自然連接C)笛卡爾積D)差參考答案:D10.在數(shù)據(jù)庫管理系統(tǒng)提供的數(shù)據(jù)語言中,負責數(shù)據(jù)模式定義的是A)數(shù)據(jù)定義語言B)數(shù)據(jù)管理語言C)數(shù)據(jù)操縱語言D)數(shù)據(jù)控制語言參考答案:A11.流程圖是描述算法的很好的工具,一般的流程圖中由幾種基本圖形組成。其中輸入輸出框的圖形是A)平行四邊形B)長方形C)橢圓型D)菱形參考答案:A12.設有以下代碼do{while(條件表達式1)循環(huán)體A;}while(條件表達式2);while(條件表達式1){do{循環(huán)體B;}while(條件表達式2);}其中,循環(huán)體A與循環(huán)體B相同,以下敘述正確的是A)循環(huán)體A與循環(huán)體B的執(zhí)行次數(shù)相同B)循環(huán)體A比循環(huán)體B的執(zhí)行次數(shù)多一次C)循環(huán)體A比循環(huán)體B的執(zhí)行次數(shù)少一次D)循環(huán)體A與循環(huán)體B的執(zhí)行次數(shù)不確定參考答案:A13.C語言的常量包括數(shù)值型常量和符號常量,以下敘述正確的是A)數(shù)值型常量1.0和1所占內(nèi)存的大小不同B)不能用sizeof求數(shù)值型常量所占內(nèi)存的大小C)不能用sizeof求符號常量所占內(nèi)存的大小D)可以用&A取得符號常量A所占內(nèi)存的首地址參考答案:A14.有以下程序#include<stdio.h>main(){inta;a=(int)(-1.53*3);printf("%d\n",a);}程序的運行結果是A)-4B)-3C)-5D)結果不確定參考答案:A15.若有定義: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);參考答案:A16.有以下程序#include<stdio.h>main(){intk=33;printf("%d,%o,%x\n",k,k,k);}程序的運行結果是A)33,41,21B)33,33,33C)41,33,21D)33,21,41參考答案:A17.有以下程序#include<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,1B)1,1,0,1C)1,0,1,0D)1,1,1,0參考答案:A18有以下程序#include<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);}}}執(zhí)行時輸入:123<回車>,則輸出結果是A)2,3,4,3,4,4,B)2,3,4,C)2,2,2,3,3,4,D)2,3,4,3,4,5,4,5,6參考答案:A19有以下程序#include<stdio.h>main(){inta=-1,b=-1;while(++a)++b;printf("%d,%d\n",a,b);}程序的運行結果是A)0,-1B)0,0C)-1,-1D)結果不確定參考答案:A20有以下程序#include<stdio.h>main(){inta=0,b=0;for(;a<5;a++){if(a%2==0)continue;b+=a;}printf("%d\n",b);}程序的運行結果是A)4B)10C)0D)15參考答案:A21以下選項中非法的C語言字符常量是A)'\128'B)'\127'C)'\x01'D)'\x08'參考答案:A22有以下程序#include<stdio.h>main(){charc;while((c=getchar())!='#')putchar(c);}執(zhí)行時如輸入abcdefg##<回車>,則輸出結果是A)abcdefgB)abcdefg#C)abcdefg##D)##參考答案:A23若要使用C數(shù)學庫中的sin函數(shù),需要在源程序的頭部加上#include<math.h>關于引用數(shù)學庫,以下敘述正確的是A)通過引用math.h文件,說明sin函數(shù)的參數(shù)個數(shù)和類型,以及函數(shù)返回值類型B)將數(shù)學庫中sin函數(shù)鏈接到編譯生成的可執(zhí)行文件中,以便能正確運行C)將數(shù)學庫中sin函數(shù)的源程序插入到引用處,以便進行編譯鏈接D)實際上,不引用math.h文件也能正確調(diào)用sin函數(shù)參考答案:A24以下關于地址和指針的敘述中正確的是A)可以取變量的地址賦值給同類型的指針變量B)可以取常量的地址賦值給同類型的指針變量C)可以取一個指針變量的地址賦給本指針變量,這樣就使得指針變量指向自身D)所有指針變量如果未賦初值,則自動賦空值NULL參考答案:A25有以下程序#include<stdio.h>intk=5;voidf(int*s){*s=k;}main(){intm=3,*p=&m;f(p);printf("%d,%d",m,*p);}程序的運行結果是A)5,5B)3,3C)3,5D)5,3參考答案:A26有以下程序#include<stdio.h>int*f(int*s,int*t){if(*s<*t)s=t;returns;}main(){inti=3,j=5,*p=&i,*q=&j,*r;r=f(p,q);printf("%d,%d,%d,%d,%d\n",i,j,*p,*q,*r);}程序的運行結果是A)3,5,3,5,5B)3,5,5,5,5C)5,3,3,3,5D)5,5,5,5,5參考答案:A27有以下程序#include<stdio.h>#defineN4voidfun(inta[][N]){intb[N][N],i,j;for(i=0;i<N;i++)for(j=0;j<N;j++)b[i][j]=a[N-1-j][i];for(i=0;i<N;i++)for(j=0;j<N;j++)a[i][j]=b[i][j];}main(){intx[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i;fun(x);for(i=0;i<N;i++)printf("%d,",x[i][i]);printf("\n");}程序的運行結果是A)13,10,7,4,B)1,6,11,16,C)4,7,10,13,D)1,5,9,13,參考答案:A28有以下程序#include<stdio.h>voidfun(inta[],intn){inti,j=0,k=n-1,b[10];for(i=0;i<n/2;i++){b[i]=a[j];b[k]=a[j+1];j+=2;k--;}for(i=0;i<n;i++)a[i]=b[i];}main(){intc[10]={10,9,8,7,6,5,4,3,2,1},i;fun(c,10);for(i=0;i<10;i++)printf("%d,",c[i]);printf("\n");}程序的運行結果是A)10,8,6,4,2,1,3,5,7,9,B)10,9,8,7,6,5,4,3,2,1,C)1,2,3,4,5,6,7,8,9,10,D)1,3,5,7,9,10,8,6,4,2,參考答案:A29有以下程序#include<stdio.h>#include<string.h>main(){inti;chara[]="Howareyou!";for(i=0;a[i];i++)if(a[i]=='')strcpy(a,&a[i+1]);printf("%s\n",a);}程序的運行結果是A)areyou!B)Howareyou!C)areyou!D)areyou!參考答案:A30有以下程序(其中庫函數(shù)strstr()首部格式為:char*strstr(char*p1,char*p2)其功能是確定p2字符串是否在p1中出現(xiàn),并返回p2第一次出現(xiàn)的字符串首地址)#include<stdio.h>#include<string.h>char*a="you";char*b="WelcomeyoutoBeijing!";main(){char*p;p=strstr(b,a);printf("%s\n",p);}程序的運行結果是A)youtoBeijing!B)toBeijing!C)WelcomeyoutoBeijing!D)Beijing!參考答案:A31有以下程序#include<stdio.h>main(){charb[3][10];inti;for(i=0;i<2;i++)scanf("%s",b[i]);gets(b[2]);printf("%s%s%s\n",b[0],b[1],b[2]);}執(zhí)行時若從第一列輸入:Figflowerisred.<回車>則輸出結果是A)Figflowerisred.B)Figflowerisred.C)Figflowerisred.D)Figflowerisred.參考答案:A32有以下程序#include<stdio.h>#include<string.h>main(){charw[20],a[5][10]={"abcdef","ghijkl","mnopq","rstuv","wxyz

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論