國家計算機二級C歷年真題_第1頁
國家計算機二級C歷年真題_第2頁
國家計算機二級C歷年真題_第3頁
國家計算機二級C歷年真題_第4頁
已閱讀5頁,還剩169頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2009年9月全國計算機等級考試二級筆試試卷C語言程序設計(考試時間90分鐘,滿分100分)、選擇題((1)—(10)、(21)—(40)每題2分,(11)—(20)每題1分,共70分)(1)下列數(shù)據(jù)結構中,屬于非線性結構的是A)循環(huán)隊列B)帶鏈隊列0二叉樹D)帶鏈棧(2)下列數(shù)據(jù)結果中,能夠按照“先進后出”原則存取數(shù)據(jù)的是A)循環(huán)隊列B)棧C)隊列D)二叉樹(3)對于循環(huán)隊列,下列敘述中正確的是A)隊頭指針是固定不變的B)隊頭指針一定大于隊尾指針C)隊頭指針定小于隊尾指針D)隊頭指針可以大于隊尾指針,也可以小于隊尾指針(4)算法的空間復雜度是指A)算法在執(zhí)行過程中所需要的計算機存儲空間B)算法所處理的數(shù)據(jù)量C)算法程序中的語句或指令條數(shù)D)算法在執(zhí)行過程中所需要的臨時工作單元數(shù)(5)軟件設計中劃分模塊的一個準則是A)低內(nèi)聚低耦合B)高內(nèi)聚低糊合0低內(nèi)聚高耦合D)高內(nèi)聚高耦合(6)卜.列選項中不屬于結構化程序設計原則的是A)可封裝D)自頂向E0模塊化D)逐步求精(7)軟件詳細設計產(chǎn)生的圖如下:該圖是N-S圖PAD圖0程序流程圖D)E-R圖(8)數(shù)據(jù)庫管理系統(tǒng)是A)操作系統(tǒng)的一部分B)在操作系統(tǒng)支持下的系統(tǒng)軟件0一種編譯系統(tǒng)D),種操作系統(tǒng)(9)在E-R圖中,用來表示實體聯(lián)系的圖形是A)橢圓圖B)矩形0菱形D)三角形A)選擇B)投影0交D)并(11)以下敘述中正確的是A)程序設計的任務就是編寫程序代碼并上機調(diào)試B)程序設計的任務就是確定所用數(shù)據(jù)結構C)程序設計的任務就是確定所用算法D)以上三種說法都不完整(12)以下選項中,能用作用戶標識符的是void8_8_0_unsigned(13)閱讀以下程序#includemain(){intcase;floatprintF;printf(“請輸入2個數(shù):”);scanf(w%d%fw,&case,&pjrintF);printf(M%d%f\nM,case,printF);}該程序編譯時產(chǎn)生錯誤,其出錯原因是A)定義語句出錯,case是關鍵字,不能用作用戶自定義標識符B)定義語句出錯,printF不能用作用戶門定義標識符C)定義語句無錯,scanf不能作為輸入函數(shù)使用D)定義語句無錯,printf不能輸出case的值(14)表達式:(int)((double)9/2)-(9)%2的值是0345(15)若有定義語句:intx=10;,則表達式x-=x+x的值為-20-10010(16)有以下程序#includemain(){inta=l,b=0;printf("%d,",b=a+b);printfCM%d\nM,a=2*b);)程序運行后的輸出結果是0,01,03,21,217)設有定義:inta=l,b=2,c=3;,以下語句中執(zhí)行效果與其它三個不同的是if(a>b)c=a,a=b,b=c;if(a>b){c=a,a=b,b=c;}if(a>b)c=a;a=b;b=c;if(a>b){c=a;a=b;b=c;}(18)有以下程序ttincludemain(){intc=0,k;for(k=l;k<3;k++)switch(k){default:c+=kcase2:c++;break;case4:c+=2;break;)printf("%d\n",c);)程序運行后的輸出結果是3579(19)以下程序段中,與語句:k=a>b?(b>c?l:0):0;功能相同的是if((a>b)&&(b>c))k=l;elsek=0;if((a>b)|I(b>c)k=l;elsek=0;if(a<=b)k=0;elseif(b<=c)k=l;if(a>b)k=l;elseif(b>c)k=l;elsek=0;20)有以下程序ttincludemain(){chars[]={“012xy"};inti,n=0;for(i=0;s[i]!=0;i++)if(s[i]>=,a*&&s[i]<=,z*)n++;printf("%d\n",n);)程序運行后的輸出結果是0235(21)有以下程序#includemainO{intn=2,k=0;while(k++&&n++>2);printf(M%d%d\nw,k,n);)程序運行后的輸出結果是0213057D)12(22)有以下定義語句,編譯時會出現(xiàn)編譯錯誤的是chara=,a*;chara=>\n';chara='aa';chara=,\x2d,;(23)有以下程序#includemain(){charcl,c2;cl='A'+'8'-'4';c2='A'+'8'-'5';printf(M%c,%d\nM,cl,c2);}已知字母A的ASCII碼為65,程序運行后的輸出結果是A)E,68C)E,DD)輸出無定值(24)有以下程序#includevoidfun(intp)intd=2;p=d++;printf(M%dM,p);}main()inta=l;fun(a);printf("%d\n",a);}程序運行后的輸出結果是32122122(25)以下函數(shù)findmax擬實現(xiàn)在數(shù)組中查找最大值并作為函數(shù)值返回,但程序中有錯導致不能實現(xiàn)預定功能#defineMIN-2147483647intfindmax(intx[],intn){inti,max;for(i=0;i<N;I++)<p=""/>{max二MIN;if(maxreturnmax;)造成錯誤的原因是A)定義語句inti,max;中max未賦初值B)賦值語句max二MIN;中,不應給max賦MIN值C)語句if(maxD)賦值語句max=MIN;放錯了位置(26)有以下程序4includemainO{intm=l,n=2,*p=&m,*q=&n,*r;r=p;p=q;q=r;printf("%d,%d,%d,%d\n",m,n,*p,*q);)程序運行后的輸出結果是1,2,1,21,2,2,12,1,2,12,1,1,2(27)若有定義語句:inta[4][10],*p,*q[4];且0Wi<4,則錯誤的賦值是p=aq[i]=a[i]p=a[i]p=&a[2][l](28)有以下程序4include#includemainO{charstr[][20]={<<One*Worldn,uOne*Dream!w,*p=str[l];printf(“%d,”,strlen(p));printf(u%s\n",p);)程序運行后的輸出結果是9,One*World9,One*Dream10,One*Dream10,One*World(29)有以下程序#includemain(){inta[]={2,3,5,4},i;for(i=0;i<4;i++)switch(i%2){case0:switch(a[i]%2){caseO:a[i]++;break;case1:a[i]一;}break;case1:a[i[=0;}for(i=0;i<4;i++)printf( ,a[i]);printf(w\nM);}33442050D)0304(30)有以下程序#include#includemain(){chara[10]="abed";printf(a%d,%d\nw,strlen(a),sizeof(a));}程序運行后的輸出結果是7,44,108,810,10(31)下面是有關C語言字符數(shù)組的描述,其中錯誤的是A)不可以用賦值語句給字符數(shù)組名賦字符串B)可以用輸入語句把字符串整體輸入給字符數(shù)組C)字符數(shù)組中的內(nèi)容不一定是字符串D)字符數(shù)組只能存放字符串(32)下列函數(shù)的功能是fun(char*a,char*b){while((*b=*a)!=,\0'){a++,b++;}}A)將a所指字符串賦給b所指空間B)使指針b指向a所指字符串C)將a所指字符串和b所指字符串進行比較D)檢查a和b所指字符串中是否有'\(T(33)設有以下函數(shù)voidfun(intn,char*s){ }則下面對函數(shù)指針的定義和賦值均是正確的是void(*pf)();pf=fun;viod*pf();pf=fun;void*pf0;*pf=fun;void(*pf)(int,char);pf=&fun;(34)有以下程序^includeintf(intn);main(){inta=3,s;s=f(a);s=s+f(a)jprintf(M%d\nw,s);)intf(intn){staticinta=l;n+=a++;returnn;)程序運行以后的輸出結果是78910(35)有以下程序4include#definef(x)x*x*xmain(){inta=3,s,t;s=f(a+1);t=f((a+1));printf(**%d,%d\n,,s,t);)程序運行后的輸出結果是10,6410,1064,1064,64(36)下面結構體的定義語句中,錯誤的是TOC\o"1-5"\h\zstruct ord {int x;int y;int z;};struct ord a;struct ord {int x;int y;int z;} struct ord a;struct ord {int x;int y;int z;} a;struct {int x;inty;intz;) a;(37)設有定義:char*c;,以下選項中能夠使字符型指針c正確指向一個字符串的是charstr[]=wstring”;c=str;scanf("%s",c);c=getchar0;*c=wstringw;(38)有以下程序#include#includestructA{inta;charb[10];doublec;};structAf(structAt);mainO{structAa={1001,wZhangDa”,1098.0};a=f(a);jprintf(M%d,%s,%6.lf\nw,a.a,a.b,a.c);IstructAf(structAt)(t.a=1002;strcpy(t.b,°ChangRong");t.c=1202.0;returnt;)程序運行后的輸出結果是1001,ZhangDa,1098.01001,ZhangDa,1202.01001,ChangRong,1098.01001,ChangRong,1202.0(39)若有以下程序段intr=8;printf(M%d\nM,r?l);輸出結果是16842(40)下列關于C語言文件的敘述中正確的是A)文件由一系列數(shù)據(jù)依次排列組成,只能構成二進制文件B)文件由結構序列組成,可以構成二進制文件或文本文件C)文件由數(shù)據(jù)序列組成,可以構成二進制文件或文本文件D)文件由字符序列組成,其類型只能是文本文件二、填空題(每空2分,共30分)(1)某二叉樹有5個度為2的結點以及3個度為1的結點,則該二叉樹中共有【1】個結點。(2)程序流程圖中的菱形框表示的是【2】o(3)軟件開發(fā)過程主要分為需求分析、設計、編碼與測試四個階段,其中【3】階段產(chǎn)生“軟件需求規(guī)格說明書。(4)在數(shù)據(jù)庫技術中,實體集之間的聯(lián)系可以是一對一或一對多或多對多的,那么“學生”和“可選課程”的聯(lián)系為[4]o(5)人員基本信息一般包括:身份證號,姓名,性別,年齡等。其中可以作為主關鍵字的是[5】。(6)若有定義語句:inta=5;,則表達式:a++的值是【6】。(7)若有語句doublex=17;inty;,當執(zhí)行y=(int)(x/5)%2;之后y的值為[7]。(8)以下程序運行后的輸出結果是[8】o^includemain(){intx=20;printf(u%dn,0<X<20);<p="/>printf(“機i\n”,0<X&&X<:"/>(9)以下程序運行后的輸出結果是[9】。ttincludemain(){inta=l,b=7;do{b=b/2;a+=b;}while(b>l);printf(a%d\nw,a);}(10)有以下程序#includemain(){intf,fl,f2,i;fl=0;f2=l;printf(w%d%dwfor(i=3;i<=5;i++){f=fl+f2;printf(w%dw,f):fl=f2;f2=f;)printf(“\n”);}程序運行后的輸出結果是[10]。(11)有以卜一程序#includeinta=5;voidfun(intb){inta=10;a+=b;printf("%d”,a);}main0{inte=20;fun(c);a+=c;printf(w%d\nM,a);}程序運行后的輸出結果是[11]o(12)設有定義:structperson{intID;charname[12];}p;請將scanf(“%d”,【12]);語句補充完整,使其能夠為結構體變量p的成員ID正確讀入數(shù)據(jù)。(13)有以下程序#includemain(){chara[20]="Howareyou?w,b[20];scanf(<4%sw,b)jprintf(u%s%s\nw,a,b);I程序運行時從鍵盤輸入:Howareyou?〈回車》則輸出結果為【13】o(14)有以下程序#includetypedefstruct{intnum;doubles}REC;voidfunl(RECx){x.num=23;x.s=88.5;}main(){RECa={16,90.0};funl(a);printf("%d\n",a.num);I程序運行后的輸出結果是(14]o(15)有以下程序^includefun(intx){if(x/2>0)run(x/2);printf( ,x);}main(){fun(6)jprintf(u\nn);}程序運行后的輸出結果是(151o2009年9月全國計算機等級考試二級C語言筆試參考答案一、選擇題

(1)C(2)B(3)D(4)A(5)B(6)A(7)C(8)B(9)C(10)D(11)D(12)C(13)A(14)B(15)B(16)D(17)C(18)A(19)A(20)B(21)D(22)C(23)A(24)C(25)D(26)B(27)A(28)C(29)C(30)B(31)D(32)A(33)A(34)c(35)A(36)B(37)A(38)D(39)c(40)C*答案僅供參考(10)01123(9)5(8)10(7)1(6)5(5)身份證號(4)多對多(3)需求分析(2)邏輯條件(1)14二、填空題2009年3月二級C語言筆試真題及答案((1)—(10)每小題2分,(11)—(50)每題1分,共60分)下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項涂寫在答題卡相應位置上,答在試卷上不得分.(1)下列敘述中正確的是A)棧是“先進先出”的線性表B)隊列是“先進先出”的線性表C)循環(huán)隊列是非線性結構D)有序性表既可以采用順序存儲結構,也可以采用鏈式存儲結構(2)支持子程序調(diào)用的數(shù)據(jù)結構是A)棧B)樹C)隊列D)二叉樹(3)某二叉樹有5個度為2的結點,則該二叉樹中的葉子結點數(shù)是A)10B)8C)6D)4(4)下列排序方法中,最壞情況下比較次數(shù)最少的是A)冒泡排序B)簡單選擇排序C)直接插入排序D)堆排序(5)軟件按功能可以分為:應用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于應用軟件的是A)編譯軟件B)操作系統(tǒng)C)教務管理系統(tǒng)D)匯編程序(6)下面敘述中錯誤的是A)軟件測試的目的是發(fā)現(xiàn)錯誤并改正錯誤B)對被調(diào)試的程序進行“錯誤定位”是程序調(diào)試的必要步驟C)程序調(diào)試通常也稱為DebugD)軟件測試應嚴格執(zhí)行測試計劃,排除測試的隨意性(7)耦合性和內(nèi)聚性是對模塊獨立性度鼠的兩個標準。下列敘述中正確的是A)提高耦合性降低內(nèi)聚性有利于提高模塊的獨立性B)降低耦合性提高內(nèi)聚性有利于提高模塊的獨立性C)耦合性是指?個模塊內(nèi)部各個元素間彼此結合的緊密程度D)內(nèi)聚性是指模塊間互相連接的緊密程度(8)數(shù)據(jù)庫應用系統(tǒng)中的核心問題是A)數(shù)據(jù)庫設計B)數(shù)據(jù)庫系統(tǒng)設計C)數(shù)據(jù)庫維護D)數(shù)據(jù)庫管理員培訓(9)有兩個關系R,S如下:RABCa32b01c21口二由關系R通過運算得到關系s,則所使用的運算為A)選擇B)投影C)插入D)連接(10)將E-R圖轉換為關系模式時,實體和聯(lián)系都可以表示為A)屬性B)鍵C)關系D)域(11)以下選項中合法的標識符是A)1-1B)1—1C)-11D)1—(12)若函數(shù)中有定義語句:intk;,則A)系統(tǒng)將自動給k賦初值0B)這時k中值無定義C)系統(tǒng)將自動給k賦初值-1D)這時k中無任何值(13)以下選項中,能用作數(shù)據(jù)常量的是A)0115B)0118C)1.5el.5D)115L(14)設有定義:intx=2;,以下表達式中,值不為6的是x*=x+lx++,2*xx*=(1+x)2*x,x+=2(15)程序段:intx=12;doubley=3.141593;printf("%d%8.6f”,x,y);的輸出結果是123.141593123.14159312,3.141593123.141593<16)若有定義語句:doublex,y,*px,*py,執(zhí)行了px=&x,py=&y;之后,正確的輸入語句是scanf( ,x,y);scanf( ;scanf(u%lf%leM,px,py);scanf( ,x,y);(17)以卜是if語句的基本形式:if(表達式)語句其中“表達式”A)必須是邏輯表達式B)必須是關系表達式C)必須是邏輯表達式或關系表達式D)可以是任意合法的表達式(18)有以下程序^include<stdio.h>main(){intx;scanf(“%d”,&x);if(x<=3);elseif(x!=10)printf("%d\n",x);)程序運行時,輸入的值在哪個范圍才會有輸出結果A)不等于10的整數(shù)B)大于3且不等于10的整數(shù)C)大于3或等于10的整數(shù)D)小于3的整數(shù)(19)有以下程序#include<stdio.h>Main(){inta=l,b=2,c=3,d=0;if(a==1&&b++==2)if(b!=211c—!=3)printf("%d,%d,%d\n”,a,b,c);elseprintf( %d,%d\nM,a,b,c);elseprintf(w%d,%d,%d\nn,a,b,c);}程序運行后的輸出結果是1,2,31,3,21,3,33,2,1(20)以下程序中的變量已正確定義for(i=0;i<4;i++,i++for(k=l;k<3;k++);printf(*”);程序段的輸出結果是***************(21)有以下程序#include<stdio.h>main(){char*s=(“ABC);do{printf(“%d”,*s%10);s++;(while(*s);}注意,字母A的ASCII碼值為65。程序運行后的輸出結果是5670656667567ABC(22)設變量已正確定義,以卜不能統(tǒng)計出一行中輸入字符個數(shù)(不包含回車符)的程序段是n=0;while((ch=getchar())!=\n)n++;n=0;while(getchar()!='\n')n++;for(n=0;getchar()!='\n';n++);n=0;for(ch=getchar();ch!二'\n';n++);(23)有以下程序#include<stdio.h>main(){intal,a2;charcl,c2;scanf(0%d%c%d%cn,&al,&c1,&a2,&c2);printf(a%d,%c,%d,%cw,41,cl,a2,c2);)cl的值為字符a,c2的值為字符b,程序輸出結果是:若想通過鍵盤輸入,使得alcl的值為字符a,c2的值為字符b,程序輸出結果是:12,a,34,b,則正確的輸入格式是(以下代表空格,<CR>代表回車)12a34b<CR>12a34b<CR>12,a,34,b<CR>12a34b<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));程序運行后的輸出結果是A)10B)9C)8D)7(25)有以下程序#include<stdio.h>voidfun(char*s){while(*s){if(*s%2=0)printf( ,*s);s++;))main(){chara[]={"good”);fun(a);printf("\n”);)注意:字母a的ASCH碼值為97,程序運行后的輸出結果是A)dgogodD)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)jprintf("%d,%d,”,*p,*q);fun(&x,&y)jprintf(0%d,%d\nw,*p,*q);程序運行后的輸出結果是3,5,5,33,5,3,55,3,3,55,3,5,3(27)有以下程序^include<stdio.h>viodf(int*p,int*q);main(){intm=l,n=2,f(r,&n)jprintf(w%d,%dw,m,n);}voidf(int*p,int*q){p=p+l;*q=*q+l;}程序運行后輸出的結果是1,32,31,41,2(28)以下函數(shù)按每行8個輸出數(shù)組中的數(shù)據(jù)voidfun(int*w,intn){inti;for(i=0;i<n;i++)printf("%d”,w);printf("\n");)下劃線處應填入的語句是if(i/8=0)print(“\n”);if(i/8==0)continue;if(i%8=0)print(“\n”);if(i%8==0)continue;(29)若有以下定義intx[10],*pt=x;則對x數(shù)組元素的正確應用是*&x[10]*(x+3)*(pt+10)pt+3(30)設有定義:chars[81];inti=10;,以下不能將一行(不超過80個字符)帶有空格的字符串真確讀入的語句或語句組是Agets(s)while((s[i++]=getchar())!="\n";s="\0”;scanf(“%s”,s);do(scanf(M%c,f,&s);}while(s[i++]!=M\nw);s=M\0M;(31)有以下程序#include<stdio.h>main(){char*a[]:{"abed","efw,99gh","ijk"};intI;for(i=0;i<4;i++)printf(“%c”,*a);)程序運行后輸出的結果是aegidfhkabedabedefghijk(32)以下選項中正確的語句組是chars[];s=wBOOK!”;char*s;s={"BOOK!w);chars[10];s=MBOOK!";char*s;s="BOOK!”;(33)有以下程序#include<stdio.h>intfun{intx,inty){if(x==y)return(x);elsereturen((x+y)/2)}main(){inta=4,b=5,c=6;printf("%d\n",fun(2*a,fun(b,c))))程序運行后的輸出結果是368(34)設函數(shù)中有整型變量n,為保證其在未賦值的情況下初值為0,應選擇的存儲類別是autoregisterstaticautoregister(35)有以下程序^include<stdio.h>intb=2;intfun(int*k){b=*k+b;return(b);}main(){inta[10]={l,2,3,4,5,6,7,8},I;for(i=2;i<4;i++)(b=fun(&a)+b;printf(”d",b);}printf("\n");)程序運行后輸出的結果是101281010281016(36)有以下程序#include<stdio.h>^definePT3.5;#defineS(x)PT*x*x;mian(){inta=l,b=2;printf("%4.lf\n”,S(a+b));}程序運行后輸出的結果是14.031.57.5D)程序有錯無輸出結果(37)有以下程序^include<stdio.h>structord{intx,y;}dt[2]={l,2,3,4);main(){structord*p=dt;printf("%d,",Hp->x);printf(“%d\n",++p->y);)程序的運行結果是1,22,33,44,1(38)設有宏定義:4includeIsDIV(k,n) ((k%n==l)?l:0且變量m已正確定義并賦值,則宏調(diào)用:IsDIV(m,5)&&IsDIV(m,7)為真時所要表達的是A)判斷m是否能被5或者7整除B)判斷m是否能被5和7整除C)判斷m被5或者7整除是否余1D)判斷m被5和7整除是否余1(39)有以下程序^include<stdio.h>main(){inta=5,b=l,t;t=(a?2|b);printf("%d\n",t))程序運行后的輸出結果是211161(40)有以下程序^include<stdio.h>main(){EILE*f;f=fopen("filea.txt","w");fprintf(f,"abc");fclose(f);)若文本文件filea.txt中原有內(nèi)容為:hello,則運行以上程序后,文件filea.txt中的內(nèi)容為helloabcabcloabcabchello二、填空題(每空2分,共30分)請將每一個空的正確答案寫在答題卡【1】至【15】序號的橫線匕答在試卷上.不得分。<1)假設一個長度為50的數(shù)組(數(shù)組元素的卜標從0到49)作為棧的存儲空間,棧底指針bottom指向棧底元素,棧頂指針top指向棧頂元素,如果bottom=49,top=30(數(shù)組下標),則棧中具有【1】個元素。(2)軟件測試可分為白盒測試和黑盒測試?;韭窂綔y試屬于[2]測試。(3)符合結構化原則的三種基本控制結構是:選擇結構、循環(huán)結構和[3].(4)數(shù)據(jù)庫系統(tǒng)的核心是14】(5)在E-R圖中,圖形包括矩形框、菱形框、橢圓框。其中表示實體聯(lián)系的是[5]框。(6)表達式(int)((double)(5/2)+2.5)的值是[6】<7)若變量x、y已定義為int類型且x的值為99,y的值為9,請將輸出語句printf(17】,x/y);補充完整,使其輸出的計算結果形式為:x/y=ll(8)有以下程序^include<stdio.h>main()(charcl,c2;scanf("&c",&cl);while(cl<65||cl>90)scanf( ,&cl);c2=cl+32;printf(u&c,&c\nw,cl,c2);)程序運行輸入65回車后,能否輸出結果、結束運行(請回答能或不能)【8】0(9)以下程序運行后的輸出結果是[9】^include<stdio.h>main(){intk=Ls=0;do{if{((k&2)!=0)continue;s+=k;k++;}while(k)10):printf(us=&d/nM,s);(10)下列程序運行時,若輸入labcedl2df<回車〉輸出結果為[10]#include<stdio.h>main(){chara=0,ch;while((ch=getchar())!=*\n'){if(a&2!=0&&(ch>fa'&&ch<='z'))ch=ch-'a'+'A'a++;putchar(ch);}printf(“\n”);}(11)有以下程序,程序執(zhí)行后,輸出結果是【11】^include<stdio.h>voidfun(int*a){a[0=a[l];]}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(w\nw);)(12)請將以下程序中的函數(shù)聲明語句補充完整^include<stdio.h>int[12]main(){intx,y,(*p)();p=max;printf(°&d\nw,&x,&y);}Intmax(inta,intb){return(a>b/a:b);}(13)以下程序用來判斷指定文件是否能正常打開,清填空^include<stdio.h>main(){FILE*fp;if(((fp:fopen("test,txt","r"))=[13]))printf(“未能打開文件!\n");elseprintf("文件打開成功!\n”);(14)下列程序的運行結果為[14]#include<stdio.h>#include〈string.h>structA{inta;charb[10]jdoublec;};voidf(structA*t);mainO{structAa=(1001,nZhangDaw,1098,0);f(&a)iprintf( if\n”,a.a,a.b,a.c);|voidf(structA*t){strcpy(t->b,nChangRongM);}(15)以卜.程序把三個NODETYPE型的變量鏈接成一個簡單的鏈表,并在while循環(huán)中輸出鏈表結點數(shù)據(jù)域中的數(shù)據(jù),請?zhí)羁?include<stdio.h>structnode{intdata;structnode*next;};typedefstructnodeNODETYPE;mainO{NODETYPEa,b,c,*h,*p;a.data=10;b.data=20;c.data=30;h=&a;b.next=&b;b.next=&c;c.next='\0,;P=h;while(p){printf(,p->data);[15];}}答案:選擇題:PIO:DACDCABABC11?20:CBDDACDBCB21?30:CDABABACBC31?40:ADBCCCBDAC填空題:19(2)白盒(3)順序結構(4)數(shù)據(jù)庫管理系統(tǒng)(DBMS)(5)菱形(6)4(7)"x/y=%d"(8)能(9)s=0(10)lAbCeDf2dF7777654321(12)max(inta,intb)(13)NULL(14)1001,ChangRong,1098.0(15)p=p—>next2008年9月二級C語言筆試真題及答案(考試時間:120分鐘,滿分100分)一、選擇題《1)?(10),(21)?(40)每題2分,(11)?(20)每題1分,70分)卜.列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應位置匕答在試卷上不得分。(1)一個棧的初始狀態(tài)為空。現(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入棧,然后再依次出棧,則元素出棧的順序是()。A)12345ABCDEB)EDCBA54321C)ABCDE12345D)54321EDCBA(2)下列敘述中正確的是().A)循環(huán)隊列有隊頭和隊尾兩個指針,因此,循環(huán)隊列是非線性結構B)在循環(huán)隊列中,只需要隊頭指針就能反映隊列中元素的動態(tài)變化情況C)在循環(huán)隊列中,只需要隊尾指針就能反映隊列中元素的動態(tài)變化情況D)循環(huán)隊列中元素的個數(shù)是由隊頭指針和隊尾指針共同決定(3)在長度為〃的有序線性表中進行二分查找,最壞情況下需要比較的次數(shù)是().A)03B)0(/?2)C)0(log2/?)D)OSlog2〃)(4)下列敘述中正確的是().A)順序存儲結構的存儲一定是連續(xù)的,鏈式存儲結構的存儲空間不一定是連續(xù)的B)順序存儲結構只針時線性結構,鏈式存儲結構只針對非線性結構C)順序存儲結構能存儲有序表,鏈式存儲結構不能存儲有序發(fā)D)鏈式存儲結構比順序存儲結構節(jié)省存儲空間(5)數(shù)據(jù)流圖中帶有箭頭的線段表示的是()。A)控制流B)事件驅動C)模塊調(diào)用D)數(shù)據(jù)流(6)在軟件開發(fā)中,需求分析階段可以使用的工具是()。A)N-S圖B)DFD圖C)PAD圖D)程序流程圖(7)在面向對象方法中,不屬于“對象”基本特點的是().A)一致性B)分類性C)多態(tài)性D)標識唯一性?間宿舍可住多個學生,則實體宿舍和學生之間的聯(lián)系是()。A)一對一B)一對多C)多對一D)多對多(9)在數(shù)據(jù)管理技術發(fā)展的三個階段中,數(shù)據(jù)共享最好的是()。A)人工管理階段B)文件系統(tǒng)階段C)數(shù)據(jù)庫系統(tǒng)階段D)三個階段相同(10)有三個關系R、S和T如下:RSTABBCABCm113m13n235由關系R和IS通過運算得到關系T,則所使用的運算為().A)笛卡爾積B)交C)并D)自然連接(11)以下敘述中正確的是()oA)C程序的基本組成單位是語句B)C程序中的每?行只能寫一條語句二級C語言程序設計試卷第2頁(共9頁)C)簡單C語句必須以分號結束D)C語句必須在一行內(nèi)寫完(12)計算機能直接執(zhí)行的程序是()oA)源程序B)目標程序C)匯編程序D)可執(zhí)行程序(13)以下選項中不能作為C語言合法常量的是()oA)'cd'B)0.le+6C)”\a"D)'\0U'(14)以下選項中正確的定義語句是()oA)doublea;b;B)doublea=b=7;C)doublea=7,b=7;D)double,a,b;(15)以卜不能正確表示代數(shù)式2血cd的C語言表達式是()oA)2*a*b/c/dB)a*b/c/d*2C)a/c/d*b*2D)2*a*b/c*dC源程序中不能表示的數(shù)制是()。A)二進制B)八進制C)十進制D)十六進制(17)若有表達式(w)?(-x):(++y),則其中與w等價的表達式是(A)w==lB)w==0C)w!=lD)w!=0(18)執(zhí)行以下程序段后,w的值為()ointw='A',x=14,y=15;w=((x||y)&&(w<,a*));A)-1B)NULLC)1D)0(19)若變量已正確定義為ini型,要通過語句scanf("%d,%d,%d",&a,&b,&c);給a賦值1、給b賦值2、給c賦值3,以下輸入形式中錯誤的是(d代表一個空格符)()oA)ddd1,2,3<回車)B)1d2d3<回車)C)l.ddd2,ddd3c回車〉D)1,2,3<回車)(20)有以下程序段inta,b,c;a=10;b=50;c=30;if(a>b)a=b,b=c;c=a;printf(*a=%db=%dc=%d\nM,a,b,c);程序的輸出結果是()oA)a=10b=50c=10B)a=10b=50c=30C)a=10b=30c=10D)a=50b=30c=50(21)若有定義語句:intm[]={5,4,3,2,l},i=4;,則下面對m數(shù)組元素的引用中錯誤的是()oA)m[—i]B)m[2*2]C)m[m[0]]D)m[m[i]](22)下面的函數(shù)調(diào)用語句中func函數(shù)的實參個數(shù)是()ofunc(f2(vl,v2),(v3,v4,v5),(v6,max(v7,v8)));A)3B)4C)5D)8(23)若有定義語句:doublex[5]={l.0,2.0,3.0,4.0,5.0},*p=x;則錯誤引用x數(shù)組元素的是()oA)*pB)x[5]C)*(p+l)D)*x(24)若有定義語句:chars[10]=*1234567\0\0*;,則strlen(s)的值是()<>A)7B)8C)9D)10(25)以下敘述中錯誤的是()oA)用戶定義的函數(shù)中可以沒有return語句B)用戶定義的函數(shù)中可以有多個return語句,以便可以調(diào)用一次返回多個函數(shù)值C)用戶定義的函數(shù)中若沒有return語句,則應當定義函數(shù)為void類型二級C語言程序設計試卷第3頁(共9頁)D)函數(shù)的retum語句中可以沒有表達式(26)以下關于宏的敘述中正確的是()?A)宏名必須用大寫字母表示B)宏定義必須位于源程序中所有語句之前C)宏替換沒有數(shù)據(jù)類型限制D)宏調(diào)用比函數(shù)調(diào)用耗費時間(27)有以下程序#include<stdio.h>main0{inti,j;for(i=3;i>=l;i—){for(j=l;j<=2;j++)printfi+j);printf(*\n*);})程序的運行結果是()oA)234B)432345543C)23D)45434523(28)有以下程序#include<stdio.h>mainO{intx=l,y=2,z=3;if(x>y)if(y<z)printf++z);elseprintf++y);printf(*%d\n*,x++);)程序的運行結果是()oA)331B)41C)2D)1(29)有以下程序#include<stdio.h>main(){inti=5;do{if(i%3=l)if(i%5==2){printf(**%d*,i);break;}i++;}while(i!=0);二級C語言程序設計試卷第4頁(共9頁)程序的運行結果是()。A)*7B)*3*5C)*5D)*2*6(30)有以下程序^include<stdio.h>intfun(inta,intb){if(b==0)returna;elsereturn(fun(-a,—b));)main(){printf(飛d\n”,fun(4,2));)程序的運行結果是()oA)1B)2C)3D)4(31)有以下程序^include<stdio.h>#include<stdlib.h>intfun(intn){int*p;p=(int*)malloc(sizeof(int));*p=n;return*p;)mainO{inta;a=fun(10);printf(*%d\n*,a+fun(10));)程序的運行結果是()oA)0B)10C)20D)出錯(32)有以下程序#include<stdio.h>voidfun(inta,intb){intt;t=a;a=b;b=t;}mainO{intc[10]={l,2,3,4,5,6,7,8,9,0),i;for(i=0;i<10;i+=2)fun(c[i],c[i+l]);for(i=0;i<10;i++)printf(*%d,*,c[i]);printf(*\n*);}程序的運行結果是()?A)1,2,3,4,5,6,7,8,9,0,B)2,1,4,3,6,5,8,7,0,9,C)0,9,8,7,6,5,4,3,2,1,D)0,1,2,3,4,5,6,7,8,9,(33)有以下程序#include<stdio.h>structst二級C語言程序設計試卷第5頁(共9頁){intx,y;)data[2]={l,10,2,20);main(){structst*p=data;printf(*%d,*,p->y);printf(*%d\n*,(++p)->x);)程序的運行結果是()oA)10,1B)20,1C)10,2D)20,2(34)有以下程序^include<stdio.h>voidfun(inta[],intn){inti,t;for(i=0;i<n/2;i++){t=a[i];a[i]=a[n-l-i];a[n-l-i]=t;})main(){intk[10]={l,2,3,4,5,6,7,8,9,10},i;fun(k,5);for(i=2;i<8;i++)printfk[i]);printf(*\n*);)程序的運行結果是()oA)345678B)876543C)1098765D)321678(35)有以下程序#include<stdio.h>^defineN4voidfun(inta[][N],intb[]){inti;for(i=0;i<N;i++)b[i]=a[i][i];)main(){intx[][N]={{1,2,3),{4},{5,6,7,8),{9,10}},y[N],i;fun(x,y);for(i=0;i<N;i++)printf(*%d,y[i]);printf("\n");}程序的運行結果是()oA)1,2,3,4,B)1,0,7,0,C)1,4,5,9,D)3,4,8,10,(36)有以下程序#include<stdio.h>intfun(int(*s)[4],intn,intk){intm,i;m=s[O][k];for(i=l;i<n;i++)if(s[i][k]>m)m=s[i][k];returnm;}二級C語言程序設計試卷第6頁(共9頁)main(){inta[4][4]={{1,2,3,4),(11,12,13,14),{21,22,23,24),{31,32,33,34));printf(*%d\n*?fun(a,4,0));}程序的運行結果是()oA)4B)34C)31D)32(37)有以下程序^include<stdio.h>main(){structSTU{charname[9];charsex;doublescore[2];};structSTUa={"Zhao",' 85.0,90.0),b={"Qian",'f',95.0,92.0);b=a;printf(*%s,%c,%2.Of,%2.Of\n*,,b.sex,b.score[0],b.score[1]);}程序的運行結果是()oA)Qian,f,95,92B)Qian,m,85,90C)Zhao,f,95,92D)Zhao,m,85,90(38)假定已建立以下鏈表結構,且指針p和q已指向如圖所示的結點:headabcdatanexttPtq則以下選項中可將q所指結點從鏈表中刪除并釋放該結點的語句組是()oA)(*p).next=(*q).next;free(p);B)p=q->next;free(q);C)p=q;free(q);D)p->next=q->next;free(q);(39)有以下程序^include<stdio.h>main(){chara=4;printf(*%d\n*,a=a<<l);}程序的運行結果是()o40B)16C)8D)4(40)有以下程序^include<stdio.h>main(){FILE*pf;char*sl="China",*s2="Beijing”;pf=fopen(*abc.dat*,"wb+”);fwrite(s2,7,1,pf);rewind(pf);fwrite(sl,5,1,pf);fclose(pf);)以上程序執(zhí)行后abc.dat文件的內(nèi)容是()0ChinaB)ChinangC)ChinaBeijingD)BeijingChina二級C語言程序設計試卷第7頁(共9頁)二、填空題(每空2分,共30分)請將每一個空的正確答案寫在答題卡【1】至【15】序號的橫線上,答在試卷上不得分。(1)對下列二叉樹進行中序遍歷的結果【1】OABCDEFXYZ(2)按照軟件測試的一般步驟,集成測試應在【2】測試之后進行。(3)軟件工程三要素包括方法、工具和過程,其中,【3】支持軟件開發(fā)的各個環(huán)節(jié)的控制和管理。(4)數(shù)據(jù)庫設計包括概念設計、【4】和物理設計。(5)在二維表中,元組的【5】不能再分成更小的數(shù)據(jù)項。(6)設變量a和b已正確定義并賦初值。請寫出與a-=a+b等價的賦值表達式【6】。(7)若整型變量a和b中的值分別為7和9,要求按以下格式輸出a和b的值:a=7b=9請完成輸出語句:printf("[7]”,a,b);。(8)以下程序的輸出結果是[8]o#include<stdio.h>mainO{inti,j,sum;for(i=3;i>=l;i—){sum=0;for(j=l;j<=i;j++)sum+=i*j;)printf(*%d\n*,sum);)(9)以下程序的輸出結果是[9]o#include<stdio.h>mainO{intj,a[]={l,3,5,7,9,11,13,15},*p=a+5;for(j=3;j;j-){switch(j){case1:printf*p++);break;printf(*%d*,*(—p));二級C語言程序設計試卷第8頁(共9頁)(10)以下程序的輸出結果是【10】o^include<stdio.h>#defineN5intfun(int*s,inta,intn){intj;*s=a;j=n;while(a!=s[j])j—;returnj;)main(){ints[N+l];intk;for(k=l;k<=N;k++)s[k]=k+l;printf("%d\n”,fun(s,4,N));}(11)以下程序的輸出結果是[11]。#include<stdio.h>intfun(intx){staticintt=0;return(t+=x);}main(){ints,i;for(i=l;i<=5;i++)s=fun(i);printfs);)(12)以下程序按下面指定的數(shù)據(jù)給x數(shù)組的下三角置數(shù),并按如下形式輸出,請?zhí)羁铡?372695810#include<stdio.h>mainO{intx[4][4],n=0,i,j;for(j=0;j<4;j++)for(i=3;i>=j;[12]){n++;x[i][j]=[13];)for(i=0;i<4;i++){for(j=0;j<=i;j++)printf(*%3d\x[i][j]);printf(*\n*);}(13)以下程序的功能是:通過函數(shù)func輸入字符并統(tǒng)計輸入字符的個數(shù)。輸入時用字符@作為輸入結束標志。請?zhí)羁?。^include<stdio.h>long[14];二級C語言程序設計試卷第9頁(共9頁)mainO{longn;n=func();printf(*n=%ld\n*,n);}longfunc(){longm;for(m=0;getcharO!=*@*;[15]);returnm;)2008年9月筆試卷參考答案一、選擇題(1)B)(2)D)(3)C)(4)A)(5)D)(6)B)(7)A)(8)B)(9)C)(10)D)(11)C)(12)I))(13)A)(14)C)(15)D)(16)A)(17)D)(18)C)(19)B)(20)A)(21)C)(22)A)(23)B)(24)A)(25)B)(26)C)(27)D)(28)D)(29)A)(30)B)(31)C)(32)A)(33)C)(34)D)(35)B)(36)C)(37)D)(38)D)(39)C)(40)B)二、填空題(1)[1]DBXEAYFZC(2)[2]單元(3)【3】過程(4)"】邏輯設計[5]分量(6)[6]a=a-(a+b)或(a=-b)[7]a=%d\nb=%d(8)[8]1[9]9911(10)[10]3[11]15(12)[12]i—[13]n(14)[14]funcO[15]m++2008年4月二級C語言筆試真題及答案14、person[i].sex15、“filea.dat","r"一、選擇題(共70分)下列各題A),B),C),D)四個選項中,只有一個選項是正確的,請將正確選項涂寫在答題卡相應位置上,答在試卷上不得分。(1)程序流程圖中指有箭頭的線段表示的是A)圖元關系B)數(shù)據(jù)流C)控制流D)調(diào)用關系(2)結構化程序設計的基本原則不包括A)多態(tài)性B)白頂向下C)模塊化D)逐步求精(3)軟件設計中模塊劃分應遵循的準則是A)低內(nèi)聚低耦合B)高內(nèi)聚低耦合C)低內(nèi)聚高耦合D)高內(nèi)聚高耦合(4)在軟件開發(fā)中,需求分析階段產(chǎn)生的主要文檔是A)可行性分析報告B)軟件需求規(guī)格說明書C)概要設計說明書D)集成測試計劃(5)算法的有窮性是指A)算法程序的運行時間是有限的B)算法程序所處理的數(shù)據(jù)量是有限的C)算法程序的長度是有限的D)算法只能被有限的用戶使用(6)對長度為n的線性表排序,在最壞情況下,比較次數(shù)不是n(nT)/2的排序方法是A)快速排序B)冒泡排序C)直接插入排序D)堆排序(7)卜.列關于棧的敘述正確的是A)棧按“先進先出”組織數(shù)據(jù)B)棧按“先進后出”組織數(shù)據(jù)C)只能在棧底插入數(shù)據(jù)D)不能刪除數(shù)據(jù)(8)在數(shù)據(jù)庫設計中,將E-R圖轉換成關系數(shù)據(jù)模型的過程屬『[C]A)需求分析階段B)概念設計階段C)邏輯設計階段D)物理設計階段(9)有三個關系R、S和T如卜.:TBCDa0klRSBCDa0klb1nlBCDf3h2a0kln2xl有關系R和S通過運算得到美系T,則所使用的運算為A)并B)自然連接C)笛卡爾積D)交(10)設有表示學生選課的三張表,學生S(學號,姓名,性別,年齡,身份證號),課程C(課號,課名),選課SC(學號,課號,成績),則表SC的關鍵字(鍵或碼)為A)課號,成績B)學號,成績C)學號,課號D)學號,姓名,成績(11)以下敘述中正確的是A)C程序中的注釋只能出現(xiàn)在程序的開始位置和語句的后面B)C程序書寫格式嚴格,要求一行內(nèi)只能寫一個語句C)C程序書寫格式自由,一個語句可以寫在多行上D)用C語言編寫的程序只能放在一個程序文件中(12)以下選項中不合法的標識符是A)printB)FORC)&aD)_00(13)以下選項中不屬于字符常量的是A)'C'B)"C"C)'\xCCO'D)''072'(14)設變量已正確定義并賦值,以下正確的表達式是A)x=y*5=x+zB)int(15.8%5)0x=y+z+5,++yD)x=25%5.0(15)以卜定義語句中正確的是A)inta=b=O;B)charA=65+l,b='b';C)floata=1,*b=&a,*c二&b;D)doublea=0.0,b=1.1;(16)有以下程序段charch;intk;ch='a';k=12;printf(*%c,%d,*,ch,ch,k);printf("k=%d\n”,k);己知字符a的ASCII十進制代碼為97,則執(zhí)行上述程序段后輸出結果是A)因變量類型與格式描述符的類型不匹配輸出無定值B)輸出項與格式描述符個數(shù)不符,輸出為零值或不定值C)a,97,12k=12D)a,97,k=12(17)已知字母A的ASCII代碼值為65,若變量kk為char型,以下不能正確判斷出kk中的值為大寫字母的表達式是A)kk>=A*&&kk<='Z*B)!(kk〉='A'IIkk<='Z')C)(kk+32)>=*a&&(kk+32)<=*zD)isalpha(kk)&&(kk<91)(18)當變量c的值不為2、4、6時,值也為“真”的表達式是A)(c==2)II(c==4)II(c=6)B)(c>=2&&c<=6)II(c!=3)||(c!=5)C)(c>=2&&c<=6)&&!(c%2)D)(c>=2&&c<=6)&&(c%2!=l)(19)若變量已正確定義,有以下程序段inta-3,b=5,c=7;if(a>b)a=b;c=a;if(c!=a)c=b;printf(*%d,%d,%d\n*,a,b,c);其輸出結果是A)程序段有語法錯B)3,5,303,5,5D)3,5,7(20)有以下程序ttinclude<stdio.h>main(){intx=l,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;b++;break;}a++;b++;break;a++;b++;}printf(Ma=%d,b=%d\nM,a,b);程序的運行結果是A)a=Lb=0B)a=2,b=2C)a=l,b=lD)a=2,b=l(21)有以下程序^include<stdio.h>mainO{intx=8;for(;x>0;x-){if(x%3){printf(w%d,M,x--);continue;}printf(4<%d,”,—x);)1程序的運行結果是A)7,4,2B)8,7,5,2C)9,7,6,4D)8,5,4,2(22)以下不構成無限循環(huán)的語句或者語句組是A)n=0;B)n=0;do{++n;)while(n<=0);while(1){n++;}C)n=10;D)for(n=0,i=l;;i++)n+=i;while(n);{n—;}(23)有以下程序#includeCstdio.h>mainO{inta[]={1,2,3,4},y,*p=&a[3];—p;y=*p;printf(ay=%d\nw,y);}程序的運行結果是y=0B)y=lC)y=2D)y=3(24)以下錯誤的定義語句是A)intx[][3]={{0},{1},{1,2,3});intx[4][3]={{1,2,3}?{1,2,3},{1,2,3),{1,2,3}};intx[4][]={(1,2,3},{1,2,3},{1,2,3},{1,2,3}):intx[][3]={l,2,3,4);(25)設有如下程序段chars[20]="Bejing",*p;p=s;則執(zhí)行P=S;語句后,以下敘述正確的是A)可以用*p表示s[0]s數(shù)組中元素的個數(shù)和p所指字符串長度相等s和p都是指針變量D)數(shù)組s中的內(nèi)容和指針變量p中的內(nèi)容相等(26)若有定義:inta[2][3];,以下選項中對a數(shù)組元素正確引用的是A)a[2][!l]B)a[2][3]C)a[0][3]D)a[l>2][!1](27)有定義語句:chars[10];,若要從終端給s輸入5個字符,錯誤的輸入語句是A)gets(&s[O]);B)scanf(“%s”,s+l);C)gets(s);D)scanf(M%sM,s[l]);(28)以下敘述中錯誤的是A)在程序中凡是以開始的語句行都是預處理命令行B)預處理命令行的最后不能以分號表示結束#defineMAX是合法的宏定義命令行C程序對預處理命令行的處理是在程序執(zhí)行的過程中進行的(29)以下結構體類型說明和變量定義中正確的是A)typedefstructB)structREC;{intn;charc;)REC;(intn;charc;);RECtl,t2;RECtl,t2;C)typedefstructREC;D)struct{intn=0;charc='A';}tl,t2;{intn;charc;}RECtl,t2;(30)以下敘述中錯誤的是gets函數(shù)用于從終端讀入字符串getchar函數(shù)用于從磁盤文件讀入字符Ofputs函數(shù)用于把字符串輸出到文件D)fwrite函數(shù)用于以二進制形式輸出數(shù)據(jù)到文件(31)有以下程序ttinclude<stdio.h>main(){ints[12]={l,2,3,4,4,3,2,1,1,1,2,3),c[5]={0},i;for(i=0;i<12;i++)c[s[i]]++;for(i=l;i<5;i++)printf("%d",c[i]);printf("\n");}程序的運行結果是A)1234B)2344C)4332D)1123(32)有以下程序#include<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]={l,2,3,4,5,6,7,8,9,0},k;fun(a,0,3);fun(a,4,9);fun(a,0,9);for(k=0;k<10;k++)printf(M%dw,a[k]);printf(u\nff);)程序運行的結果是A)0987654321B)4321098765C)5678901234D)0987651234(33)有以下程序#include<stdio.h>^include<string.h>voidfun(char*s[],intn){char*t;inti,j;for(i=0;i<n-l;i++)for(j=i+l;j<n;j++)if(strlen(s[i])>strlen(s[j])){t=s[i];s[i]=s[j];s[j]=t;}}main(){char*ss□:{"bcc","bbcc","xy","aaaacc","aabcc");fun(ss,5);printf(M%s,%s\n”,ss[0],ss[4]);程序的運行結果是xy,aaaaccB)aaaacc,xyObcc,aabccD)aabcc,bcc(34)有以F程序^include<stdio.h>intf(intx){inty;if(x=0||x=l)return(3);y=x*x-f(x-2);returny;}main(){intz;z=f(3);printf("%d\n”,z);}程序的運行結果是A)0B)9C)6D)8(35)有以下程序#include<stdio.h>voidfun(char*a,char*b)(while(*a=,**)a++;whi1e(*b二*a){b++;a++;})main(){char*s=w****a*b****w,t[80];fun(s,t);puts(t);}程序的運行結果是A)*****a*bB)a*bC)a*b****D)ab(36)有以程序#include<stdio.h>^include<string.h>typedefstruct{charname[9];charsex;floatscore[2];)STU;voidf(STUa){STUb={“Zhao",'m>,85.0,90.0};inti;strcpy(,);a.sex=b.sex;for(i=0;i<2;i++)a.score[i]=b.score[i]:)mainO{STUc={“Qian",'p',95.0,92.0};f(c);printf(M%s,%c,%2.Of,%2.0f\nw,,c.sex,c.score[0],c.scored]);)程序的運行結果是A)Qian,f,95,92B)Qian,m,85,900Zhao,f,95,92D)Zhao,m,85,90(37)有以下程序^include<stdio.h>main()(FILE*fp;inta[10]={l,2,3},i,n;fp=fopen(adl.datw,MwM);for(i=0;i<3;i++)fprintf(fp,n%dw,a[i]);fprintf(fp,M\nM);fclose(fp);fp=fopen(Mdl.datM,Mr");fscanf(fp,n%d",&n);fclose(fp);printf("%d\n",n);)程序的運行結果是A)12300B)123C)1

溫馨提示

  • 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

提交評論