C語言二級考試筆試真題及答數(shù)_第1頁
C語言二級考試筆試真題及答數(shù)_第2頁
C語言二級考試筆試真題及答數(shù)_第3頁
C語言二級考試筆試真題及答數(shù)_第4頁
已閱讀5頁,還剩123頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2010^3百余a計算機二經(jīng)絆者考鐵,I殿ー、選擇題(1)下列敘述中正確的是A)對長度為n的有序鏈表進行查找,最壞情況下需要的比較次數(shù)為nB)對長度為n的有序鏈表進行對分查找,最壞情況下需要的比較次數(shù)為(n/2)〇對長度為n的有序鏈表進行對分查找,最壞情況下需要的比較次數(shù)為(log2n)D)對長度為n的有序鏈表進行對分查找,最壞情況下需要的比較次數(shù)為(logs)(2)算法的時間復雜度是指A)算法的執(zhí)行時間B)算法所處理的數(shù)據(jù)量〇算法程序中的語句或指令條數(shù)D)算法在執(zhí)行過程中所需要的基本運算次數(shù)(3)軟件按功能可以分為:應用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于系統(tǒng)軟件的是A)編輯軟件〇教務A)編輯軟件〇教務管理系統(tǒng)(4)軟件(程序)調試的任務是A)診斷和改正程序中的錯誤〇發(fā)現(xiàn)并改正程序中的所有錯誤(5)數(shù)據(jù)流程圖(DFD圖)是A)軟件概要設計的工具C)結構化方法的需求分析工具B)操作系統(tǒng)D)瀏覽器B)盡可能多地發(fā)現(xiàn)程序中的錯誤D)確定程序中錯誤的性質B)軟件詳細設計的工具D)面向對象方法的需求分析工具(6)軟件生命周期可分為定義階段,開發(fā)階段和維護階段。詳細設計屬于A)定義階段 B)開發(fā)階段C)維護階段 C)上述三個階段(7)數(shù)據(jù)庫管理系統(tǒng)中負責數(shù)據(jù)模式定義的語言是A)數(shù)據(jù)定義語言 B)數(shù)據(jù)管理語言〇數(shù)據(jù)操縱語言 D)數(shù)據(jù)控制語言(8)在學生管理的關系數(shù)據(jù)庫中,存取ー個學生信息的數(shù)據(jù)單位是A)文件 B)數(shù)據(jù)庫C)字段 D)記錄(9)數(shù)據(jù)庫設計中,用E-R圖來描述信息結構但不涉及信息在計算機中的表示,它屬于數(shù)據(jù)庫設計的A)需求分析階段 B)邏輯設計階段〇概念設計階段 D)物理設計階段(10)有兩個關系R和T如下:R TABCa12b22ABCc32c32d32d32則山關系R得到關系T的操作是A)選擇 B)投影C)交D)并(11)以下敘述正確的是A)C語言程序是由過程和函數(shù)組成的B)C語言函數(shù)可以嵌套調用,例如:fun(fun(x))〇C語言函數(shù)不可以單獨編譯D)C語言中除了main函數(shù),其他函數(shù)不可作為單獨文件形式存在(12)以下關于C語言的敘述中正確的是A)C語言中的注釋不可以夾在變量名或關鍵字的中間B)C語言中的變量可以在使用之前的任何位置進行定義〇在C語言算術表達式的書寫中,運算符兩側的運算數(shù)類型必須一致D)C語言的數(shù)值常量中夾帶空格不影響常量值的正確表示(13)以下C語言用戶標識符中,不合法的是A) 1 B)AaBc C)a bD)a b(14)若有定義:d〇ub1ea=22;inti=0,k=l8;,則不符合C語言規(guī)定的賦值語句是A)a=a++,i++; B)i=(a+k)<=(i+k);C)i=a%ll; D)i=!a;(15)有以下程序#include<stdio.h>main(){chara,b,c,d;scanf("%c%c",&a,&b);c=getchar();d=getchar;printf("%c%c%c%c\n”,a,b,c,d);}當執(zhí)行程序時,按下列方式輸入數(shù)據(jù)(從第1列開始,VCR>代表回車,注意:回車也是ー個字符)12<CR>34<CR>則輸出結果是A)1234B)12C)12 D)123 34(16)以下關于C語言數(shù)據(jù)類型使用的敘述中錯誤的是A)若要準確無誤差的表示自然數(shù),應使用整數(shù)類型B)若要保存帶有多位小數(shù)的數(shù)據(jù),應使用雙精度類型〇若要處理如“人員信息”等含有不同類型的相關數(shù)據(jù),應自定義結構體類型D)若只處理“真”和“假”兩種邏輯值,應使用邏輯類型(17)若a是數(shù)值類型,則邏輯表達式(a==I)丨|(a!=1)的值是A)1 B)0C)2 D)不知道a的值,不能確定(18)以下選項中與if(a=l)a=b;elsea++;語句功能不同的switch語句是A)switch(a){case1:a=b;break;default:a++;B)switch(a==l){case0:a=b;break;case1:a++;}C)switch(a){default:a++;break;case1:a=b;}D)switch(a==l){case1:a=b;break;case0:a++;}(19)有如下嵌套的if語句if(a<b)if(a<c)k=a;elsek=c;if(b<c)k=b;elsek=c;以下選項中與上述if語句等價的語句是A)k=(a<b)?a:b;k=(b<c)?b:c;B)k=(a<b)?((b<c)?a:b)((b>c)?b:c);C)k=(a<b)?((a<c)?a:c)((b<c)?b:c);D)k=(a<b)?a:b;k=(a<c)?a:c;(20)有以下程序#include<stdio.h>main(){inti,j,m=l;for(i=l;i<3;i++){for(j=3;j>0;j—){if(i+j>3)break;m*=i*j;})printf("m二%d\n”,m);程序運行后的輸出結果是A)m=6B)m=2C)m=4D)m=5(21)有以下程序#include<stdio.h>main(){inta=1,b=2;for(;a<8;a++){b+=a;a+=2;}printf(4<%d,%d\nw,a,b);}程序運行后的輸出結果是A)9,18 B)8,11 07,11D)10,14(22)有以下程序,其中k的初值為ハ進制數(shù)#include<stdio.h>main(){intk=Oil;printf(a%d\n9f,k++);)程序運行后的輸出結果是A)12 B)11 C)10 D)9(23)下列語句組中,正確的是A)char*s;s="OlympicM; B)chars[7];s="OlympicM;C)char*s;s={”O(jiān)lympic"};D)chars[7];s={"Olympic”};(24)以下關于return語句的敘述中正確的是A)ー個自定義函數(shù)中必須有一條return語句B)一個自定義函數(shù)中可以根據(jù)不同情況設置多條return語句C)定義成void類型的函數(shù)中可以有帶返回值的return語句D)沒有return語句的自定義函數(shù)在執(zhí)行結束時不能返同到調用處(25)下列選項中,能正確定義數(shù)組的語句是A)intnum[O..2008]; B)intnum[];C)intN=2008 ; D)#defineN2008intnum[N]; intnum[N];(26)有以下程序#includeくstdio.h>voidfun(char*c,intd){?c=*c+l;d=d+l;printf(a%c,%cw,*c,d);}main(){charb=(a9,a='A';fun(&b,a);printf("%c,%c\n”,b,a);)程序運行后的輸出結果是A)b,B,b,A B)b,B,B,AC)a,B,B,a D)a,B,a,B(27)若有定義int(*pt)[3];,則下列說法正確的是A)定義了基類型為int的三個指針變量B)定義了基類型為int的具有三個元素的指針數(shù)組pt〇定義了一個名為*pt、具有三個元素的整型數(shù)組D)定義了一個名為pt的指針變量,它可以指向每行有三個整數(shù)元素的二維數(shù)組(28)設有定義doublea[10],*s=a;,以下能夠代表數(shù)組元索a[3]的是A)(*s)[3] B) *(s+3)C)*s[3] D) *s+3(29)有以下程序#include<stdio.h>main(){inta[5]={l,2,3,4,5},b[5]={0,2,1,3,0},i,s=0;for(i=l;i<3;i++)s=s+a[b[i]];printf("%d\n",s);)程序運行后的輸出結果是A)6 B)10C)11 D)15(30)有以下程序#include<stdio.h>main(){intb[3][3]={0,1,2,0,1,2,0,1,2),i,j,t=l;for(i=l;i<3;i++)for(j=l;j<=l;j++)t+=b[i][b[j][i]];printf("%d\n",t);)程序運行后的輸出結果是A)1 B)3 C)4 D)9(31)若有以下定義和語句charsi[10]="abed!", s2=H\nl23\\";printf("%d%d\n",strlen(si),strlen(s2));則輸出結果是A)5 5 B)10 5 010 7 D)5 8(32)有以下程序#include<stdio.h>配efineN8voidfun(int*x,inti){*x二?x+i;}main(){inta[N]={l,2,3,4,5,6,7,8},i;fun(a,2);for(i=l;i<N/2;i++){printf("%d",a[i]);}printf(“\n”);)程序運行后的輸山結果是A)1313 B)2234 C)3234 D)1234(33)有以下程序#include<stdio.h>intf(intt[],intn);main(){inta[4]={l,2,3,4},s;s=f(a,4);printf(M%d\nw,s);}intf(intt[],intn){if(n>0)returnt[n-l]+f(t,n-1);elsereturn0;}程序運行后的輸出結果是A)4B)10C)(34)有以下程序#include<stdio.h>intfun()(staticintx=l;x*=2;returnx;)main()(inti,s=l;for(i=l;i<=2;i++)s=fun();printf("%d\n",s);}程序運行后的輸出結果是A)0 B)1(35)有以下程序#include<stdio.h>ttdefineSUB(a)(a)-(a)main()(inta=2,b=3,c=5,d;d=SUB(a+b)*c;printf("%d\n”,d);}程序運行后的輸山結果是A)0 B)-12(36)設有定義:structcomplex(intreal,unreal;}datal=(l,8),data2;則以下賦值語句中錯誤的是A)data2=datal;C)data2.real=datal.real;(37)有以下程序14 D)6C)4 D)80-20 D)10B)data2=(2,6);D)data2.real=datal.unreal;#includeくstdio.h>#include<string.h>structA(inta;charb[10];doublec;};voidf(structAt);main()(structAa={1001,“ZhangDa”,1098.0};f(a);printf("%d,%s,%6.If\n",a.a,a.b,a.c);}voidf(structAt){t.a=1002;strcpy(t.b,"ChangRong");t.c=1202.0;}輸出結果是A)1001,ZhangDa,1098.0B)1002,ChangRong,1202.0C)1001,ChangRong,10980D)1002,ZhangDa,1202.0(38)有以下定義和語句structworkers{intnum;charname[20];charc;struct{intday;intmonth;intyear;}s};structworkersw,*pw;pw=&w;能給w中year成員賦!980的語句是A)pw.year=1980;C)pw->year=1980;(39)有以下程序#include<stdio.h>main(){inta=2,b=a,c=2;printf("%d\n”,a/b&c);}程序運行后的輸出結果是A)0 B)1(40)有以下程序#include<stdio.h>main(){FILE*fp;charstr[10];fp=open("myfile,dat“,“w");fputs("abcw,pf);close(pf);fp=open("myfile.dat", );fprintf(pf,"%dn,28);rewind(pf);fscanf(pf,"%sw,str);puts(str);close(pf);}程序運行后的輸出結果是A)abcC)abc28二、填空題(每空2分,共30分)請將每空的正確答案寫在答題卡【1】ザB)w.year=1980;D)w.s.year=1980;C)2 D)3B)28cD)因類型不一致而出錯-[15]序號的橫線上,答在試卷上不得分。(1)ー個隊列的初始狀態(tài)為空。現(xiàn)將元素A,B,C,D,E,F,5,4,3,2,1依次入隊,然后再依次退隊,則元素退隊的順序為【1】。(2)設某循環(huán)隊列的容量為50,如果頭指針front=45(指向隊頭元素的前一位置),尾指針rear=10(指向隊尾元素),則該循環(huán)隊列中共有【2】 個元素。(3)設ニ叉樹如下:對該ニ叉樹進行后序遍歷的結果為 【3】.(4)軟件是[4]數(shù)據(jù)和文檔的集合。(5)有一個學生選課的關系,其中學生的關系模式為:學生(學號,姓名,班級,年齡),課程的關系模式為:課程(課號,課程名,學時),其中兩個關系模式的鍵分別是學號和課號,則關系模式選課可定義為:選課(學號,【5】,成績)。(6)設x為int型變量,請寫出ー個關系表達式 【6],用以判斷x同時為3和7的倍數(shù)時,關系表達式的值為真。(7)有以下程序#include<stdio.h>main(){inta=l,b=2,c=3,d=0;if(a==l)if(b!=2)if(c==3)d=l;elsed=2;elseif(c!=3)d=3;elsed=4;elsed=5;printf("%d\n”,d);)程序遠行后的輸出結果是 【7】〇(8)有以下程序#include<stdio.h>main(){intm,n;scanf("%d%d",&m,&n);while(m!=n){while(m>n)m=nrn;while(m<n)n=n-m;}printf(<<%d\n>>,m);)程序運行后,當輸入1463V回車〉時,輸出結果是【8】〇(9)有以下程序#include<stdio.h>main(){inti,j,a[][3]={1,2,3,4,5,6,7,8,9};for(i=l;i<3;i++)for(j=l;j<3;i++)printf(a%d9f,a[i][j]);printf(“\n");}程序運行后的輸出結果是[9](10)有以下程序#include<stdio.h>main(){inta[]={l,2,3,4,5,6},*k[3],i=0;while(i<3){k[i]=&a[2*i];printf("%d",*k[i]);i++;程序運行后的輸出結果是 [10]〇(11)有以下程序#include<stdio.h>main(){inta[3][3]={{1,2,3},{4,5,6},{7,8,9});intb[3]={0},i;for(i=l;i<3;i++)b[i]=a[i][2]+a[2][i];for(i=l;i<3;i++)printf(a%dw,b[i]);printf("\n");}程序運行后的輸出結果是 [11I〇(12)有以下程序#include<stdio.h>#includeくstring.h>voidfun(char*str){chartemp;intn,i;n=strlen(str);temp=str[n-l];for(i=n-l;i>0;iーー)str[i]=str[i-l];str[〇]二temp;main(){chars[50];scanf("%s",s);fun(s);printf("%s\n",s);}程序運行后輸入:abcdefV回車〉,則輸岀結果是[12](13)以下程序的功能是:將值為三位正整數(shù)的變量x中的數(shù)值按照個位、十位、百位的順序拆分并輸出。請?zhí)羁铡?include<stdio.h>main(){intx=256;printf(“%dfd-%d\n”,[13],x/10%10,x/100);)(14)以下程序用以刪除字符串中所有的空格,請?zhí)羁铡?include<stdio.h>main(){char[100]={aOurteacherteachclanguage!w;inti,j;for(i=j=0;s[i]!='、〇’;i++)if(s[i]!=''){s[j]=s[i];j++;}s[j]=[14];printf(“版、n",s);)(15)以下程序的功能是:借助指針變量找出數(shù)組元素中的最大值及其元素的下標值。請?zhí)羁铡?include<stdio.h>main()(inta[10],*p,*s;for(p=a;p-a<10;p++)scanf("%d”,p);for(p二a,s=a;p-aく10;p++)if(*p>*s)s=[15];printf("index=%d\nMs-a);參考答案:ー、選擇題:.C2.D3.B4.A5.C6.B7.A8.D9.C10.A.B12.A13.D14.C15.C16.D17.A18.B19.C20.A21.D22.D23.A24.B25.D26.A27.D28.B29.C30.C31.A32.C33.B34.C35.B36.B37.A38.D39.A40.C二、填空題:(1)ABCDEF54321(2)15(3)EDBGHFCA(4)程序(5)課號(6)(x%3==0)&&(x%7==0)(7)4(8)7(9)123569(10)135(11)101418(12)fabcde(13)x%10(14)'\0'(15)p組ル耳qH公a什ス機キ無才譙ユ紙名紙拿基c語言程序設計(考試時間90分鐘,滿分100分)ー、選擇題((1)—(10)、(21)—(40)每題2分,(11)—(20)每題1分,共70分)(1)下列數(shù)據(jù)結構中,屬于非線性結構的是A)循環(huán)隊列B)帶鏈隊列C)ニ叉樹D)帶鏈棧(2)下列數(shù)據(jù)結果中,能夠按照“先進后出”原則存取數(shù)據(jù)的是A)循環(huán)隊列B)棧C)隊列D)ニ叉樹(3)對于循環(huán)隊列,下列敘述中正確的是A)隊頭指針是固定不變的B)隊頭指針一定大于隊尾指針C)隊頭指¢"1?定小于隊尾指針D)隊頭指針可以大于隊尾指針,也可以小于隊尾指針(4)算法的空間夏雜度是指A)算法在執(zhí)行過程中所需要的計算機存儲空間B)算法所處理的數(shù)據(jù)量C)算法程序中的語句或指令條數(shù)D)算法在執(zhí)行過程中所需要的臨時工作單元數(shù)(5)軟件設計中劃分模塊的一個準則是A)低內聚低耦合B)高內聚低耦合0低內聚高耦合D)高內聚高耦合(6)下列選項中不屬于結構化程序設計原則的是A)可封裝D)自頂向下0模塊化D)逐步求精(7)軟件詳細設計產(chǎn)生的圖如下:N該圖是A)N-S圖B)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)程序設計的任務就是編寫程序代碼并上機調試B)程序設計的任務就是確定所用數(shù)據(jù)結構C)程序設計的任務就是確定所用算法D)以上三種說法都不完整(12)以下選項中,能用作用戶標識符的是void8_8_0_unsigned(13)閱讀以下程序#includemain(){intcase;floatprintF;printf(“請輸入2個數(shù):");scanf(a%d%fw,&case,&pjrintF);printf(a%d%f\nn,case,printF);)該程序編譯時產(chǎn)生錯誤,其出錯原因是A)定義語句出錯,case是關鍵字,不能用作用戶自定義標識符B)定義語句出錯,printF不能用作用戶自定義標識符〇定義語句無錯,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);printf(“知、n”,a=2*b);)程序運行后的輸出結果是0,01,03,21,217)設有定義:inta=l,b=2,c=3;,以下語句中執(zhí)行效果與其它三個不同的是A)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)有以下程序#includemain(){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):05功能相同的是if((a>b)&&(b>c))k=l;elsek=0;if((a>b)II(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)有以ド程序#includemain(){chars[]={a012xyw};inti,n=0;for(i=0;s[i]!=0;i++)if(s[i]>=,a'&&s[i]<=,z')n++;printf( ,n);}程序運行后的輸出結果是0235(21)有以下程序#includemain0{intn=2,k=0;while(k++&&n++>2);printf("%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(a%c,%d\n",cl,c2);}已知字母A的ASCII碼為65,程序運行后的輸出結果是E,68D,69E,DD)輸出無定值(24)有以下程序#includevoidfun(intp)intd=2;p=d++;printf("%d",p);}main()inta=l;fun(a);printf("%d\n",a);}程序運行后的輸出結果是32122122(25)以卜.函數(shù)findmax擬實現(xiàn)在數(shù)組中查找最大值并作為函數(shù)值返回,但程序中有錯導致不能實現(xiàn)預定功能ttdefineMIN-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川IN;放錯了位置(26)有以下程序#includemain(){intm=l,n=2,*p=&m,*q=&n,*r;r=p;p=q;q=r;printf(4<%d,%d,%d,%d\nJ,,m,n,*p,*q);程序運行后的輸出結果是1,2,1,21,2,2,12,1,2,12,1,1,2(27)若有定義語句:inta[4][10],*p,*q[4];.a0^i<4,則錯誤的賦值是p=aq[i]=a[i]p=a[i]p=&a[2][l](28)有以下程序#include#includemain0{charstr[][20]={<<One*World>,,aOne*Dream!n},*p=str[l];printf(a%d,99,strlen(p))jprintf(<4%s\nw,p);}程序運行后的輸出結果是9,One*World9,One*Dream10,0ne*Dream10,0ne*World(29)有以下程序#includemain(){inta[]={2,3,5,4},i;for(i=0;i<4;i++)switch(i%2){case0:switch(a[i]%2){case0:a[i]++;break;case1:a[i]ーー;}break;case1:a[i[=0;}for(i=0;i<4;i++)printf("%d",a[i]);printf("\n");}3344205003040D)0304(30)有以下程序#include#includemain(){chara[10]="abed”;printf(a%d,%d\n",strlen(a),sizeof(a));)程序運行后的輸出結果是7,44,108,810,10(31)下面是有關C語言字符數(shù)組的描述,其中錯誤的是A)不可以用賦值語句給字符數(shù)組名賦字符串B)可以用輸入語句把字符串整體輸入給字符數(shù)組〇字符數(shù)組中的內容不一定是字符串D)字符數(shù)組只能存放字符串(32)下列函數(shù)的功能是fun(char*a,char*b){while((*b二?a)!二‘、〇'){a++,b++;}}A)將a所指字符串賦給b所指空間B)使指針b指向a所指字符串〇將a所指字符串和b所指字符串進行比較D)檢查a和b所指字符串中是否有‘、〇,(33)設有以下函數(shù)voidfun(intn,char*s){ }則卜.面對函數(shù)指針的定義和賦值均是正確的是void(*pf)();pf=fun;viod*pf();pf=fun;void*pf();*pf=fun;void(*pf)(int,char);pf=&fun;(34)有以下程序#includeintf(intn);main(){inta=3,s;s=f(a);s=s+f(a)jprintf(a%d\nw,s);intf(intn){staticinta=l;n+=a++;returnn;)程序運行以后的輸出結果是78910(35)有以下程序#includettdefinef(x)x*x*xmainO{inta=3,s,t;s=f(a+1);t=f((a+D);printf( %d\n',s,t);)程序運行后的輸出結果是10,6410,1064,1064,64(36)下面結構體的定義語句中,錯誤的是TOC\o"1-5"\h\zstruct ord {int x;int y;int z;};structord a;struct ord (int x;int y;int z;} structord a;struct ord {int x;int y;int z;} a;struct {intx;inty;intz;) a;(37)設有定義:char*c;,以ド選項中能夠使字符型指針c正確指向ー個字符串的是charstr[]二"string“;c=str;scanf("%s”,c);c=getchar();*c二”string”;(38)有以下程序#include#includestructA{inta;charb[10];doublec;};structAf(structAt);main(){structAa={1001,nZhangDa",1098.0};a=f(a);jprintf("%d,%s,%6.lf\nM,a.a,a.b,a.c);)structAf(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("%d\n",r>>l);輸出結果是16842(40)下列關于C語言文件的敘述中正確的是A)文件山一系列數(shù)據(jù)依次排列組成,只能構成二進制文件B)文件由結構序列組成,可以構成二進制文件或文本文件〇文件山數(shù)據(jù)序列組成,可以構成二進制文件或文本文件D)文件由字符序列組成,其類型只能是文本文件二、填空題(每空2分,共30分)(1)某ニ叉樹有5個度為2的結點以及3個度為1的結點,則該ニ叉樹中共有【1】個結點。(2)程序流程圖中的菱形框表示的是【2】。(3)軟件開發(fā)過程主要分為需求分析、設計、編碼與測試四個階段,其中【3】階段產(chǎn)生“軟件需求規(guī)格說明書。(4)在數(shù)據(jù)庫技術中,實體集之間的聯(lián)系可以是ー對一或ー對多或多對多的,那么“學生”和“可選課程”的聯(lián)系為【4】〇(5)人員基本信息一般包括:身份證號,姓名,性別,年齡等。其中可以作為主關鍵字的是【5】。(6)若有定義語句:inta=5;,則表達式:a++的值是【6】。(7)若有語句doublex=17;inty;,當執(zhí)行y=(int)(x/5)%2;之后y的值為[7]〇(8)以下程序運行后的輸出結果是【8】〇#includemain(){intx=20;printf(“%d",〇くXく20);く尸”"/>printf(“刎、n”,OCX&&Xく=""/>(9)以下程序運行后的輸出結果是【9】〇#includemain(){inta=l,b=7;do{b=b/2;a+=b;}while(b>l);printf("%d\n",a);}(10)有以下程序#includemain(){intf,fl,f2,i;fl=0;f2=l;printf(w%d%d”,fl,f2);for(i=3;i<=5;i++){f=fl+f2;printf(“%d”,f);fl=f2;f2=f;)printf("\n");}程序運行后的輸出結果是no!〇(id有以下程序#includeinta=5;voidfun(intb){inta=10;a十二b;printf(“知”,a);)main(){intc=20;fun(c);a+=c;printf("%d\nM,a);程序運行后的輸出結果是[11I〇(12)設有定義:structperson{intID;charname[12];}p;請將scanf(“刎”,[12]);語句補充完整,使其能夠為結構體變量p的成員ID正確讀入數(shù)據(jù)。(13)有以下程序#includemain(){chara[20]="Howareyou?",b[20];scanf("%s",b);printf("%s%s\n",a,b);)程序運行時從鍵盤輸入:Howareyou?く回車)則輸出結果為【13】〇(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);}程序運行后的輸出結果是[14]〇(15)有以下程序#includefun(intx){if(x/2>0)run(x/2);printf("%d",x);main(){fun(6);printf("\n");}程序運行后的輸出結果是[15]〇

2009年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犯打耳3月ユ做ク曙+皂鐵,?我((1)—(10)每小題2分,(11)—(50)每題1分,共60分)ド列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項涂寫在答題卡相應位置上,答在試卷上不得分。( 1 )下列敘述中正確的是A)棧是“先進先出”的線性表B)隊列是“先進先出”的線性表C)循環(huán)隊列是非線性結構D)有序性表既可以采用順序存儲結構,也可以采用鏈式存儲結構(2 )支持子程序調用的數(shù)據(jù)結構是A)棧B)樹C)隊歹リD)ニ叉樹(3)某ニ叉樹有5個度為2的結點,則該ニ叉樹中的葉子結點數(shù)是10B)8C) 6D) 4(4)下列排序方法中最壞情況下比較次數(shù)最少的是冃目泡10B)8C) 6D) 4(4)下列排序方法中最壞情況下比較次數(shù)最少的是冃目泡排單選擇 排接插入 排堆排序序序序(5)軟件按功能可以分為:應用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)用 軟A )B )C ) 教D )( 6 )下A)軟件測試件編 譯操 作務 管匯 編面敘述中目的是發(fā)現(xiàn)的是軟件系統(tǒng)理 系統(tǒng)程序錯 誤 的是誤并改正錯誤ド面屬于應是程序調試的必要步驟B)對被調試的程序進行“錯誤定位Debug軟件測試應嚴格排除測試的隨意性軟件測試應嚴格排除測試的隨意性(7)耦合性和內聚性是對模塊獨立性度量的兩個標準。下列敘述中正確的是A)提高耦合性降低B)降低耦合性提高內聚性有利于提高內聚性有利于提髙模塊的獨立性模塊的獨立性耦合性是指A)提高耦合性降低B)降低耦合性提高內聚性有利于提高內聚性有利于提髙模塊的獨立性模塊的獨立性耦合性是指ー個模塊內部各個元素間彼此結合的緊密程度聚性是指模塊的緊密程度(8 ) 數(shù)據(jù)A (8 ) 數(shù)據(jù)A )B) 數(shù)C )D)數(shù)庫應用系統(tǒng)數(shù) 據(jù)據(jù) 庫數(shù) 據(jù)據(jù)庫管中的核心問題是庫 設 計系統(tǒng)設計庫 維 護理員培訓ABCABC( 9 )R有兩個關系(10)將E-R圖轉換為關系模式時,實體和聯(lián)系都可以表示為A)屬性B)鍵C)關系D)域(A)111-1)1—1-11D)12)1314)以oll5設有函統(tǒng)這統(tǒng)這下B定義選

1—

中將時將時int(A)111-1)1—1-11D)12)1314)以oll5設有函統(tǒng)這統(tǒng)這下B定義選

1—

中將時將時int(double15y=3.141593;中0118x=2;,x*二程

printf(語給中給中用)下表k值k無作1.5el.5int賦無賦任據(jù)D1+x“紀%8.6f",x,y))int的輸!定值何量I則0義-1優(yōu)(是115L6的是x*=x+lx++,2*x)2*x,x+=2x=12;結果是123.141593是A)是A)scanfB)scanfC)scanfD)scanf)scanfscanfscanf123.141593123.141593123.14159312(16)若有定義語句:doublex,y,*px,*py,執(zhí)行了px=&x,py=&y;之后,正確的輸入語句( “%f%f”,x,y )( “%f%f”,&x,&y( "%lf%le”,px,py( ,x,y

(17 )以下是if語句的基本形式:if (語其 中A ) 必B ) 必u須須表是是達表邏關達輯系式 )句式 ”表 達 式表 達 式C)必須是邏輯表達式或關系表達式D ) 可( 18ftincludemain{intscanfif (ifprintf}以)((是(任有x<=3意合以(“知”,&X)X“刎、n”,X法:!=10的表達式下 程 序<stdio.h>)x;) ;; else)) ;程序運行時A )不輸入的值等在哪個范于 10圍オ會有輸出結果的 整 數(shù)B) 大C大 于 3D )( 19#include<stdio.h>Main(intif (if (J'小)a:3或且等于有b!=2不等于于 103以(=1 &ab++=II10的整數(shù))的 整 數(shù)的 整 數(shù)下 程 序)a=l,b=2,c=3,d=0;=2 )c―!=3 )printf(<<%d,%d,%d\n,>,a,b,c);elseprintf( 4<%d,%d,%d\nprintf(<<%d,%d,%d\n,>,a,b,c);elseprintf( 4<%d,%d,%d\nn,a,b,c);elseprintf( “%d,%d,%d\n”,a,b,c);}程 序運 行后 的 輸 出結 果 是A)1,2,3B)1,3,2C)1,3,33,2,1以下程序中的變量正確定義Dlfofo程20 )i=0;i<4;i++,i++( k=l;k<3;k++序段的;printf輸出(ボ‘ ) ;結果是A )********B )****C )**D ).( 21 ) 有 以 下程 序#include<stdio.h>main (){char*s= ( "ABC)do{printf ( "%d”,*s%10);s++;}while ( *s)}注意,字母A的ASCII碼值為65。程序運行后的輸出結果是A )5670B )656667C )567D )ABC(22)設變量已正確定義,以下不能統(tǒng)計出ー行中輸入字符個數(shù)(不包含回車符)的程序段是A) n=0;while( (ch=getchar( ) )!二’\n' ) n++;B) n=0;while (getchar ( ) !=''ガ) n++;C) for ( n=0; getchar ( ) !=;n++ ) ;D)n=0;for(ch=getchar();ch!=’\n';n++);( 23 ) 有 以 下程 序#include<stdio.h>main (){ int al,a2;charcl,c2;scanf ( a%d%c%d%c",&al,&cl,&a2,&c2);printf ( a%d,%c,%d,%c",&l,cl,a2,c2);}若想通過鍵盤輸入,使得al的值為⑵a2的是為34,cl的值為字符a,c2的值為字符b,程序輸出結果是:12,a,34,b,則正確的輸入格式是(以下代 表 空 格, <CR> 代 表回車 )A )12a34b<CR>B )12a34b<CR>C )12,a,34,b<CR>D )12a34b<CR>( 24 ) 有 以 下程 序

int f(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))程 序 運行 后的輸出結果是A)10B)9C)8D)7( 25)有以卜程序#include<stdio.h>voidfun(char*s){while(*s){if(*s%2=0)printf(,*S)1s++;})main(){aロニ{“good”};charfun (a);printf( "\n:)}注意:字母a的ASCI!碼值為97,程序運行后的輸出結果是A)dB)goC)godD)good( 26)有以下程序#include<stdio.h>void fun(int*a,int*b){intc=a;a=b;b=c;)*c;#include<stdio.h>)main{intx=3,y-5,*P=&x,*q=&y;

x=3,y-5,*P=&x,*q=&y;fun (fun (}程 序ABCD(#includeviodmain{P,q&x,&y運27f),)行)(;printf;printf后 的))))有int(int( 員( “輸以*p,int;%d,%d,",*p,*q%d,%d\nv,*p,*q出 結下 程*qm=l););果 是3,5,5,33,5,3,55,3,3,55,3,5,3序<stdio.h>);),n=2,*r=&m;f ( r,&n)void f{p=p+l;*q=*q+l;}程 序 運ABCD(28)以下void fun()c行函數(shù)(;printf (int *p后 輸 出))))按每行8個輸intint"%d,%d”,m,n,int *q的 結出數(shù)組中*w,int);)果 是1,32,31,41,2的數(shù)據(jù)n )i;for(i=0;i<n;i++){printf(“觀”,w)}printf (}下 劃 線 處A ) if ( iB )C) if (D)if(i%8==0)continue;( 29 )“\n應 填/8==0 )if (i%8=0 )若 有”);入 的 語 句 是print ( "\n” ) ;i/8==0 ) continue;print ( "\n" ) ;以 下 定 義

intxLlOJ,*pt=x;int則對x數(shù)組元素的正確應用是A ) *&x[10]B ) * ( x+3 )C ) * ( pt+10 )D ) pt+3(30)設有定義:chars[81];int 以下不能將一行(不超過80個字符)帶有空格的字符串真AgetsB字符串真AgetsB)while(C )D)do(scanf(( 31#includemain{ charforprintf}程序運ABCD(32 )以A :B )C )D )( 33#includeint{if(else returen)main確讀入c(s[i++]=gscanf“%c”,&s)) 有*a[ ]={"((行后)下選項) 有fun{int

x==y)(int的語句或Schar( ) )( “%s”,sivhile(s[i++]!=w以 下(cd"Jef“,“gh","i二〇;iく4;i++“%c”,*a輸出的中正確的charcharcharchar以 下x,intreturn(( x+y ;語句組是)!="ヽn";s="\0";);\n" ) ;s="、〇”;程 序<stdio.h>)ijk”};int I;));結果是aegidfhkabedabedefghijk語句組是sロ;s=”BOOK!”;*s;s={”BOOK!"};s[10];s=MBOOK!";*s;s=”BOOK!";程序<stdio.h>y}X) ;/2 ))a=4,b=5,c=6;printf"%d\n”,fun2*a,funprintf"%d\n”,fun2*a,fun(b,c)程 序 運 行后的 輸 出結果 是ABCD))))36812(34)設函數(shù)中有整型變量n,AB )CD )( 35 )#includeint為保證其在未賦值的情況下初值為〇,))auto 或有 以 下應選擇的存儲類別是autoregisterstaticregister程 序<stdio.h>b=2;int fun{ b=*k+b;returnmain(int( b(*k));}){ inta[10]={l,2,3,4,5,6,7,8},I;for(i=2;i<4;i++)printf (}{b=fun(&a)+b;printf“\n”(“)%d",b) ;}程 序 運 行A12B10C28D16( 36 )#include?(define#define Smian后有(輸 出 的))))以 下PTx )C結果 是1081010程 序<stdio.h>3.5;PT*x*x;){inta=l,b=2;printf( “%4.lf\n”,S(a+b));)程 序 運 行ABCD)程序有錯無輸出結果后輸 出 的)))結果 是14.031.57.5

( 37 ) 有 以下程 序^include<stdio.h>structord{ int x,y;}orddt[2]={l,2,3,4};main (){ struct*p=dt;printf( “%d,",++p->x ) ;printf}(H%d\n",++p->y ) ;程 序 的 運 行A )B )C )D )結果 是1,22,33,44,1( 38 ) 設 有 宏 定義: ttincludeIsDIV(k,n)((k%n==l)?l:0且變量m已正確定義并賦值,則宏調用:IsDIV(m,5)&&IsDIV( m,7 ) 為 真 時 所要表達 的 是A) 判斷 m 是否能被5或者7整除B) 判斷 m 是否能被5和7整除C)判斷m被5或者7整除是否余1D) 判斷 m 被5和7整IK.除是否余1( 39 ) 有 以^includemain ({ int下程 序<stdio.h>)a~5,b=1,t;t= ( a<<2b ) ; printf("%d\n”,t ))程 序 運 行 后 的 輸A )B )C )D )出結 果 是211161( 40 ) 有 以^includemain ({ EILE下程 序<stdio.h>)*f;f=fopen ( "filea,txt","fprintf ( f,"abc"ボ););fclose(f若文本文件filea.txt中原有內容為:hello,則運行以上程序后,文件filea.txt中的內容為A)helloabcB)abcloC)abcD)abchello二,填空題(每空2分,共30分)請將每一個空的正確答案寫在答題卡【1】至【15】序號的橫線上,答在試卷上不得分。(1)假設ー個長度為50的數(shù)組(數(shù)組元素的下標從0到49)作為棧的存儲空間,棧底指針bottom指向棧底元素,棧頂指針top指向棧頂元素,如果bottom=49,top=30(數(shù)組下標),則棧中具有【 1 】個元素。(2)軟件測試可分為白盒測試和黑盒測試。基本路徑測試屬于【2】測試。(3)符合結構化原則的三種基本控制結構是:選擇結構、循環(huán)結構和TOC\o"1-5"\h\z[ 3 ] 〇(4 )數(shù)據(jù)庫系統(tǒng)的核心是 【4】(5)在E-R圖中,圖形包括矩形框、菱形框、橢圓框。其中表示實體聯(lián)系的是【 5 】 框。(6)表達式(int) ((double) (5/2)+2.5)的值是[6】(7)掖量x、y已定義為int類型且x的值為99,y的值為9,請將輸出語句printf([7],x/y);補充完整,使其輸出的計算結果形式為:x/y=ll(8) 有 以 下 程 序ttinclude <stdio.h>main( ){char cl,c2;scanf("&c",&cl);while(cl<65||cl>90)scanf( ,&cl);c2=cl+32;printf(w&c, &c\n",cl,c2);)程序運行輸入65回車后,能否輸出結果、結束運行(請回答能或不能)【8】(9)以下程序運行后的輸出結果是【9】#include <stdio.h>main( ){int k=l , s=0 ;

do{if{ (( k&2)! =0)continues+=kk++?}while(k)10)printf(“s=&d/n”,s))(10)下列程序運行時,若輸入labcedl2df<回車>輸出結果為【:10]#include <stdio.h>main( ){chara =0,ch;while((ch=getchar())!=,\n'){if(a&2!=0&&(ch>>a'&&ch<='z'))ch=ch-'a'+'A';a++;putchar(ch);)printf(tt\nw);)(11)有以下程序,程序;執(zhí)行后,輸出結果是【11】ftincludevoid fun{a[0=a[l];]}main(){intfor(i=2;i>=0;i—)for(i=0;i<10;i++)printf(“\n”);)(12)請將以下程序11'<stdio.h>(int *a)a[10]={10,9,8,7,6,5,4,3,2,l},i;fun{&a};printf("&d",a);的函數(shù)聲明語句補充完整^includeint (main({intp=max;printf("&d\n",&x,&y);)Int max(int{return(13)以下程序用來判斷指<stdio.h>12 ])X,y,(*p)0;a,int b)(a>b/a:b);}定文件是否能正常打開,請?zhí)羁?includemain({FILE<stdio.h>)*fp;

if (((fp=fopen("test,txtwif (((fp=fopen("test,txtw"r"printf( "未能打elseprintf("文件打(14)下列程序的運#include^includestruct{int a;charC;);))= ( 13 ] ))開文件!\n" ) ;開成功!\n");行結果為【 14 】<stdio.h><string.h>Ab[10];doublevoid(structA*t);main()a=(1001,Ma=(1001,MZhangDa”,1098,〇);voidf(structvoid*t){strcpy(t->b,wChangRongw);}(15)以ド程序把三個NODETYPE型的變量鏈接成一個簡單的鏈表,并在while循環(huán)中輸出鏈表結點數(shù)據(jù)域中的數(shù)據(jù),請?zhí)羁?include<stdio.h>structnode{intdata;structnode*next;};typedefstructnodeNODETYPE;main(){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("&d",p->data); [ 15 ] ;)答案:選擇題:PlO:DACDCABABC1T20: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)!AbCeDf2dF7777654321(12)max(inta,intb)(13)NULL( 14 ) 1001,ChangRong,1098.0 ( 15 ) p=p一>next故が耳g貝ユ紙ク得皆皂鐵?*??.&拳案(考試時間:120分鐘,滿分100分)ー、選擇題((1)?(10)、(21)?(40)每題2分,(11)?(20)每題1分,70分)下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應位置上,答在試卷上不得分。(1)ー個棧的初始狀態(tài)為空?,F(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)變化情況〇在循環(huán)隊列中,只需要隊尾指針就能反映隊列中元素的動態(tài)變化情況D)循環(huán)隊列中元素的個數(shù)是由隊頭指針和隊尾指針共同決定(3)在長度為n的有序線性表中進行二分查找,最壞情況下需要比較的次數(shù)是().A)0(かB)0(成)C)0(log2/?)D)0(/?log2/?)(4)下列敘述中正確的是()〇A)順序存儲結構的存儲一定是連續(xù)的,鏈式存儲結構的存儲空間不一定是連續(xù)的B)順序存儲結構只針對線性結構,鏈式存儲結構只針對非線性結構C)順序存儲結構能存儲有序表,鏈式存儲結構不能存儲有序表D)鏈式存儲結構比順序存儲結構節(jié)省存儲空間(5)數(shù)據(jù)流圖中帶有箭頭的線段表示的是()。A)控制流B)事件驅動〇模塊調用D)數(shù)據(jù)流(6)在軟件開發(fā)中,需求分析階段可以使用的工具是().A)N-S圖B)DFD圖C)PAD圖D)程序流程圖(7)在面向對象方法中,不屬于“對象”基本特點的是().A)一致性B)分類性〇多態(tài)性D)標識唯一性一間宿舍可住多個學生,則實體宿舍和學生之間的聯(lián)系是()。A)ー對ー,B)ー對多C)多對ー,D)多對多(9)在數(shù)據(jù)管理技術發(fā)展的三個階段中,數(shù)據(jù)共享最好的是()。A)人工管理階段B)文件系統(tǒng)階段〇數(shù)據(jù)庫系統(tǒng)階段D)三個階段相同(10)有三個關系R、S和T如下:RSTABBCABCm113m13n235由關系R和S通過運算得到關系T,則所使用的運算為()。A)笛卡爾積B)交C)并D)自然連接(11)以下敘述中正確的是()。A)C程序的基本組成單位是語句B)C程序中的每一行只能寫一條語句二級C語言程序設計試卷第2頁(共9頁)C)簡單C語句必須以分號結束D)C語句必須在一行內寫完(12)計算機能直接執(zhí)行的程序是()。A)源程序B)目標程序C)匯編程序D)可執(zhí)行程序(13)以下選項中不能作為C語言合法常量的是().A)'cd'B)0.le+6C)”\a"D)'\011'(14)以下選項中正確的定義語句是()〇A)doublea;b;B)doublea=b=7;C)doublea=7,b=7;D)double,a,b;(15)以下不能正確表示代數(shù)式2融cd的C語言表達式是()?A)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的值為()。intw='A',x=14,y=15;w=((xIIy)&&(wぐa'));A)-1B)NULLC)1D)0(19)若變量已正確定義為int型,要通過語句scanf("%d,%d,%d”,&a,&b,&c):給a賦值1、給b賦值2、給c賦值3,以下輸入形式中錯誤的是(〇代表一個空格符)()。A)〇〇〇1,2,3〈回車〉B)!〇2〇3〈回車》〇!,6〇〇2,6〇d3く回車》D)1,2,3V回車)(20)有以下程序段inta,b,c;a=10;b=50;c=30;if(a>b)a=b,b=c;c=a;printf(/'a=%db=%dc=%d\nw,a,b,c);程序的輸出結果是()〇A)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ù)組元素的引用中錯誤的是()〇A)m[—i]B)m[2*2]C)m[m[0]]D)(22)下面的函數(shù)調用語句中func函數(shù)的實參個數(shù)是()〇func(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ù)組元素的是().A)*pB)x[5]C)*(p+l)D)*x(24)若有定義語句:chars[10]=”1234567\0、0";,則strlen(s)的值是()。A)7B)8C)9D)10(25)以下敘述中錯誤的是()。A)用戶定義的函數(shù)中可以沒有return語句B)用戶定義的函數(shù)中可以有多個return語句,以便可以調用一次返回多個函數(shù)值〇用戶定義的函數(shù)中若沒有return語句,則應當定義函數(shù)為void類型二級C語言程序設計試卷第3頁(共9頁)D)函數(shù)的!'aturn語句中可以沒有表達式(26)以下關于宏的敘述中正確的是()〇A)宏名必須用大寫字母表示B)宏定義必須位于源程序中所有語句之前〇宏替換沒有數(shù)據(jù)類型限制D)宏調用比函數(shù)調用耗費時間(27)有以下程序#include<stdio.h>main(){inti,j;for(i=3;i>=l;i--){for(j=l;jく=2;j-H-)printf(線d”,i+j);printf("\n");))程序的運行結果是()。A)234B)432345543023D)4534344523(28)有以下程序^include<stdio.h>main(){intx=l,y=2,z=3;if(x>y)if(y<z)printf("%d”,++z);elseprintf(/z%dz/,-H-y);printf(/z%d\nA,Jx++);)程序的運行結果是()。A)331B)41C)2D)1(29)有以下程序#include<stdio.h>main(){inti=5;do{if(i%3=l)if(i%5==2){printfi);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("刎、n",fun(4,2));}程序的運行結果是()。A)1B)2C)3D)4(31)有以下程序#include<stdio.h>^include<stdlib.h>intfun(intn){int*p;p=(int*)malloc(sizeof(int));*p=n;return*p;)main(){inta;a=fun(10);printf("%d\n”,a+fun(10));}程序的運行結果是()〇A)0B)10C)20D)出錯(32)有以下程序#include<stdio.h>voidfun(inta,intb){intt;t=a;a=b;b=t;}main(){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);}程序的運行結果是()。A)10,1B)20,1C)10

溫馨提示

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

評論

0/150

提交評論