2009年9月計(jì)算機(jī)二級(jí)c語(yǔ)言試題及詳細(xì)解答答案_第1頁(yè)
2009年9月計(jì)算機(jī)二級(jí)c語(yǔ)言試題及詳細(xì)解答答案_第2頁(yè)
2009年9月計(jì)算機(jī)二級(jí)c語(yǔ)言試題及詳細(xì)解答答案_第3頁(yè)
2009年9月計(jì)算機(jī)二級(jí)c語(yǔ)言試題及詳細(xì)解答答案_第4頁(yè)
2009年9月計(jì)算機(jī)二級(jí)c語(yǔ)言試題及詳細(xì)解答答案_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、.一、選擇題在下列各題的A)、B)、C)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的,請(qǐng)將正確的選項(xiàng)涂寫在答題卡相應(yīng)位置上,答在試卷上不得分。(1)下列數(shù)據(jù)結(jié)構(gòu)中,屬于非線性結(jié)構(gòu)的是_。A)循環(huán)隊(duì)列 B)帶鏈隊(duì)列 C)二叉樹 D)帶鏈棧(2)下列數(shù)據(jù)結(jié)構(gòu)中,能夠按照"先進(jìn)后出"原則存取數(shù)據(jù)的是_。A)循環(huán)隊(duì)列 B)棧 C)隊(duì)列 D)二叉樹(3)對(duì)于循環(huán)隊(duì)列,下列敘述中正確的是_。A)隊(duì)頭指針是固定不變的B)隊(duì)頭指針一定大于隊(duì)尾指針C)隊(duì)頭指針一定小于隊(duì)尾指針 D)隊(duì)頭指針可以大于隊(duì)尾指針,也可以小于隊(duì)尾指針(4)算法的空間復(fù)雜度是指_。A)算法在執(zhí)行過(guò)程中所需要的計(jì)算機(jī)存儲(chǔ)空間B

2、)算法所處理的數(shù)據(jù)量C)算法程序中的語(yǔ)句或指令條數(shù)D)算法在執(zhí)行過(guò)程中所需要的臨時(shí)工作單元數(shù)(5)軟件設(shè)計(jì)中劃分模塊的一個(gè)準(zhǔn)則是_。A)低內(nèi)聚低耦合 B)高內(nèi)聚低耦合 C)低內(nèi)聚高耦合 D)高內(nèi)聚高耦合(6)下列選項(xiàng)中不屬于結(jié)構(gòu)化程序設(shè)計(jì)原則的是_。A)可封裝 B)自頂向下 C)模塊化 D)逐步求精(7)軟件詳細(xì)設(shè)計(jì)產(chǎn)生的圖如下:該圖是。A)N-S圖 B)PAD圖 C)程序流程圖 D)ER圖(8)數(shù)據(jù)庫(kù)管理系統(tǒng)是_。A)操作系統(tǒng)的一部分 B)在操作系統(tǒng)支持下的系統(tǒng)軟件C)一種編譯系統(tǒng) D)一種操作系統(tǒng)(9)在ER圖中,用來(lái)表示實(shí)體聯(lián)系的圖形是_。A)橢圓形 B)矩形C)菱形 D)三角形(10)

3、有三個(gè)關(guān)系R,S和T如下:RABCa12b21c31SABCd32TABCa12b21c31d32其中關(guān)系T由關(guān)系R和S通過(guò)某種操作得到,該操作為_(kāi)。A)選擇 B)投影 C)交 D)并(11)以下敘述中正確的是_。A)程序設(shè)計(jì)的任務(wù)就是編寫程序代碼并上機(jī)調(diào)試B)程序設(shè)計(jì)的任務(wù)就是確定所用數(shù)據(jù)結(jié)構(gòu)C)程序設(shè)計(jì)的任務(wù)就是確定所用算法 D)以上三種說(shuō)法都不完整(12)以下選項(xiàng)中,能用作用戶標(biāo)識(shí)符的是_。A)void B) 8_8C)_0_ D)unsigned(13)閱讀以下程序:#include <stdio.h>main()int case;float printF;printf(&

4、quot;請(qǐng)輸入2個(gè)數(shù):");scanf("%d%f",&case,&printF);printf("% d%fn",case,printF);該程序在編譯時(shí)產(chǎn)生錯(cuò)誤,其出錯(cuò)原因是_。A)定義語(yǔ)句出錯(cuò),case是關(guān)鍵字,不能用作用戶自定義標(biāo)識(shí)符B)定義語(yǔ)句出錯(cuò),printF不能用作用戶自定義標(biāo)識(shí)符C)定義語(yǔ)句無(wú)錯(cuò),scanf不能作為輸入函數(shù)使用D)定義語(yǔ)句無(wú)錯(cuò),printf不能輸出case的值(14)表達(dá)式:(int)(double)9/2)(9)%2的值是_。A)0 B)3 C)4 D)5(15)若有定義語(yǔ)句:intx10;,

5、則表達(dá)式xxx的值為_(kāi)。A)20 B)10 C)0 D)10(16)有以下程序:#include <stdio.h>main()inta1,b0;printf("%d,",bab);printf("%dn",a2程序運(yùn)行后的輸出結(jié)果是_。A)0,0 B)1,0 C)3,2 D)1,2(17)設(shè)有定義:inta1,b2,c3;,以下語(yǔ)句中執(zhí)行效果與其他三個(gè)不同的是_。A)if(a>b)ca,ab,bc;B)if(a>b)ca,ab,bc;C)if(a>b)ca;ab;bc; D)if(a>b)ca;ab;bc;(18)有

6、以下程序:#include<stdio.h>main()intc0,k;for(k1;k<3;k)switch(k)default: ck;case 2:c;break;case 4:c2;break;printf("%dn",c);程序運(yùn)行后的輸出結(jié)果是_。A)3 B)5 C)7 D)9(19)以下程序段中,與語(yǔ)句:ka>b?(b>c?1:0):0;功能相同的是_。A)if(a>b)&&(b>c)k1;elsek0; B)if(a>b)(b>c)k1;else k0;C)if(a<b)k0;els

7、e if(b<c)k1; D)if(a>b)k1;elseif(b>c)k1;elsek0;(20)有以下程序:#include <stdio.h>main()char s"012xy";int i,n0;for(i0;si!0;i) if (si>'a'&&si<'z')n;printf("%dn",n);程序運(yùn)行后的輸出結(jié)果是_。A)0 B)2 C)3 D)5(21)有以下程序:#include <stdio.h>main()intn2,k0;whi

8、le(k&&n>2);printf("%d%dn",k,n);程序運(yùn)行后的輸出結(jié)果是_。A)02 B)13 C)57 D)12(22)有以下定義語(yǔ)句,編譯時(shí)會(huì)出現(xiàn)編譯錯(cuò)誤的是_。A)chara'a';B)chara'n';C)chara'aa'; D)chara'x2d';(23)有以下程序:#include <stdio.h>main()char cl,c2;cl'A''8''4';c2'A''8'

9、;'5';printf("%c,%dn",cl,c2);已知字母A的ASCIl碼為65,程序運(yùn)行后的輸出結(jié)果是_。A)E,68 B)D,69 C)E,D D)輸出無(wú)定值(24)有以下程序:#include <stdio.h>voidfun(int p)int d2;pd;printf("%d",p);main()inta1;fun(a);printf("%dn",a);程序運(yùn)行后的輸出結(jié)果是_。A)32 B)12C)21 D)22(25)以下函數(shù)findmax擬實(shí)現(xiàn)在數(shù)組中查找最大值并作為函數(shù)值返回,但程序

10、中有錯(cuò)導(dǎo)致不能實(shí)現(xiàn)預(yù)定功能。#define MIN 2147483647int findmax(intx,int n)inti,max;for(i0;i<n;i)maxMIN; if(max<xi) maxxi;returnmax;造成錯(cuò)誤的原因是_。A)定義語(yǔ)句int i,max;中max未賦初值B)賦值語(yǔ)句maxMIN;中,不應(yīng)給max賦MIN值C)語(yǔ)句if(max<xi)maxxi;中判斷條件設(shè)置錯(cuò)誤 D)賦值語(yǔ)句maxMIN;放錯(cuò)了位置(26)有以下程序:#include <stdio.h>main()int m1,n2,*p&m,*q&n

11、,*r;rp;pq;qr;printf("%d,%d,%d,%dn",m,n,*p,*q);程序運(yùn)行后的輸出結(jié)果是_。A)1,2,1,2 B)1,2,2,1 C)2,1,2,1 D)2,1,1,2(27)若有定義語(yǔ)句:inta410,*p,*q4;且0i<4,則錯(cuò)誤的賦值是_。A)pa B)qiai C)pai D)p&a21(28)有以下程序:#include <stdio.h>#include <string.h>main()char str20"Qne*World","one*Dream!"

12、,*pstr1;printf("%d,",strlen(p);printf("%sn",p);程序運(yùn)行后的輸出結(jié)果是_。A)9,One*World B)9,One*Dream! C)10,One*Dream! D)10,One*World(29)有以下程序:#include <stdio.h>main()inta2,3,5,4,i;for(i0;i<4;i)switch(i%2)case 0:switch(ai%2)case 0:ai;break; case 1:ai;break;case 1:ai0;for(i0;i<4;i)p

13、rintf("%d",ai);printf("n");程序運(yùn)行后的輸出結(jié)果是_。A)3 3 4 4 B)2 0 5 0 C)3 0 4 0 D)0 3 0 4(30)有以下程序:#include <stdio.h>#include <string.h>main()char a10"abcd"; printf("%d,%dn",strlen(a),sizeof(a);程序運(yùn)行后的輸出結(jié)果是_。A)7,4 B)4,10 C)8,8 D)10,10(31)下面是有關(guān)C語(yǔ)言字符數(shù)組的描述,其中錯(cuò)誤的

14、是_。A)不可以用賦值語(yǔ)句給字符數(shù)組名賦字符串B)可以用輸入語(yǔ)句把字符串整體輸入給字符數(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所指字符串進(jìn)行比較 D)檢查a和b所指字符串中是否有'0'(33)設(shè)有以下函數(shù):void fun(int n,char*s) 則下面對(duì)函數(shù)指針的定義和賦值均正確的是_。A)void(*pf)();pffun;B)void*pf()

15、; pffun;C)void*pf();*pffun;D)void(*pf)(int,char);pf&fun;(34)有以下程序:#include <stdio.h>int f(int n);main()int a3,s;sf(a);ssf(a);printf("%dn",s);int f(int n)static int a1;na;return n;程序運(yùn)行后的輸出結(jié)果是_。A)7 B)8 C)9 D)10(35)有以下程序:#include <stdio.h>#define f(x) x*x*xmain()int a3,s,t;sf(

16、a1);tf(a1);printf("%d,%dn",s,t);程序運(yùn)行后的輸出結(jié)果是_。A)10,64 B)10,10C)64,10 D)64,64(36)下面結(jié)構(gòu)體的定義語(yǔ)句中,錯(cuò)誤的是_。A)structordintx;inty;intz;structorda;B)structordintx;inty;intz;structorda;C)structordintx;inty;intz;a; D)structintx;inty;intz;)a;(37)設(shè)有定義:char*c;,以下選項(xiàng)中能夠使字符型指針c正確指向一個(gè)字符串的是_。A)char str"stri

17、ng";cstr;B)scanf("%s",c);C)cgetchar(); D)*c"string";(38)有以下程序:#include<stdio.h>#include<string.h>struct Aint a;char b10;double c;struct A f(struct A t);main()struct A a1001,"ZhangDa",1098.0);af(a); printf("%d,%s,%6.1fn",a.a,a.b,a.c);struct A f

18、(struct A t)ta1002;strcpy(t.b,"changRong");t.c1202.0;return t;程序運(yùn)行后的輸出結(jié)果是_。A)1001,ZhangDa,1098.0B)1002,ZhangDa,1202.0C)1001,ChangRong,1098.0 D)1002,ChangRong,1202.0(39)若有以下程序段:intr8;printf("%dn",r>>1);輸出結(jié)果是_。A)16 B)8 C)4 D)2(40)下列關(guān)于C語(yǔ)言文件的敘述中正確的是_。A)文件由一系列數(shù)據(jù)依次排列組成,只能構(gòu)成二進(jìn)制文件B

19、)文件由結(jié)構(gòu)序列組成,可以構(gòu)成二進(jìn)制文件或文本文件C)文件由數(shù)據(jù)序列組成,可以構(gòu)成二進(jìn)制文件或文本文件 D)文件由字符序列組成,其類型只能是文本文件二、填空題請(qǐng)將每一個(gè)空的正確答案寫在答題卡序號(hào)的橫線上,答在試卷上不給分。(1)某二叉樹有5個(gè)度為2的結(jié)點(diǎn)以及3個(gè)度為1的結(jié)點(diǎn),則該二叉樹中共有_【1】_個(gè)結(jié)點(diǎn)。(2)程序流程圖中的菱形框表示的是_【2】_。(3)軟件開(kāi)發(fā)過(guò)程主要分為需求分析、設(shè)計(jì)、編碼與測(cè)試四個(gè)階段,其中 _【3】_ 階段產(chǎn)生"軟件需求規(guī)格說(shuō)明書"。(4)在數(shù)據(jù)庫(kù)技術(shù)中,實(shí)體集之間的聯(lián)系可以是一對(duì)一或一對(duì)多或多對(duì)多的,那么"學(xué)生"和&quo

20、t;可選課程"的聯(lián)系為_(kāi)【4】_。(5)人員基本信息一般包括:身份證號(hào),姓名,性別,年齡等。其中可以作為主關(guān)鍵字是_【5】_。(6)若有定義語(yǔ)句:int a5;,則表達(dá)式:a的值是_【6】_。(7)若有語(yǔ)句double x17;int y;,當(dāng)執(zhí)行y(int)(x/5)%2;之后y的值為_(kāi)【7】_。(8)以下程序運(yùn)行后的輸出結(jié)果是 _【8】_。#include <stdio.h>main()intx20;printf("%d",0<x<20);printf("%dn",0<x&&x<20);(

21、9)以下程序運(yùn)行后的輸出結(jié)果是_【9】_。#include <stdio.h>main()int a1,b7;dobb/2; ab; while(b>1);printf("%dn",a);(10)有以下程序:#include<stdio.h>main()int f,fl,f2,i;f10;f21;printf("%d%d",f1,f2);for(i3;i<5;i) ff1f2;printf("%d",f);f1f2;f2f;printf("n");程序運(yùn)行后的輸出結(jié)果是_【10】

22、_。(11)有以下程序:#include <stdio.h>int a5;void fun(int b)int a10;ab;printf("%d",a);main()int c20;fun(c);ac;printf("%dn",a);程序運(yùn)行后的輸出結(jié)果是_【11】_。(12)設(shè)有定義:struct personint ID;char name12;p;請(qǐng)將scanf("%d",_【12】_);語(yǔ)句補(bǔ)充完整,使其能夠?yàn)榻Y(jié)構(gòu)體變量p的成員ID正確讀入數(shù)據(jù)。(13)有以下程序:#include <stdio.h>

23、main()char a20"How are you?",b20;scanf("%s",b);printf("%s %sn",a,b);程序運(yùn)行時(shí)從鍵盤輸入:How are you?<回車>則輸出結(jié)果為_(kāi)【13】_。(14)有以下程序:#include <stdio.h>typedef structint num;double s;REC;void funl(REC x)x.num23;x.s88.5;main()REC a16,90.0);fun1(a);printf("%dn",a.nu

24、m);程序運(yùn)行后的輸出結(jié)果是_【14】_。(15)有以下程序:#include <stdio.h>fun(int x)if(x/2>0) fun(x/2);printf("%d.",x);main() fun(6),printf("n");程序運(yùn)行后的輸出結(jié)果是_【15】_。一、選擇題(1)C【解析】 根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間前后關(guān)系的復(fù)雜程度,一般將數(shù)據(jù)結(jié)構(gòu)分為兩大類型:線性結(jié)構(gòu)與非線性結(jié)構(gòu)。線性結(jié)構(gòu)表示數(shù)據(jù)元素之間為一對(duì)一的關(guān)系,非線性結(jié)構(gòu)表示數(shù)據(jù)元素之間為一對(duì)多或者多對(duì)一的關(guān)系。根據(jù)各種結(jié)構(gòu)的定義知二叉樹是一種非線性結(jié)構(gòu)。(2

25、)B【解析】 棧是限定只在一端進(jìn)行插入與刪除的線性表,通常稱插入、刪除的這一端為棧頂,另一端為棧底。棧頂元素總是后被插入的元素,也是最先被刪除的元素;棧底元素總是最先被插入的元素,也是最后才能被刪除的元素。棧是按照"先進(jìn)后出"或"后進(jìn)先出"的原則組織數(shù)據(jù)的。(3)D【解析】 循環(huán)隊(duì)列是將順序隊(duì)列首尾相連形成的,隨著插入元素或刪除元素的進(jìn)行,其隊(duì)頭指針及隊(duì)尾指針是在不斷變化的,有時(shí)可能會(huì)出現(xiàn)隊(duì)頭指針大于隊(duì)尾指針的情況,也可能是隊(duì)尾指針大于隊(duì)頭指針,故答案為D)。(4)A【解析】 算法的空間復(fù)雜度是指:算法執(zhí)行過(guò)程中所需的存儲(chǔ)空間。一個(gè)算法所占用的存儲(chǔ)空間包

26、括算法程序所占的空間、輸入的初始數(shù)據(jù)所占的存儲(chǔ)空間以及算法執(zhí)行過(guò)程中所需要的額外空間。(5)B【解析】 模塊劃分應(yīng)考慮的因素包括模塊之間的耦合和內(nèi)聚。一般來(lái)說(shuō),要求模塊之間的耦合盡可能地低,即模塊盡可能獨(dú)立,要求模塊的內(nèi)聚程度盡可能地高,即遵循高內(nèi)聚、低耦合的原則。(6)A【解析】 模塊化、自頂向下、逐步求精都是結(jié)構(gòu)化程序設(shè)計(jì)的原則;可封裝是面向?qū)ο蟪绦蛟O(shè)計(jì)原則。(7)C【解析】 NS圖是由若干基本框圖構(gòu)成的流程圖,其特點(diǎn)是沒(méi)有流程線;PAD圖即問(wèn)題分析圖(Problem Analysis Diagram),它是一種由左往右展開(kāi)的二維樹形結(jié)構(gòu);程序流程圖用于描述問(wèn)題解決的過(guò)程和步驟,其中方框表

27、示處理步驟,菱形框表示邏輯判斷,箭頭表示控制流向;ER圖即實(shí)體聯(lián)系圖(Entity Relationship Diagram),用來(lái)描述現(xiàn)實(shí)世界的概念模型,構(gòu)成元素有實(shí)體、屬性和聯(lián)系,分別用矩形、橢圓形和菱形表示。本題答案為C)。(8)B【解析】 數(shù)據(jù)庫(kù)管理系統(tǒng)是指位于用戶與操作系統(tǒng)之間的數(shù)據(jù)管理軟件。數(shù)據(jù)庫(kù)管理系統(tǒng)是為數(shù)據(jù)庫(kù)建立、使用和維護(hù)而配置的軟件。(9)C【解析】 ER圖中用矩形表示實(shí)體(等同于表),用橢圓形表示實(shí)體的屬性(等同于表中字段),用菱形表示實(shí)體關(guān)系(等同于外鍵)。(10)D【解析】 兩個(gè)相同結(jié)構(gòu)關(guān)系的并是由屬于這兩個(gè)關(guān)系的元組組成的集合。(11)D【解析】 程序設(shè)計(jì)通常分為

28、問(wèn)題建模、算法設(shè)計(jì)、編寫代碼和編譯調(diào)試四個(gè)階段。所以選項(xiàng)A)、B)、C)說(shuō)法都不完整。(12)C【解析】 C語(yǔ)言的標(biāo)識(shí)符命名規(guī)則為:只能由字母、數(shù)值和下劃線3種字符組成;第一個(gè)字符必須是字母或下劃線;不能與C語(yǔ)言中的關(guān)鍵字或保留字相同。(13)A【解析】 標(biāo)識(shí)符不能與C編譯系統(tǒng)已經(jīng)預(yù)定義的、具有特殊用途的保留標(biāo)識(shí)符(即關(guān)鍵字)同名,否則程序在編譯時(shí)會(huì)出現(xiàn)錯(cuò)誤。題目源程序中使用了已經(jīng)預(yù)定義的關(guān)鍵字case,所以將出現(xiàn)錯(cuò)誤。(14)B【解析】 (int)(double)9/2)的值為4,(9)%2的值為1,因此(int)(double)9/2)(9)%2的值為3。(15)B【解析】 xxx可化為:

29、xx(xx),由于x初始值為10,所以計(jì)算后,x102010,因此選B)。(16)D【解析】 執(zhí)行第一個(gè)printf語(yǔ)句時(shí),bab1,所以輸出1,執(zhí)行第二個(gè)printf語(yǔ)句時(shí),a2*b=2,所以輸出結(jié)果為2。(17)C【解析】 逗號(hào)表達(dá)式的求解過(guò)程是:按表達(dá)式順序從左往右依次求解。本題中由于判斷條件ab的值為假,所以選項(xiàng)A)、B)、D)中if語(yǔ)句后面的語(yǔ)句均未被執(zhí)行,而C)中的后兩條語(yǔ)句ab和bc被執(zhí)行,因此選項(xiàng)C)的執(zhí)行效果與其他三個(gè)不同。(18)A【解析】 第一次循環(huán)時(shí),k1,在switch語(yǔ)句中,先執(zhí)行default后面的語(yǔ)句,即cck1,因?yàn)闆](méi)有break語(yǔ)句,所以不會(huì)跳出switch

30、結(jié)構(gòu),會(huì)接著執(zhí)行case2后面的語(yǔ)句,即cc12,然后跳出switch;第二次循環(huán)時(shí),k2,直接執(zhí)行case2后面的語(yǔ)句,即cc13,然后跳出switch語(yǔ)句,結(jié)束循環(huán),執(zhí)行輸出語(yǔ)句。(19)A【解析】 表達(dá)式ka>b?(b>c?10)0表示:如果(a>b)條件為真,則k取值(b>c?10),否則k取值0;當(dāng)a>b的情況下,如果b>c,則k值為1,否則為0。所以該表達(dá)式與選項(xiàng)A)功能相同。(20)B【解析】 在字符串?dāng)?shù)組si中,只有當(dāng)下標(biāo)i3和i4時(shí),才滿足if條件,所以n的值從0增加兩次,結(jié)果為2。(21)D【解析】 本題考查邏輯運(yùn)算符的"短路&

31、quot;現(xiàn)象,由于k的值為0,表達(dá)式首先去求k的值,因?yàn)楸磉_(dá)式k的值為0,系統(tǒng)完全可以確定邏輯表達(dá)式的運(yùn)算結(jié)果總是為0,因此將跳過(guò)n2,不再對(duì)它進(jìn)行求值,即k的值加1,n的值不變。(22)C【解析】 aa是字符串,不用加上單引號(hào)。(23)A【解析】 c1輸出字符的ASCII碼比字母A大4,即字母E;c2以十進(jìn)制數(shù)字形式輸出,因此可以判斷本題答案為A)。(24)C【解析】 程序運(yùn)行后,首先輸出的是p的值,然后輸出a的值。pd,得到p的值為d的初始值2;a的值不變,仍為1。(25)D【解析】 對(duì)max賦初值,應(yīng)該放在循環(huán)語(yǔ)句之前,不然每次循環(huán)都將是從MIN開(kāi)始比較。(26)B【解析】 m和n的值

32、不變,輸出結(jié)果為1,2。指針*p和*q交換了指向的位置,即*p&n,*q&m,輸出結(jié)果分別為2,1。(27)A【解析】 直接將二維數(shù)組a賦給p不合法,兩者類型不匹配。(28)C【解析】 可以將二維數(shù)組str看成是一個(gè)特殊的一維數(shù)組,其元素也是一個(gè)數(shù)組。那么,str0為"One*World",str1為"One*Dream!"。(29)C【解析】 第一次循環(huán),i0,i%20,a0%20,a0a013;第二次循環(huán),i1,1%21,a10;第三次循環(huán),i2,a2%21,a2a214;第四次循環(huán),i3,i%21,a30。(30)B【解析】 str

33、len()用來(lái)返回字符串的長(zhǎng)度,而sizeof()返回的是一個(gè)對(duì)象或者類型所占的內(nèi)存字節(jié)數(shù),即數(shù)組所占的內(nèi)存。(31)D【解析】 字符數(shù)組中的內(nèi)容既可以是字符,也可以是字符串,選項(xiàng)D)說(shuō)法不正確。(32)A【解析】 表達(dá)式*b*a是將a所指的字符賦給b所指的空間,然后,指針a和b依次后移,直到到達(dá)指針a所指字符串的結(jié)尾。(33)A【解析】 函數(shù)指針的定義形式是:數(shù)據(jù)類型標(biāo)識(shí)符(*指針變量名)()。void(*pf)()定義了一個(gè)沒(méi)有返回值的函數(shù)指針pf,在給函數(shù)指針變量賦值時(shí),只需給出函數(shù)名而不必給出參數(shù)。所以給pf賦值時(shí),只把函數(shù)名fun賦給pf即可。所以正確答案為選項(xiàng)A)。(34)C【解析

34、】 sf(a)表達(dá)式第一次調(diào)用f(n)函數(shù)時(shí),f(n)函數(shù)運(yùn)行結(jié)果為n4,a2,即s等于4;ssf(a)表達(dá)式第二次調(diào)用f(n)函數(shù)時(shí),f(n)函數(shù)運(yùn)行結(jié)果為n5,所以得到s值為9。(35)A【解析】 s=f(a+1)=a+1*a+1*a+1=10;s=f(a+1)=(a+1)*(a+1)*(a+1)=64。(36)B【解析】 定義結(jié)構(gòu)體變量有三種方式:先聲明結(jié)構(gòu)體類型,再定義變量名,如選項(xiàng)A)所示;在聲明類型的同時(shí)定義變量,如選項(xiàng)C)所示;直接定義結(jié)構(gòu)體類型變量,如選項(xiàng)D)所示。(37)A【解析】 選項(xiàng)B)、D)中,沒(méi)有為字符串分配空間,因此不能用c指向字符串。選項(xiàng)C)中g(shù)etchar()函數(shù)返回一個(gè)字符,不能將字符賦給字符指針c。選項(xiàng)A)中首先定義了字符數(shù)組str,然后將str的首地址賦給指針c,這樣就使指針c指向了字符串"string"。(38)D【解析】 在主函數(shù)中,通過(guò)af(a)實(shí)現(xiàn)函數(shù)調(diào)用,所以輸出的結(jié)構(gòu)體變量相應(yīng)變?yōu)?002,ChangRong,1202.0。(39)C【解析】 8用二進(jìn)制表示為1000,右移1位后為0100,即十進(jìn)制4。(40)C【解析】 文件由數(shù)據(jù)序列組成,可以構(gòu)成二進(jìn)制文件,也可以構(gòu)成文本文件。二、填空題(1)【1】14【解析】 在二叉樹中,度為0的結(jié)點(diǎn)數(shù)是度為2的結(jié)點(diǎn)數(shù)加1,故二叉樹

溫馨提示

  • 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)論