2023年04月全國計算機(jī)等級考試二級C語言真題_第1頁
2023年04月全國計算機(jī)等級考試二級C語言真題_第2頁
2023年04月全國計算機(jī)等級考試二級C語言真題_第3頁
2023年04月全國計算機(jī)等級考試二級C語言真題_第4頁
2023年04月全國計算機(jī)等級考試二級C語言真題_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

2023年3月二級C語言筆試真題((1)—(10)每小題2分,(11)—(50)每題1分,共60分)

下列各題A)、B)、C)、D)四個選項中,只有一個選項是對的的,請將對的選項涂寫在答題卡相應(yīng)位置上,答在試卷上不得分。

(1)下列敘述中對的的是

A)棧是“先進(jìn)先出”的線性表?B)隊列是“先進(jìn)先出”的線性表?C)循環(huán)隊列是非線性結(jié)構(gòu)

D)有序性表既可以采用順序存儲結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯Y(jié)構(gòu)

(2)支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是

A)棧B)樹C)隊列D)二叉樹?(3)某二叉樹有5個度為2的結(jié)點(diǎn),則該二叉樹中的葉子結(jié)點(diǎn)數(shù)是

A)10B)8C)6D)4

(4)下列排序方法中,最壞情況下比較次數(shù)最少的是

A)冒泡排序

B)簡樸選擇排序?C)直接插入排序

D)堆排序?(5)軟件按功能可以分為:應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于應(yīng)用軟件的是?A)編譯軟件

B)操作系統(tǒng)

C)教務(wù)管理系統(tǒng)

D)匯編程序?(6)下面敘述中錯誤的是

A)軟件測試的目的是發(fā)現(xiàn)錯誤并改正錯誤

B)對被調(diào)試的程序進(jìn)行“錯誤定位”是程序調(diào)試的必要環(huán)節(jié)

C)程序調(diào)試通常也稱為Debug?D)軟件測試應(yīng)嚴(yán)格執(zhí)行測試計劃,排除測試的隨意性?(7)耦合性和內(nèi)聚性是對模塊獨(dú)立性度量的兩個標(biāo)準(zhǔn)。下列敘述中對的的是

A)提高耦合性減少內(nèi)聚性有助于提高模塊的獨(dú)立性

B)減少耦合性提高內(nèi)聚性有助于提高模塊的獨(dú)立性

C)耦合性是指一個模塊內(nèi)部各個元素間彼此結(jié)合的緊密限度?D)內(nèi)聚性是指模塊間互相連接的緊密限度

(8)數(shù)據(jù)庫應(yīng)用系統(tǒng)中的核心問題是?A)數(shù)據(jù)庫設(shè)計?B)數(shù)據(jù)庫系統(tǒng)設(shè)計?C)數(shù)據(jù)庫維護(hù)?D)數(shù)據(jù)庫管理員培訓(xùn)?(9)有兩個關(guān)系R,S如下:

RABCa32b01c21SABa3b0c2由關(guān)系R通過運(yùn)算得到關(guān)系S,則所使用的運(yùn)算為?A)選擇B)投影C)插入D)連接

(10)將E-R圖轉(zhuǎn)換為關(guān)系模式時,實(shí)體和聯(lián)系都可以表達(dá)為?A)屬性B)鍵C)關(guān)系D)域(11)以下選項中合法的標(biāo)記符是?A)1-1B)1—1C)-11D)1--(12)若函數(shù)中有定義語句:intk;,則

A)系統(tǒng)將自動給k賦初值0?B)這時k中值無定義?C)系統(tǒng)將自動給k賦初值-1?D)這時k中無任何值?(13)以下選項中,能用作數(shù)據(jù)常量的是?A)o115B)0118C)1.5e1.5D)115L?(14)設(shè)有定義:intx=2;,以下表達(dá)式中,值不為6的是

A)x*=x+1

B)x++,2*x

C)x*=(1+x)?D)2*x,x+=2

(15)程序段:intx=12;

doubley=3.141593;printf(“%d%8.6f”,x,y);的輸出結(jié)果是?A)123.141593

B)12

3.141593

C)12,3.141593

D)123.141593

(16)若有定義語句:doublex,y,*px,*py,執(zhí)行了px=&x,py=&y;之后,對的的輸入語句是

A)scanf(“%f%f”,x,y);?B)scanf(“%f%f”,&x,&y);

C)scanf(“%lf%le”,px,py);?D)scanf(“%lf%lf”,x,y);?(17)以下是if語句的基本形式:?if(表達(dá)式)

語句?其中“表達(dá)式”?A)必須是邏輯表達(dá)式

B)必須是關(guān)系表達(dá)式?C)必須是邏輯表達(dá)式或關(guān)系表達(dá)式?D)可以是任意合法的表達(dá)式

(18)有以下程序

#include<stdio.h>?main()

{intx;

scanf(“%d”,&x);?if(x<=3);else?if(x!=10)

printf(“%d\n”,x);

}

程序運(yùn)營時,輸入的值在哪個范圍才會有輸出結(jié)果

A)不等于10的整數(shù)?B)大于3且不等于10的整數(shù)?C)?大于3或等于10的整數(shù)?D)小于3的整數(shù)?(19)有以下程序

#include<stdio.h>?Main()?{

inta=1,b=2,c=3,d=0;?if(a==1&&b++==2)?if(b!=2||c--!=3)?

printf(“%d,%d,%d\n”,a,b,c);?elseprintf(“%d,%d,%d\n”,a,b,c);

elseprintf(“%d,%d,%d\n”,a,b,c);

}?程序運(yùn)營后的輸出結(jié)果是?A)1,2,3?B)1,3,2?C)1,3,3

D)3,2,1?(20)以下程序中的變量已對的定義

for(i=0;i<4;i++,i++

for(k=1;k<3;k++);printf(*”);?程序段的輸出結(jié)果是

A)********

B)****

C)**?D)*

(21)有以下程序

#include<stdio.h>

main()?{char?*s=(“ABC);

do

{printf(“%d”,*s%10);s++;

}while(*s);?}?注意,字母A的ASCII碼值為65。程序運(yùn)營后的輸出結(jié)果是?A)5670

B)656667?C)567?D)ABC?(22)設(shè)變量已對的定義,以下不能記錄出一行中輸入字符個數(shù)(不包含回車符)的程序段是?A)n=0;while((ch=getchar())!=’\n’)n++;

B)n=0;while(getchar()!=’\n’)n++;

C)for(n=0;getchar()!=’\n’;n++);?D)n=0;for(ch=getchar();ch!=’\n’;n++);(23)有以下程序?#include<stdio.h>

main()?{inta1,a2;charc1,c2;

scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);?printf(“%d,%c,%d,%c”,&1,c1,a2,c2);?}?若想通過鍵盤輸入,使得a1的值為12,a2的是為34,c1的值為字符a,c2的值為字符b,程序輸出結(jié)果是:12,a,34,b,則對的的輸入格式是(以下?代表空格,<CR>代表回車)?A)12a34b<CR>?B)12

a

34?b<CR>?C)12,a,34,b<CR>

D)12?a34

b<CR>

(24)有以下程序

#include<stdio.h>?intf(intx,inty)?{return()y-x)*x);}

main()

{inta=3,b=4,c=5,d;?d=f(f(a,b),f(a,c));

printf(“%d\n”,d);

程序運(yùn)營后的輸出結(jié)果是?A)10

B)9

C)8?D)7

(25)有以下程序

#include<stdio.h>

voidfun(char?*s)?{while(*s)?

{if(*s%2==0)?printf(“%c”,*s);

s++;?

}?}

main()?{char?a[]={“good”};

?fun(a);printf(“\n”);

}

注意:字母a的ASCⅡ碼值為97,程序運(yùn)營后的輸出結(jié)果是

A)d

B)go?C)god

D)good

(26)有以下程序

#include<stdio.h>?voidfun(int*a,int*b)?{int*c;?c=a;a=b;b=c;?}

main()?{intx=3,y-5,*P=&x,*q=&y;

?fun(p,q);printf(“%d,%d,”,*p,*q);?fun(&x,&y);printf(“%d,%d\n”,*p,*q);?}?程序運(yùn)營后的輸出結(jié)果是?A)3,5,5,3?B)3,5,3,5

C)5,3,3,5?D)5,3,5,3?(27)有以下程序?#include<stdio.h>?viodf(int*p,int*q);?main()

{intm=1,n=2,*r=&m;?

f(r,&n);printf(“%d,%d”,m,n);?}?voidf(int*p,int*q)

{p=p+1;*q=*q+1;}

程序運(yùn)營后輸出的結(jié)果是?A)1,3?B)2,3

C)1,4?D)1,2?(28)以下函數(shù)按每行8個輸出數(shù)組中的數(shù)據(jù)?voidfun(int*w,intn)

{inti;

?for(i=0;i<n;i++)

?{__(dá)___(dá)____(dá)______(dá)__

printf(“%d”,w);?

}

printf(“\n”);?}

下劃線處應(yīng)填入的語句是

A)if(i/8==0)print(“\n”);

B)if(i/8==0)continue;

C)if(i%8==0)print(“\n”);?D)if(i%8==0)continue;(29)若有以下定義??intx[10],*pt=x;?則對x數(shù)組元素的對的應(yīng)用是

A)*&x[10]

B)*(x+3)

C)*(pt+10)

D)pt+3

(30)設(shè)有定義:chars[81];inti=10;,以下不能將一行(不超過80個字符)帶有空格的字符串真確讀入的語句或語句組是

A

gets(s)

B)while((s[i++]=getchar())!=”\n”;s=”\0”;?C)scanf(“%s”,s);?D)do{scanf(“%c”,&s);}while(s[i++]!=”\n”);s=”\0”;?(31)有以下程序?#include<stdio.h>?main()?{char*a[]={“abcd”,”ef”,”gh”,”ijk”};intI;

?for(i=0;i<4;i++)

printf(“%c”,*a);?}?程序運(yùn)營后輸出的結(jié)果是?A)aegi?B)dfhk

C)abcd?D)abcdefghijk?(32)以下選項中對的的語句組是?A)chars[];s=”BOOK!”;

B)char*s;s={”BOOK!”};?C)chars[10];s=”BOOK!”;

D)char*s;s=”BOOK!”;

(33)有以下程序

#include<stdio.h>

intfun{intx,inty}?{if(x==y(tǒng))return(x);??elsereturen((x+y)/2)

}?main()?{inta=4,b=5,c=6;??printf(“%d\n”,fun(2*a,fun(b,c)))?}?程序運(yùn)營后的輸出結(jié)果是?A)3?B)6?C)8

D)12

(34)設(shè)函數(shù)中有整型變量n,為保證其在未賦值的情況下初值為0,應(yīng)選擇的存儲類別是

A)auto?B)register

C)static?D)auto或register?(35)有以下程序

#include<stdio.h>

intb=2;?intfun(int*k)?{b=*k+b;return(b);}

main()

{inta[10]={1,2,3,4,5,6,7,8},I;??for(i=2;i<4;i++){b=fun(&a)+b;printf(“%d”,b);}??printf(“\n”);?}

程序運(yùn)營后輸出的結(jié)果是?A)10

12

B)8?10

C)10?28?D)10

16

(36)有以下程序

#include<stdio.h>

#definePT3.5;

#defineS(x)PT*x*x;

mian()?{inta=1,b=2;printf(“%4.1f\n”,S(a+b));}?程序運(yùn)營后輸出的結(jié)果是

A)14.0?B)31.5?C)7.5?D)程序有錯無輸出結(jié)果(37)有以下程序?#include<stdio.h>?structord

{intx,y;}dt[2]={1,2,3,4};?main()

{structord*p=dt;

printf(“%d,”,++p->x);printf(“%d\n”,++p->y);

}

程序的運(yùn)營結(jié)果是?A)1,2

B)2,3

C)3,4?D)4,1

(38)設(shè)有宏定義:#include?IsDIV(k,n)((k%n==1)?1:0且變量m已對的定義并賦值,則宏調(diào)用:IsDIV(m,5)&&IsDIV(m,7)為真時所要表達(dá)的是?A)判斷m是否能被5或者7整除?B)判斷m是否能被5和7整除?C)判斷m被5或者7整除是否余1

D)判斷m被5和7整除是否余1

(39)有以下程序

#include<stdio.h>?main()?{inta=5,b=1,t;

t=(a<<2|b);printf(“%d\n”,t)

}

程序運(yùn)營后的輸出結(jié)果是

A)21

B)11?C)6?D)1?(40)有以下程序?#include<stdio.h>

main()?{EILE*f;

f=fopen(“filea.txt”,”w”);

fprintf(f,”abc”);??fclose(f);

}

若文本文獻(xiàn)filea.txt中原有內(nèi)容為:hello,則運(yùn)營以上程序后,文獻(xiàn)filea.txt中的內(nèi)容為

A)helloabc?B)abclo?C)abc

D)abchello?二、填空題(每空2分,共30分)

請將每一個空的對的答案寫在答題卡【1】至【15】序號的橫線上,答在試卷上不得分。

(1)假設(shè)一個長度為50的數(shù)組(數(shù)組元素的下標(biāo)從0到49)作為棧的存儲空間,棧底指針bottom指向棧底元素,棧頂指針top指向棧頂元素,假如bottom=49,top=30(數(shù)組下標(biāo)),則棧中具有【1】個元素。

(2)軟件測試可分為白盒測試和黑盒測試?;就緩綔y試屬于【2】測試。

(3)符合結(jié)構(gòu)化原則的三種基本控制結(jié)構(gòu)是:選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和?【3】。

(4)數(shù)據(jù)庫系統(tǒng)的核心是【4】

(5)在E-R圖中,圖形涉及矩形框、菱形框、橢圓框。其中表達(dá)實(shí)體聯(lián)系的是

【5】框。

(6)表達(dá)式(int)((double)(5/2)+2.5)的值是【6】

(7)若變量x、y已定義為int類型且x的值為99,y的值為9,請將輸出語句printf(【7】,x/y);補(bǔ)充完整,使其輸出的計算結(jié)果形式為:x/y=11?(8)有以下程序?#include<stdio.h>?main()?{

charc1,c2;

scanf(“&c”,&c1);

?while(c1<65||c(diǎn)1>90)?scanf(“&c”,&c1);

?c2=c1+32;??printf(“&c,&c\n”,c1,c2);?}?程序運(yùn)營輸入65回車后,能否輸出結(jié)果、結(jié)束運(yùn)營(請回答能或不能)【8】?。(9)以下程序運(yùn)營后的輸出結(jié)果是【9】

#include<stdio.h>?main()

{intk=1,s=0;

do{

if{((k&2)!=0)continue;

s+=k;k++;?}while(k)10);?printf(“s=&d/n”,s);?}??(10)下列程序運(yùn)營時,若輸入labced12df<回車>輸出結(jié)果為【10】

#include<stdio.h>?main()?{char?a=0,ch;?while((ch=getchar())!=’\n’)

{if(a&2!=0&&(ch>’a’&&ch<=’z’))ch=ch-‘a(chǎn)’+’A’;

a++;putchar(ch);

}

printf(“\n”);?}

(11)有以下程序,程序執(zhí)行后,輸出結(jié)果是【11】?#include<stdio.h>

voidfun(int*a)

{a[0=a[1];]}

main()?{inta[10]={10,9,8,7,6,5,4,3,2,1},i;

for(i=2;i>=0;i--)fun{&a};

for(i=0;i<10;i++)printf(“&d”,a);

printf(“\n”);?}?(12)請將以下程序中的函數(shù)聲明語句補(bǔ)充完整?#include<stdio.h>?int【12】?;

main()?{intx,y,(*p)();

p=max;

printf(“&d\n”,&x,&y);

}

Intmax(inta,intb)

{return(a>b/a:b);}?(13)以下程序用來判斷指定文獻(xiàn)是否能正常打開,請?zhí)羁?/p>

#include<stdio.h>?main()

{FILE*fp;?if(((fp=fopen(“test.txt”,”r”))==【13】))

printf(“未能打開文獻(xiàn)!\n”);

else

printf(“文獻(xiàn)打開成功!\n”);

(14)下列程序的運(yùn)營結(jié)果為【1

溫馨提示

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

最新文檔

評論

0/150

提交評論