《2012年到2007年國(guó)家計(jì)算機(jī)二級(jí)c語(yǔ)言歷年真題及答案》_第1頁(yè)
《2012年到2007年國(guó)家計(jì)算機(jī)二級(jí)c語(yǔ)言歷年真題及答案》_第2頁(yè)
《2012年到2007年國(guó)家計(jì)算機(jī)二級(jí)c語(yǔ)言歷年真題及答案》_第3頁(yè)
《2012年到2007年國(guó)家計(jì)算機(jī)二級(jí)c語(yǔ)言歷年真題及答案》_第4頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余193頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

2012年3月全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C語(yǔ)言真題

(考試時(shí)間90分鐘,滿分100分)

ー、選擇題

1、下列敘述中正確的是:A,循環(huán)隊(duì)列是隊(duì)列的ー種順序存儲(chǔ)結(jié)構(gòu)

B、循環(huán)隊(duì)列是隊(duì)列的ー種鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)

C,循環(huán)隊(duì)列是非線性結(jié)構(gòu)

D、循環(huán)隊(duì)列是一直邏輯結(jié)構(gòu)

2、下列敘述中正確的是

A、棧是ー種先進(jìn)先出的線性表

B、隊(duì)列是ー種后進(jìn)先出的線性表

C、棧和隊(duì)列都是非線性結(jié)構(gòu)

D,以上三種說(shuō)法都不對(duì)

3、一棵ニ叉樹共有25個(gè)節(jié)點(diǎn),其中5個(gè)時(shí)子節(jié)點(diǎn),那么度為1的節(jié)點(diǎn)數(shù)為

A、4 B、6 C、10 D、164、在下列模式中,能夠給出數(shù)據(jù)庫(kù)物理存儲(chǔ)結(jié)構(gòu)與物理存取方法的是

A、內(nèi)模式 B、外模式 C,概念模式D'邏輯模式5、在滿足實(shí)體完整性約束的條件下

A、ー個(gè)關(guān)系中可以沒(méi)有候選關(guān)鍵詞

B、一個(gè)關(guān)系中只能有一個(gè)候選關(guān)鍵詞

C、ー個(gè)關(guān)系中必須有多個(gè)候選關(guān)鍵詞

D、ー個(gè)關(guān)系中應(yīng)該有一個(gè)或者多個(gè)候選關(guān)鍵詞6,有三個(gè)關(guān)系R、S和T如下:

R

ABC

a1 2b2 1c3 1則由關(guān)系R和S得到關(guān)系T的操作是

A、自然連接 B、并C、差D、交7、軟件生命周期中的活動(dòng)不包括A、軟件維護(hù) B、市場(chǎng)調(diào)研 C、軟件測(cè)試 D、需求分析8、下面不屬于需求分析階段任務(wù)的是A、確定軟件系統(tǒng)的功能需求 B、確定軟件系統(tǒng)的系統(tǒng)的系能需求B,制定軟件集成測(cè)試計(jì)劃 D、需求規(guī)格說(shuō)明書審評(píng)9、在黑盒測(cè)試方式中,設(shè)計(jì)測(cè)試用例的主要根據(jù)是

A,程序外部功能 B、程序內(nèi)部邏輯C、程序數(shù)據(jù)結(jié)構(gòu) D、程序流程圖10、在軟件設(shè)計(jì)中不使用的工具是

A、系統(tǒng)結(jié)構(gòu)圖B、程序流程圖

C、PAD圖D、數(shù)據(jù)流圖(DFD圖)11、針對(duì)簡(jiǎn)單程序設(shè)計(jì),以下敘述的實(shí)施步驟正確的是

A、確定算法和數(shù)據(jù)結(jié)構(gòu)、編碼、調(diào)試、整理文檔

B、編碼、確定算法和數(shù)據(jù)結(jié)構(gòu)、調(diào)試、整理文檔

C、整理文檔、確定算法和數(shù)據(jù)結(jié)構(gòu)、編碼、調(diào)試

D、確定算法和數(shù)據(jù)結(jié)構(gòu)、調(diào)試、編碼、整理文檔

12、關(guān)于C語(yǔ)言中數(shù)的表示,以下敘述正確的是

A、只有整型數(shù)在允許范圍內(nèi)能精確無(wú)誤的表示,實(shí)型數(shù)會(huì)有誤差

B、只要在在允許范圍內(nèi)整型和實(shí)型都能精確表示

C、只有實(shí)型數(shù)在允許范圍內(nèi)能精確無(wú)誤的表示,整型數(shù)會(huì)有誤差

D、只有八進(jìn)制表示的數(shù)在不會(huì)有誤差

13、以下關(guān)于算法敘述錯(cuò)誤的是

A、算法可以用偽代碼、流程圖等多種形式來(lái)描述

B、一個(gè)正確的算法必須有輸入

C,ー個(gè)正確的算法必須有輸出

D、用流程圖可以描述的算法可以用任何ー種計(jì)算機(jī)高級(jí)語(yǔ)言編寫成程序代碼

14、以下敘述錯(cuò)誤的是

A、ー個(gè)C程序可以包含多個(gè)不同名的函數(shù)

B,ー個(gè)C程序只能有一個(gè)主函數(shù)

C、C程序在書寫時(shí),有嚴(yán)格的縮進(jìn)要求,否則不能編譯通過(guò)

D,C程序的主函數(shù)必須用main作為函數(shù)名

15、設(shè)有以下語(yǔ)句

Charchl,ch2,scanf(,,%c%c,,,&chl,&ch2);若要為變量chi和ch2分別輸入字符A和B,正確的輸入形式應(yīng)該是A、A和B之間用逗號(hào)間隔 B、A和B之間不能有任何間隔符C、A和B之間可以用回車間隔 D、A和B之間用空格間隔16、以下選項(xiàng)中非法的字符常量是

A、,\102,B、'\65'C、D、'\019'

17、有以下程序

#include<sthio.h>

Main()

(

IntA=O,B=O,C=O;

C=(A-=A-5);(A=B,B+=4);

Printf(u%d,%d,%d\rT,A,B,C)

)

程序運(yùn)行后輸出的結(jié)果是A0,43B4,4,5 C4,4,4D0,0,018、設(shè)變量均已正確定義并且賦值,以下與其他三組輸出結(jié)構(gòu)不同的ー組語(yǔ)句是

A、x++;printf((u%d\n,\x); B、n=++x;printf(("%d\n”,n);C、++x;printf(("%d\iT,x); D、n=x++;printf((u%d\n,,,n);19、以下選項(xiàng)中,能表示邏輯值“假”的是A1 B0.000001 C0 D100.020、有以下程序

#include<sthio.h>Main()

{inta;

Scanf(“%d”,&a);

If(a++<9)printf((M%d\n,?;

Elseprintf((u%d\n,\a-);

}

程序運(yùn)行時(shí)鍵盤輸入9〈回車〉,則輸出的結(jié)構(gòu)是

A、10B11C9D8

21、有以下程序

#include<sthio.h>

Main()

{ints=O,n;

For(n=0;n<3;n<++)

{switch(s)

{case0;

Casel;s+=l;

Case2;s+=2;break;

Case3;s+3;

Case4;s+=4;

)

printf(("%d\n”,s);

}

}

程序運(yùn)行后的結(jié)果是

A1,2,4B1,3,6C3,10,14D3,6,10

22、若k是int類型變量,且有以下for語(yǔ)句

For(k=-l;k<O;k++)printf(****\n");

下面關(guān)于語(yǔ)句執(zhí)行情況的敘述中正確的是

A、循環(huán)體執(zhí)行一次 B、循環(huán)體執(zhí)行兩次C、循環(huán)體ー次也不執(zhí)行 D、構(gòu)成無(wú)限循環(huán)23、有以下程序

#include<sthio.h>

Main()

{charA,B,C;

B=T;C=,A'

For(A=0;A<6;A++)

{if(A%2)putchar(B+A);

Elseputchar(C+A);

}

}

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

A1B3D5FBABCDFECA2C4E6D123456

24、設(shè)有如下定義語(yǔ)句

Intm[]={2,4,6,8},*k=m;以下選項(xiàng)中,表達(dá)式的值為6的是A*(k+2)Bk+2 C*k+2 D*k+=225、fun函數(shù)的功能是:通過(guò)鍵盤輸入給x所指的整型數(shù)組所有元素賦值。在下列劃線處應(yīng)

該填寫的是#include<sthio.h>#denneN5Viodfun(intx[N])

{intm;

For(m=N-l;m>0;m—)scanf("%d\n",);

)A&x[++m]B&x[m+l]Cx+(m++)Dx+m26、若有函數(shù)Viodfun(doublea[],int*n)

{ }以下敘述中正確的是A、調(diào)用fun函數(shù)時(shí)只有數(shù)組執(zhí)行按值傳送,其他實(shí)參和形參之間執(zhí)行按地址傳送

B、形參a和n都是指針變量C、形參a是ー個(gè)數(shù)組名,n是指針變量D、調(diào)用fun函數(shù)時(shí)將把double型實(shí)參數(shù)組元素ーー對(duì)應(yīng)地傳送給形參a數(shù)組

27、有以下程序#include<sthio.h>Main()

{inta,b,k,m,*pl,*p2;

k—1,m=8;

pl=&k,p2=&m;

a=/*pl-m;b=*pl+*p2+6;

printf("%d”,a);printf("%d\n”,b);

}

編譯時(shí)編譯器提示錯(cuò)誤信息,你認(rèn)為出錯(cuò)的語(yǔ)句是A、a=/*pl-m B、b=*pl+*p2+6C、k=l,m=8; D、pl=&k,p2=&m;28、以下選項(xiàng)中有語(yǔ)法錯(cuò)誤的是Achar*str[]={uguesf,}; B、charstr[10]={“guest”};C、char*str[3]*str[l]={uguesf,};D、charstr[3J[10J;str[l]={uguestM);29、avg函數(shù)的功能是求整型數(shù)組中的前若干個(gè)元素的平均值,設(shè)數(shù)組元素個(gè)數(shù)最多不超過(guò)

10,則下列函數(shù)說(shuō)明語(yǔ)句錯(cuò)誤的是A、intavg(int*a,intn);B、intavg(inta[10],intn);C、intavg(inta,intn);D、intavg(inta[],intn);

30、有以下函數(shù)

#include<sthio.h>#include<string.h>

main(){printf(“%d\n”,strren”ATS\nO12\l"));}

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

A3B8 C4D931、有以下函數(shù)#include<sthio.h>

main(){chara[20],b[20],c[20];scanf("%s%s”,a,b);get(c);printf(M%s%s\nM,a,b,c);)程序運(yùn)行時(shí)從第一行開始輸入thisisacatk回車),則輸出結(jié)果是

Athisisacat!BthisisaCthisisacat!Dthisisacat!32、有以下函數(shù)#include<sthio.h>

viodfun(charc)

{if(0,X,)fun(c-l);printf("%c”,c);)

main()

{fun”z”;}

程序運(yùn)行輸出結(jié)果是

AxyzBwxyzCzyxwDzyx

33、有以下函數(shù)

#include<sthio.h>

viodfunc(intn){inti;for(i=0;i<=n;i++)printf("種);printf("#“);

main(){func(3);printf(u????M);func(4);printf("\n”);}

程序運(yùn)行輸出結(jié)果是A****夫ッワワッ***# b**ホ#ツツツ?*****#CホCホ?豆ツツツツ*****#D****?ツツツツ*****#34、有以下函數(shù)34、有以下函數(shù)#include<sthio.h>viodfun(int*s)

{staicintj=0;

do{s[j]=s[j]+s[j+l];}wihle(++j<2);

)

main()

{intk,a[10]={1,23,4,5};

for(K+l;k<3;k++)fun(a);

for(K+l;k<5;k++)printf(u%dM,a[k]);

printf(%”);

)程序運(yùn)行輸出結(jié)果是A12345B23445C34756D3574535、有以下函數(shù)#include<sthio.h>#defineS(x)(x)*x*2

main()

{intk=5J=2;printf(u%d,M,Slk+j]);printf(u%d\nM,S(k-j)));

}

程序運(yùn)行輸出結(jié)果是A98,18B39,11 C39,18D98,ll36、有以下函數(shù)

#include<sthio.h>

Viodexch(intt[])

{t[0]=t[5];}

{intx[10]={1,2,3,4,5,6J,8,9,10},1=0;

While(i<=4){exch(&x[i]),i++;}

for(i=0;i<5;i++) printf(“%d”,メロ]);prindT"”);

}

程序運(yùn)行輸出結(jié)果是

A246810B13579C12345D678910

37、設(shè)有以下程序段

StructMP3

{charname[20];Charcolor;Floatprice;}std,*ptr;

ptr=&std;若要引用結(jié)構(gòu)體變量Std中的color成員,寫法錯(cuò)誤的是

Astd.colorBptr->color Cstd->colorD(*ptr).color38、有以下函數(shù)

#include<sthio.h>structstu

{intmun;charname[10];intage;};

viodfun(structstu*p)

{printf(w%s\n",p->name);}

mian(){structstux[3]={{01,,,zhang,,,20},{02,,,wang,\19},{03,,,zhao,,,18}};

fun(x+2);)

程序運(yùn)行輸出結(jié)果是

AzhangBzhaoCwangD19

39、有以下函數(shù)#include<sthio.h>

mian()

{inta=12,c;

c=(a?2)?l;

printf(M%d\nM,c):

}

程序運(yùn)行輸出結(jié)果是

A3B50C2D96

40、以下函數(shù)不能用于向文件寫入數(shù)據(jù)的是

Aftell Bfwrite Cfputc Dfprintf二、 填空題TOC\o"1-5"\h\z1、將長(zhǎng)度為n的順序存儲(chǔ)在線性表中刪除ー個(gè)元素,最壞情況下需要移動(dòng)表中的元素個(gè)數(shù)為( )?2、設(shè)循環(huán)隊(duì)列的存儲(chǔ)空間為Q(l:3),初始狀態(tài)為front=rear=30?,F(xiàn)經(jīng)過(guò)一系列入隊(duì)與退隊(duì)運(yùn)算后,front=16,rear=15,則循環(huán)隊(duì)列中有( )個(gè)元素。3、數(shù)據(jù)庫(kù)管理系統(tǒng)提供的數(shù)據(jù)語(yǔ)言中,負(fù)責(zé)數(shù)據(jù)的增、刪、改和査詢的是( )?4、在將E-R圖轉(zhuǎn)換到關(guān)系模式時(shí),實(shí)體和聯(lián)系都可以表示成()?5、常見(jiàn)的軟件工程方法有結(jié)構(gòu)化方法和面向?qū)ο蠓椒ǎ?、繼承以及多態(tài)性等概念屬于

()?6、設(shè)變量a和b已定義為int類型,若要通過(guò)scanf("a=%d,b=%d”,&a,&b);語(yǔ)句分別給a和b輸入1和2,則正確的數(shù)據(jù)輸入內(nèi)容是( )?7、以下程序的輸出結(jié)果是( ).#include<sthio.h>

mian()

{inta=37;

a+=a%=9;printf("%d\n”,a);

}8、設(shè)a、b、c都是整型變量,如果a的值為1,b的值為2,則執(zhí)行c=a++llb++;語(yǔ)句后,

變量b的值是().9、有以下程序段

s=1.0;for(k=l,k<=n;k++) s=s+1.0(k*(k+l));printf("%f\n",s);請(qǐng)?zhí)羁?使以下程序段的功能與上面的程序段完全相同。

s=1.0;k=l;

while(){s=s+1.0(k*(k+l));k=k+l;}

printf(u%f\n,,,s);10、以下程序段的輸出結(jié)果是( )#include<sthio.h>

mian()

{chara,b;for(a=0;a<20;a+=7){b=a%10;putchar(b+,O,);}

}11、以下程序段的輸出結(jié)果是( )#include<sthio.h>

mian(){char*ch[4]={"red","green","blue"};Inti=O;While(ch[i]);{putchar(ch[i][OJ;i++;}

}有以下程序#include<sthio.h>

mian(){intarr[]={l,3,5,7,2,4,6,8{,i,start;Scanf(u%d",&start);

For(i=0,i<3,i++)

printf(M%d",arr[(start+i)%8]);

}若在程序運(yùn)行時(shí)輸入整數(shù)10v回車〉,則輸出結(jié)果為()〇以下程序的功能是輸出a數(shù)組中的所有字符串,請(qǐng)?zhí)羁?include<sthio.h>

mian(){char*a[]={uABC","DEFGH","U","KLMNOP,};

Inti=0;For(;i<4;i++)printf(u%s\n", );}14、以下程序的輸出結(jié)果是( )。#include<sthio.h>#include<sthio.h>#include<string.h>

mian()

{char*p,*q,*r;p=q=r=(char*)malloc(sizeof(char)*20);strcpy(p,"attaboy,welcome!");printf(u%c%c%c\n",p[11],q[3],r[4]);free(p);

}15、設(shè)文件test.txt中原已寫入字符串Begin,執(zhí)行以下程序后,文件中的內(nèi)容為

()?#include<string.h>

mian(){file*fp;fp=fopen(Mtest.txt,,,,,w+M);fputs(utesf\fp);fclose(fp);2012年3月全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C語(yǔ)言真題

標(biāo)準(zhǔn)答案ー、選擇題1-5、ADDAD6-10,CBCAD11-15,ABBCB16-20,DADCA21-25,CACAD 26-30,CADCB31-35,CADDC36-40,DCBDA二,填空題1,n-1 2,29 3,數(shù)據(jù)操縱語(yǔ)言4,關(guān)系5,面向?qū)ο蠓椒?6,a=l,b=2 7,2 8,29,k<=n10,074 11,rgb12,572 13,a[i] 14,cab15,test2011年9月全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)筆試試卷

C語(yǔ)言程序設(shè)計(jì)(考試時(shí)間90分鐘,滿分100分)—,選擇題(洋)-(10),(21)-(40)每題2分,(H)-(20)每每1分,共70分)下列各題A)、B),C),D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的。請(qǐng)將正確選項(xiàng)填涂在答題卡相應(yīng)位置上答在試卷上不得分。(1)下列敘述中正確的是()。A)算法就是程序 B)設(shè)計(jì)算法時(shí)只需要考慮數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)C)設(shè)計(jì)算法時(shí)只需要考慮結(jié)果的可靠性 D)以上三種說(shuō)法都不對(duì)(2)下列關(guān)于線性鏈表的敘述中,正確的是()。A)各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)空間可以不連續(xù),但它們的存儲(chǔ)順序與邏輯順序必須一致B)各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)順序與邏輯順序可以不一致,但它們的存儲(chǔ)空間必須連續(xù)C)進(jìn)行插入與刪除時(shí),不需要移動(dòng)表中的元素D)以上三種說(shuō)法都不對(duì)(3)下列關(guān)于ニ叉樹的敘述中,正確的是()〇A)葉子結(jié)點(diǎn)總是比度為2的結(jié)點(diǎn)少ー個(gè)B)葉子結(jié)點(diǎn)總是比度為2的結(jié)點(diǎn)多一個(gè)c)葉子結(jié)點(diǎn)數(shù)是度為2的結(jié)點(diǎn)數(shù)的兩倍D)度為2的結(jié)點(diǎn)數(shù)是度為1的結(jié)點(diǎn)數(shù)的兩倍(4)軟件按功能可以分為應(yīng)用軟件,系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于應(yīng)用軟件的是()。A)學(xué)生成績(jī)管理系統(tǒng)B)C語(yǔ)言編譯程序C)UNIX操作系統(tǒng)D)數(shù)據(jù)庫(kù)管理系統(tǒng)

(5)某系統(tǒng)總體結(jié)構(gòu)圖如下圖所示:(5)某系統(tǒng)總體結(jié)構(gòu)圖如下圖所示:該系統(tǒng)總體結(jié)構(gòu)圖的深度是()。A)7 B)6 C)3 D)2(6)程序調(diào)試的任務(wù)是()〇A)設(shè)計(jì)測(cè)試用例 B)驗(yàn)證程序的正確性C)發(fā)現(xiàn)程序中的錯(cuò)誤 D)診斷和改正程序中的錯(cuò)誤(7)下列關(guān)于數(shù)據(jù)庫(kù)設(shè)計(jì)的敘述中,正確的是()。A)在需求分析階段建立數(shù)據(jù)字典 B)在概念設(shè)計(jì)階段建立數(shù)據(jù)字典C)在邏輯設(shè)計(jì)階段建立數(shù)據(jù)字典 D)在物理設(shè)計(jì)階段建立數(shù)據(jù)字典(8)數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式不包括()〇A)概念模式 B)內(nèi)模式C)外模式 D)數(shù)據(jù)模式(9)有三個(gè)關(guān)系R、S利T如下:R S TABCABCa12b21c3I舊回宮tn亡tiJEJABCc31則由關(guān)系R和s得到關(guān)系T的操作是()?A)自然連接 B)差 C)交D)并(10)下列選項(xiàng)中屬于面向?qū)ο笤O(shè)計(jì)方法主要特征的是()。A)繼承 B)自頂向下 C)模塊化 D)逐步求精(11)以下敘述中錯(cuò)誤的是()?A)C語(yǔ)言編寫的函數(shù)源程序,其文件名后綴可以是.CB)C語(yǔ)言編寫的函數(shù)都可以作為ー個(gè)獨(dú)立的源程序文件C)C語(yǔ)言編寫的每個(gè)函數(shù)都可以進(jìn)行獨(dú)立的編譯并執(zhí)行D)ー個(gè)C語(yǔ)言程序只能有一個(gè)主函數(shù)(12)以下選項(xiàng)中關(guān)于程序模塊化的敘述錯(cuò)誤的是()。A)把程序分成若干相對(duì)獨(dú)立的模塊,可便于編碼和調(diào)試B)把程序分成若干相對(duì)獨(dú)立、功能單一的模塊,可便于重復(fù)使用這些模塊c)可采用自底向上、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序D)可采用自項(xiàng)向下、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序(13)以下選項(xiàng)中關(guān)于c語(yǔ)言常量的敘述錯(cuò)誤的是()?A)所謂常量,是指在程序運(yùn)行過(guò)程中,其值不能被改變的量B)常量分為整型常量、實(shí)型常量、字符常量和字符串常量c)常量可分為數(shù)值型常量和非數(shù)值型常量D)經(jīng)常被使用的變量可以定義成常量(14)若有定義語(yǔ)句:inta=10;doubleb=3.14;,則表達(dá)式'A,+a+b值的類型是( )〇A)charB)intC)doubleD)float(15)若有定義語(yǔ)句:intx=12,3=8,z;,在其后執(zhí)行語(yǔ)句z=0.9+x/y;1則Z的值為()?A)l.9 B)1 C)2 D)2.4(16)若有定義:inta,b;,通過(guò)語(yǔ)句scanf("%d;%d”,&a,&b);,能把整數(shù)3賦給變量a,5賦給變量b的輸入數(shù)據(jù)是( )。A)35 B)3,5 C)3;5 D)35(17)若有定義語(yǔ)句:intkl=10,k2=20;.執(zhí)行表達(dá)式(kl=kl>k2)&&(k2=k2>kl)后,kl和k2的值分別為()。A)〇和1 B)〇和20 C)10和1 D)10和20(18)有以下程序#include<stdio.h>main(){inta=l>b=0;if(-a)b++;elseif(a=0)b+=2:elseb+=3:printf(n%d\nH,b);)程序運(yùn)行后的輸出結(jié)果是()〇A)0 B)1 C)2 D)3(19)下列條件語(yǔ)句中,輸出結(jié)果與其他語(yǔ)句不同的是()。A)if(a)printf(M%d\-n",x);elseprintf("%d\n",y);B)if(a—〇)printf("%d\n",y);elseprintf("%d\n",x);C)if(a!=O)p由tf("%d\n",x);elseprintf(M%d\n,',y);D)if(a=O)printf(H%d\nH,x);elseprintf("%d\nM,y);(20)有以下程序#include<stdio.h>main(){inta=7;while(a-);printf("%d\n",a);)程序運(yùn)行后的輸出結(jié)果是()。A)-lB)0 C)1 D)7(21)以下不能輸出字符A的語(yǔ)句是(注:字符A的ASCII碼值為65,字符a的ASCII碼值為97)A)printf(M%c\n%'a-32);B)printf(',%d\nM,'A');c)printf("%c\n",65);D)print-f(,'%c\nn,B?l);(22)有以下程序(注:字符a的ASCII碼值為97)#include<stdio.h>main(){char*s={,,abeM);do{printf(>>%d”,+s%10);++s;)while(+s);)程序運(yùn)行后的輸出結(jié)果是()。A)abcB)789 C)7890 D)979899(23)若有定義語(yǔ)句:doublea,+p=&a:以下敘述中錯(cuò)誤的是( )。A)定義語(yǔ)句中的?號(hào)是一個(gè)間址運(yùn)算符B)定義語(yǔ)句中的?號(hào)只是ー個(gè)說(shuō)明符C)定義語(yǔ)句中的P只能存放double類型變量的地址D)定義語(yǔ)句中,*p二&a把變量a的地址作為初值賦給指針變量P(24)有以下程序#include<stdio.h>doublef(doublex);main(){doublea_0;inti;for(i=0;i<30;i+=10)a+-f((double)i);printf(M%5.Of\nM,a);)doublef(doublex)(returnX+x+1;)程序運(yùn)行后的輸出結(jié)果是()。A)503 B)401 C)500 D)1404(25)若有定義語(yǔ)句:intyear=2009,*p=&year;,以下不能使變量year中的值增至2010的語(yǔ)句是()。A)*p+=1; B)(*p)++; C)++(*p); D)*p++;(26)以下定義數(shù)組的語(yǔ)句中錯(cuò)誤的是()〇A)intnum[]={l,2,3,4,5,6};B)intnum[][3]={{1,2},3,4,5,6};Qintnum[2][4]=({l,2,,{3,4},{5,6});D)intnumロ[4]={L2,3,4,5,6};(27)有以下程序#include<stdiO.h>voidfun(int+p){printf(w%d\n”,p[5]);}main();(inta[10]={l,2,3,4,5,6,7,8,9,10};fun(&a[3]);)程序運(yùn)行后的輸出結(jié)果是()。A)5 B)6Q8D)9(28)有以下程序#include<stdio.h>#defineN4voidfun(inta[][N],imb[])(inti;for(i=0;i<N;i++)b[i]=a[i][i]-a[i][N-l-i];)voidmain(){intx[N][N]={{l,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},y[N],i;fun(x,y);for(i=0;i<N;i++)printf("%d,",y[i]);printf("\nn);)程序運(yùn)行后的輸出結(jié)果是()。A)-12,-3,0,0, B)?3「l,1,3, C)0,l,2,3, D)-3,-3,-3,-3(29)有以下函數(shù)intfun(char*x,char*y){intn=0;while((*x=*y)&&*x!=\0*){x4-+;y++;n++;}returnn:)函數(shù)的功能是()〇A)查找x和y所指字符串中是否有へ。’B)統(tǒng)計(jì)x和y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)c)將y所指字符串賦給X所指存儲(chǔ)空間D)統(tǒng)計(jì)x和y所指字符串中相同的字符個(gè)數(shù)(30)若有定義語(yǔ)句:char*slゴOK”,*s2="okM;,以下選項(xiàng)中,能夠輸出“0K”的語(yǔ)句是( )〇A)if(strcmp(sl,s2)=0)puts(sl);B)if(strcmp(sl,s2)!=0)puts(s2);C)if(strcmp(sl,s2)=l)puts(sl,);D)if(strcmp(sl,s2)!=0)puts(sl);(31)以下程序的主函數(shù)中調(diào)用了在其前面定義的fun函數(shù)#include<stdio.h>(main(){doublea[15],k;k=fun(a);}則以下選項(xiàng)中錯(cuò)誤的fun函數(shù)首部是()。A)doublefun(doublea[15]) B)doublefun(double*a)C)doublefun(doublea[]) D)doublefun(doublea)(32)有以下程序#include<stdio.h>#include<string.h>main(){chara[5][10]={"china","beijing"Jyou",”liananmen”Jwelcome");inti,j;chart[10];for(i=0:i<4;i++)for(j=i+l;j<5;j++)if(strcmp(a[i],a[j])>O){strcpy(t,a[i]);strcpy(a[i],a|j]);strcpy(a[j],t);}puts(a[3]);)程序運(yùn)行后的輸出結(jié)果是()?A)BeijingB)china C)welcome D)tiananmen(33)有以下程序#include<stdio.h>intf(intm){staticintn=O;n+=m:returnn;)main(){intn=O;printf(w%d”,f(++n));printf("%d\n”,f(n++));)程序運(yùn)行后的輸出結(jié)果是()〇A)1,2B)l,1 C)2,3 D)3,3(34)有以下程序#include<stdio.h>main(){charch[3][5]={HAAAA%“BBB”,HCCH);printf("%s\n”,ch[l]);)程序運(yùn)行后的輸出結(jié)果是()。A)AAAAB)CCC)BBBCCD)BBB(35)有以下程序#include<stdio.h>#include<string.h>voidfun(char*w,intm){chars,*pl,*p2;p1=w;p2=w+m-1;while(p1<p2){s=*p1;*pl=p2;*p2=s;pl++;p2—;))main(){charaロ=123456”;fun(a,strlen(a));puts(a);}程序運(yùn)行后的輸出結(jié)果是()A)654321 B)116611 C)161616 D)123456(36)有以下程序#include<stdio.h>#include<string.h>typedefstruct{charname[9];charsex;intscore[2];}STU;STUf(STUa){STUb={,'Zhaou;m,,85,90};inti:strcpy(,);a.sex=b.sex;for(i=0;i<2;i++)a.score[ij=b.score[i];returna;main()fSTUc={nQianVf,95,92),d;d=f(c);printf("%s,%c,%d,%d,”,d.nalne,d.sex,d.score[0],d.score[lj);printf("%s,%c,%d,%d,",c.nanle,c.Sex,c.score[0],c.score[l]);)程序運(yùn)行后的輸出結(jié)果是()。A)Zhao,m,85,90,Qian,f,95,92B)Zhao,m,85,90,ZhaO,m,85,90OQian,f,95,92,Qian,f,95,92 D)Qian,f,95,92,Zhao,m,85,90(37)有以下程序#include<stdio.h>main(){structnode{intn;stmctnode+next;}*p;structnodex[31={(2,x+1},{4,x+2),{6,NULL}};p=x;printfF'%d,",p->n);printf("%dknH,p->next->n);)程序運(yùn)行后的輸出結(jié)果是()。A)2,3 B)2,4 C)3,4 D)4,6(38)有以下程序#include<stdio.h>main(){inta=2,b;b=a?2:printr(M%d\n",b);)程序運(yùn)行后的輸出結(jié)果是().A)2 B)4 C)6 D)8(39)以下選項(xiàng)中敘述錯(cuò)誤的是()。A)C程序函數(shù)中定義的賦有初值的靜態(tài)變量,每調(diào)用一次函數(shù),賦ー次初值B)在C程序的同一函數(shù)中,各復(fù)合語(yǔ)句內(nèi)可以定義變量,其作用域僅限本復(fù)合語(yǔ)句內(nèi)C)C程序函數(shù)中定義的自動(dòng)變量,系統(tǒng)不自動(dòng)賦確定的初值D)C程序函數(shù)的形參不可以說(shuō)明為static型變量(40)有以下程序#include<stdio.h>main(){FILE*fp,intk,n,j,a[6]=<l,2,3,4,5,6};fp=fopen("d2.dat","w");for(i=0;i<6;i++)fprintf(fp,"%d\n",a[i]);fclose(fp);fp=fopen("d2.dat","r");for(i=0;i<3;i++)fscanf(fp,"%d%d",&k.&n);fclose(fp);printf("%d,%d\n",k.n);)程序運(yùn)行后的輸出結(jié)果是()。A)l,2 B)3,4 C)5,6 D)123.456二、填空題(每空2分,共30分)請(qǐng)將每空的正確答案寫在答題卡【1】至【15】序號(hào)的橫線上,答在試卷上不得分。(1)數(shù)據(jù)結(jié)構(gòu)分為線性結(jié)構(gòu)與非線性結(jié)構(gòu),帶鏈的棧屬于【1】。(2)在長(zhǎng)度為n的順序存儲(chǔ)的線性表中插入一個(gè)元素,最壞情況下需要移動(dòng)表中【2】個(gè)元素。(3)常見(jiàn)的軟件開發(fā)方法有結(jié)構(gòu)化方法和面向?qū)ο蠓椒?。?duì)某應(yīng)用系統(tǒng)經(jīng)過(guò)需求分析建立數(shù)據(jù)流圖(DFD),則應(yīng)采用【3】方法。(4)數(shù)據(jù)庫(kù)系統(tǒng)的核心是【4】。(5)在進(jìn)行關(guān)系數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)時(shí),E—R圖中的屬性常被轉(zhuǎn)換為關(guān)系中的屬性,聯(lián)系通常被轉(zhuǎn)換為【5】。(6)若程序中已給整型變量a和b賦值10和20,請(qǐng)寫出按以下格式輸出a、b值的語(yǔ)句【6】。****a=l〇.b=2〇****(7)以下程序運(yùn)行后的輸出結(jié)果是[7】。#include<stdio.h>main()<inta=37;a%=9;printf(1,%d\nH,a);)(8)以下程序運(yùn)行后的輸出結(jié)果是—#include<stdio.h>main(){inti,j;for(i=6:i>3:i-)j=i;printf(n%d%d\n”,i,j);}(9)以下程序運(yùn)行后的輸出結(jié)果是[9】。#include<stdio.h>main(){inti,n[]={0,0,0,0,0);for(i=l;i<=2;i++){n[i]=n[i-l]*3+l;printf("%d“,n[i]);(10)以下程序運(yùn)行后的輸出結(jié)果是_L地!ー。#include<stdio.h>main(){chara;for(a=0;a<15;a+=5){putchar(a+'A');)printf(,f\nu);)(11)以下程序運(yùn)行后的輸出結(jié)果是ー【11】。#include<stdio.h>voidfun(intx){if(x/5>o)fun(x/5);prin仇“%dt”,x);)main(){fun(ll);printf(',\nM);}(12)有以下程序#include<stdio.h>main(){intc[3]={0},k,i;while((k二getcharOXn'n')c[k,A']++;for(i=0;i<3;i-H-)printf(v%d",c[i]);printf(M\nM);若程序運(yùn)行時(shí)從鍵盤輸入ABcAcCv回車〉,則輸出結(jié)果為【12】。(13)以下程序運(yùn)行后的輸出結(jié)果是ーL隘!__。#include<stdio.h>main(){intn[2],i,j;for(i=0;i<2;i++)n[i]=0;for(i=0;i<2;i++)for(j=0;j<2;j++)n[j]=n[i]+l;printf(M%d\nr,n[l]);}(14)以下程序調(diào)用fun函數(shù)把x中的值插入到a數(shù)組下標(biāo)為k的數(shù)組元素中。主函數(shù)中,n存放a數(shù)組中數(shù)據(jù)的個(gè)數(shù)。請(qǐng)?zhí)羁铡?include<stdio.h>voidfun(ints[],int*n,intk,intx){inti;for(i=*n-1;i>=k;i—)s[[14]]=s[i];s[k]=x;*n二?n+ 【15】;

main(){inta[20]={l,2,3,4,5,6,7,8,9,10,11},i,x=0,k=6,n=ll;fun(a,&n,k,X);for(i=0;i<n:i++)printf("%4d",a[i]);printf("\nM);}2011年9月全國(guó)計(jì)尊機(jī)等級(jí)考試二級(jí)

C語(yǔ)言程序設(shè)計(jì)答案及詳解ー、選擇題(DD)【解析】所謂算法是指解題方案的準(zhǔn)確而完整的描述?是ーー組嚴(yán)謹(jǐn)?shù)囟x運(yùn)售順序的規(guī)則,并且每一個(gè)規(guī)則都是有效的,且是明確的,此順序?qū)⒃谟邢薜拇螖?shù)下終止.算法不等于程序,也不等于計(jì)算方法.設(shè)計(jì)算法時(shí)不僅要考慮對(duì)數(shù)據(jù)對(duì)象的運(yùn)尊和操作,還要考慮售法的控制結(jié)構(gòu).(2)c)【解析】線性表的薛式存儲(chǔ)結(jié)構(gòu)稱為線性熊表.在熊式存儲(chǔ)結(jié)構(gòu)中,存儲(chǔ)數(shù)據(jù)結(jié)構(gòu)的存儲(chǔ)空間可以不連續(xù),各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)順序與數(shù)據(jù)元素之間的邏輯關(guān)系可以不一致,而數(shù)據(jù)元素之間的邏輯關(guān)系是由指針域來(lái)確定的.(3)B)【解析】由ニ叉樹的性質(zhì)可以知道在ニ叉樹中葉子結(jié)點(diǎn)總是比度為2的結(jié)點(diǎn)多一個(gè).(4)A)【解析】學(xué)生成績(jī)管理系統(tǒng)為應(yīng)用軟件.(5)c)【解析】這個(gè)系統(tǒng)總體結(jié)構(gòu)圖是ー棵樹結(jié)構(gòu),在樹結(jié)構(gòu)中,根結(jié)點(diǎn)在第1層,同一層上所有子結(jié)點(diǎn)都在下ー層,由系統(tǒng)總體結(jié)構(gòu)圖可知,這棵樹共3層.在樹結(jié)構(gòu)中,樹的最大層次稱為樹的深度.所以這棵樹的深度為3.(6)D)【解析】所謂程序調(diào)試,是將編制的程序投入實(shí)際運(yùn)行前,用手工或編譯程序等方法進(jìn)行測(cè)試,修正語(yǔ)法錯(cuò)誤和邏輯錯(cuò)誤的過(guò)程.其任務(wù)是診斷和改正程序中的錯(cuò)誤.

(7)A)【解析】數(shù)據(jù)庫(kù)設(shè)計(jì)目前一般采用生命周期法,即將整個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)分解成目標(biāo)獨(dú)立的若干階段.分別是:需求分析階段、概念設(shè)計(jì)階段、邏輯設(shè)計(jì)階段、物理設(shè)計(jì)階段、編碼階段、測(cè)試階段、運(yùn)行階段、進(jìn)ー步修改階段.數(shù)據(jù)字典是對(duì)系統(tǒng)中數(shù)據(jù)的詳盡描述,是各類數(shù)據(jù)屬性的清單.對(duì)數(shù)據(jù)設(shè)計(jì)來(lái)講,數(shù)據(jù)字典是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要結(jié)果.(8)D)【解析】數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式包括概念模式、外模式和內(nèi)模式(物理模式).(9)B)【解析】由三個(gè)關(guān)系R、s和T的結(jié)構(gòu)可以知道,關(guān)系T是由關(guān)系R、s經(jīng)過(guò)差運(yùn)算得到的.(10)A)【解析】面向?qū)ο笤O(shè)計(jì)方法的主要特征有封裝性、繼承性和多態(tài)性.而結(jié)構(gòu)化程序設(shè)計(jì)方法的主要原則有自頂向下,逐歩求精,模塊化,限制使用got。語(yǔ)句.(11)c)【解析】C語(yǔ)言程序是從main函數(shù)開始執(zhí)行的,每ー個(gè)函數(shù)可以進(jìn)行獨(dú)立的編釋.(12)c)【解析】如果應(yīng)用結(jié)構(gòu)化程序設(shè)計(jì)方法設(shè)計(jì)程序,那么可采用自頂向下,逐歩細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序.(13)D)【解析】常量指在程序運(yùn)行過(guò)程中,具值不能被改變的量.常量分為整型常量:也就是整常數(shù),實(shí)型常量,字符型常量和字符串常量.常量也可以按數(shù)據(jù)類型分為為數(shù)據(jù)常量和非數(shù)據(jù)常里.變量是指在程序運(yùn)行過(guò)程中,其值能被改變的量.(14)c)【解析】在c語(yǔ)言中不同類型的數(shù)據(jù)進(jìn)行運(yùn)算時(shí),除了強(qiáng)制數(shù)據(jù)類型轉(zhuǎn)換外,都要進(jìn)行默認(rèn)的數(shù)據(jù)類型轉(zhuǎn)換,通常轉(zhuǎn)換為精度餃高的數(shù)據(jù)類型.對(duì)于本題來(lái)說(shuō),字符型數(shù)據(jù)‘A'與整型a相加轉(zhuǎn)換為整型數(shù)據(jù),其和再與雙精度型數(shù)據(jù)b相加,要轉(zhuǎn)換為雙精度型數(shù)據(jù).(15)B)【解析】由于x,y,z都是整型數(shù)據(jù),所以x除以Y的值為整型數(shù)值1,1和0.9相加得到1.9,再轉(zhuǎn)換為整型數(shù)1賦給整型變量2.(16)0【解析】在采用scanf這個(gè)函數(shù)輸入數(shù)據(jù)時(shí),要嚴(yán)格直守其輸入的規(guī)則定義.本題此函數(shù)定義的規(guī)則是,在兩個(gè)整數(shù)之間加分號(hào)輸入.(17)B)【解析】由于kl等于10,k2等于20,所以關(guān)系表達(dá)式kl>k2的值為假,即等于。,所以在執(zhí)行邏輯表達(dá)式

溫馨提示

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

評(píng)論

0/150

提交評(píng)論