![C語言程序設(shè)計(jì)試題試題及答案_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/75c3ef8c-a86b-4ed6-a7ec-33e0228c44c9/75c3ef8c-a86b-4ed6-a7ec-33e0228c44c91.gif)
![C語言程序設(shè)計(jì)試題試題及答案_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/75c3ef8c-a86b-4ed6-a7ec-33e0228c44c9/75c3ef8c-a86b-4ed6-a7ec-33e0228c44c92.gif)
![C語言程序設(shè)計(jì)試題試題及答案_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/75c3ef8c-a86b-4ed6-a7ec-33e0228c44c9/75c3ef8c-a86b-4ed6-a7ec-33e0228c44c93.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、C 語言程序設(shè)計(jì)試卷 ,C+ 語言程序設(shè)計(jì)試題及答案 一、單項(xiàng)選擇題 ( 每題 1 分,共 20 分 )1.C 語言規(guī)定:在一個(gè)源程序中,main函數(shù)的位置 ( C )A.必須在最開始B.必須在系統(tǒng)調(diào)用的庫函數(shù)的后面C.可以任意D.必須在最后2.下面四個(gè)選項(xiàng)中,均是合法浮點(diǎn)數(shù)的選項(xiàng)是( B ) 。A.+1e+1 5e-9.4 03e2B.-.60 12e-4 -8e5C.123e 1.2e-.4 +2e-1D.-e3 .8e-4 5.e-03.若 a=-14,b=3, 則條件表達(dá)式a<b? a:b+1 的值為 (A )A. -14 B. -13 C. 3 D. 44. 已知 :int n
2、,i=1,j=2; 執(zhí)行語句 n=i<j?i+:j+; 則 i 和 j 的值是 ( c ).A. 1,2 B. 1,3 C. 2,2 D. 2,35. 為了判斷兩個(gè)字符串 s1 和 s2 是否相等 , 應(yīng)當(dāng)使用 ( D )A. if (s1=s2) B. if(s1=s2)C. if (strcmp(s1,s2)D. if (strcmp(s1,s2)=0)6. 以下正確的描述是 ( B ) 。A. 函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套。B. 函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套。C. 函數(shù)的定義和函數(shù)的調(diào)用均不可以嵌套。D. 函數(shù)的定義和函數(shù)的調(diào)用均可以嵌套。7. 在 C
3、語言中,下面對函數(shù)不正確的描述是 ( D) 。A. 當(dāng)用數(shù)組名作形參時(shí),形參數(shù)組值的改變可以使實(shí)參數(shù)組之值相應(yīng)改變。B. 允許函數(shù)遞歸調(diào)用。C. 函數(shù)形參的作用范圍只是局限于所定義的函數(shù)內(nèi)。D. 子函數(shù)必須位于主函數(shù)之前。8. 如果在一個(gè)函數(shù)中的復(fù)合語句中定義了一個(gè)變量,則以下正確的說法是 ( A)A. 該變量只在該復(fù)合語句中有效B. 該變量在該函數(shù)中有效C. 該變量在本程序范圍內(nèi)均有效D. 該變量為非法變量9. 以下正確的函數(shù)形式是 ( D ) 。A. double fun(int x,int y) z=x+y;return z;B. fun(int x,y) int z; return z
4、;C. fun(x,y) int x,y; double z; z=x+y; return z;D. double fun( int x,int y) double z; z=x+y; return z; 10. 以下程序的輸出結(jié)果是 ( B ) 。 #include<stdio.h>#define F(y) 8.19-y#define PRINT(a) printf("%d",(int)(a) void main(void)int x=2;PRINT(x*F(3);A. 10 B. 13 C. 11 D. 報(bào)錯(cuò)11. 以下程序中編譯和運(yùn)行結(jié)果均正確的一個(gè)是 (
5、 C ) 。A. A. void main(void)unionint n;float x; comm=1;printf("%d",comm.n);B. B. void main(void)unionint n;float x; comm=12.5; printf("%f",comm.x);C. C. void main(void)unionfloat x;int n; comm=12.5 printf("%f",comm.x);D. D. void main(void)unionint n;float x; comm=5;print
6、f("%d", comm.n);以下不合法的運(yùn)算是其錯(cuò)誤原因是( B )12. 設(shè)有定義: int a=1,*p=&a; float b=2.0; char c='A'( A) 。A. p+; B. a-; C. b+; D. c-;13. 以下程序中調(diào)用 scanf 函數(shù)給變量 a 輸入數(shù)值的方法是錯(cuò)誤的, main()int *p,*q,a,b;p=&a; printf("input a:");scanf("%d",*p);A.*p表示的是指針變量p 的地址B. *p表示的是變量 a的值,而不是變量
7、 a 的地址C. *p表示的是指針變量p 的值D. *p只能用來說明 p是一個(gè)指針變量14. 若 num、a、 b 和 c 都是 int 型變量,則執(zhí)行表達(dá)式 num=(a=4,b=16,c=32); 后 num 的值為 ( C ) 。A. 4 B. 16 C. 32 D. 5215. 已有如下定義和輸入語句 , 若要求 a1,a2,c1,c2 的值分別為 10,20,A 和 B, 當(dāng)從第一 列開始輸入數(shù)據(jù)時(shí) , 正確的數(shù)據(jù)輸入方式是 ( C ),( 注: _ 表示空格 ) int al,a2,char c1,c2;scanf("%d%c%d%c",&a1,&
8、;c1,&a2,&c2);A. 10A_20_B B. 10_A_20_B C. 10A20B D. 10A20_B16. 若有說明: int a10; 則對 a 數(shù)組元素的正確引用是 (C ) 。A. a10 B. a3.5 C. a5-3 D. a-117. 在C語言中,一維數(shù)組的定義方式為類型說明符數(shù)組名;(AA. 整型常量表達(dá)式 B. 表達(dá)式C. 整型常量 D. 整型表達(dá)式 18. 以下能對一維數(shù)組 a 進(jìn)行正確初始化的語句是 ( C ) A. in a10=(0,0.0,0,0);B. int a10=; C. i nt a= 0;D. int a10=10*1;19
9、. 以下程序段 ( C )。x=-1;dox=x*x;while(! x);A.是死循環(huán) B. 循環(huán)執(zhí)行二次C.循環(huán)執(zhí)行一次D. 有語法錯(cuò)誤20.以下關(guān)于 do-while循環(huán)的不正確描述是 ( B )。A.do-while的循環(huán)體至少執(zhí)行一次B.do-while循環(huán)由 do 開始,用 while結(jié)束,在 while( 表達(dá)式 ) 后面不能寫分號C.在 do-while循環(huán)體中,一定要有能使while后面表達(dá)式的值變?yōu)榱?(" 假") 的操作D.do-while的循環(huán)體可以是復(fù)合語句二、是非判斷題( 每題 1 分,共 15 分 )1.C 語言規(guī)定,標(biāo)識符中的字母一般區(qū)分大、
10、小寫。T2.控制臺標(biāo)準(zhǔn)輸入設(shè)備一般是指鍵盤。T3. 使用 while 和 do-while 循環(huán)時(shí),循環(huán)變量初始化的操作應(yīng)在循環(huán)語句之前處理。 T4. 循環(huán)體中 continue 語句的作用是結(jié)束整個(gè)循環(huán)的執(zhí)行。F5. 關(guān)系表達(dá)式的值是0或1。T6. 若有說明: int a34=0,則只有元素 a00 可得到初值 0。 T7. 字符串作為一維數(shù)組存放在內(nèi)存中。 T8. 字符數(shù)組中的一個(gè)元素存放一個(gè)字符 T。9. 字符數(shù)組中的最后一個(gè)字符必須是 '0'。 F10. 形參為指針變量時(shí),實(shí)參必須是數(shù)組名。 F11. 用數(shù)組名作函數(shù)參數(shù)時(shí)傳遞的是數(shù)組的值。 F12. 全局變量可以被任何
11、一個(gè)函數(shù)中的任何一個(gè)表達(dá)式使用。 T13. 一個(gè)函數(shù)可以帶回一個(gè)整型值、字符值、實(shí)型值等,也可以帶回指針型的數(shù)據(jù)。14. 表達(dá)式 i+ 與 +i 在任何場合功能完全相同。15. 在賦值表達(dá)式中,賦值號左邊的變量和右邊的表達(dá)式之值的數(shù)據(jù)類型可以不相同。三、多項(xiàng)選擇題 ( 每題 1 分,共 5 分 )1. 若要求在 if 后一對圓跨括號中表示 a 不等于 0 的關(guān)系 , 則不能正確表示這一關(guān)系 的表達(dá)式為 ( ABC ).Aa<>0B!aCa=0DaEa!=02. 選出所有合法的常量 ( CEGIJ ) 。A 3e22.5B-e-3C-.1e-1D'BASIC'E
12、9;045'F0fdG0xfdaLHe8I ''J """3. 以下關(guān)于函數(shù)原型說法錯(cuò)誤的是: (ADFHI)(1) 對變量的定義 ”和“聲明”是一回事,對函數(shù)的 “定義 ”和“聲明 ”也是一回事。(2) 在聲明函數(shù)原型時(shí),允許只寫出參數(shù)的類型,而不必寫出參數(shù)的名稱。(3) 如果在定義函數(shù)時(shí)不指定函數(shù)類型,系統(tǒng)會(huì)隱含指定函數(shù)類型為 int 型。(4) 調(diào)用一個(gè)函數(shù)時(shí),函數(shù)名、實(shí)參個(gè)數(shù)、實(shí)參類型必須與函數(shù)原型一致。(5) 如果被調(diào)函數(shù)的定義出現(xiàn)在主調(diào)函數(shù)之前,可以不必加以聲明。(6) 所有的函數(shù)之間可以互相調(diào)用。(7) 在 C 語言中,所有函
13、數(shù)都是平行的,一個(gè)函數(shù)不能從屬于另一個(gè)函數(shù),即不能嵌套定義 的。(8) 如果函數(shù)沒有返回值,在定義時(shí)可以省略函數(shù)類型。(9) 在 C 語言中,任何函數(shù)的定義都不允許為空。(10) C 語言規(guī)定,實(shí)參變量對形參變量的數(shù)據(jù)傳遞是 “值傳遞 ”。4. 請從下面關(guān)于指針的敘述中 , 選出 5 個(gè)正確的敘述。 (ABDEH)(1) 指針即地址。(2) 指針須先賦值后使用。(3) 當(dāng)指針 p 指向數(shù)組 a 的首址后,由于 p 和 a 都能引用數(shù)組元素,所以這里 p 和 a 是等價(jià) 的。(4) int *p 表示定義了一個(gè)指向 int 類型數(shù)據(jù)的指針變量 p 。(5) 數(shù)組的指針是指數(shù)組的起始地址。(6)
14、若有定義 int a4,*p=a, 則 p+ 后 p 指向數(shù)組 a 所占內(nèi)存的第二個(gè)字節(jié)。(7) 使用指針變量作函數(shù)參數(shù)采取的是 "值傳遞 "的方式。(8) 相同類型的指針可以進(jìn)行減法運(yùn)算。(9) 指針變量和許多變量一樣可以進(jìn)行四則運(yùn)算。(10) 指針 p 指向數(shù)組元素 a2 ,若要其指向 a4 ,執(zhí)行 p=p*2 即可。5. 以下關(guān)于數(shù)組的敘述中, 5 個(gè)最確切的說法是: (BEGHI )(1) 在聲明一個(gè)數(shù)組變量時(shí)必須指定大小。(2) 必須用常量表達(dá)式來說明一個(gè)數(shù)組變量的大小。(3) 在對數(shù)組進(jìn)行初始化時(shí)大括號中的數(shù)據(jù)個(gè)數(shù)必須和數(shù)組的大小相同。a 的每(4) 有變量定義
15、 int a3=0,1,2,b3;,可以用 b=a ,使數(shù)組 b 的每個(gè)元素和個(gè)元素相等。(5) 在 C 語言中,可以將字符串作為字符數(shù)組來處理。(6) 定義了字符數(shù)組 char c11; 為了給它賦值,可以用 c="china" 。(7) 如果有 char s15="I am a0 student",則 strlen(s) 的值為 6 。(8) C 語言中,二維數(shù)組中元素排列的順序是:按行存放。(9) 在 C 語言中,不能對局部的數(shù)組變量進(jìn)行初始化。(10) 在聲明時(shí)對數(shù)組進(jìn)行進(jìn)行初始化必須指定數(shù)組大小。四、程序運(yùn)行結(jié)果題 ( 每題 4 分,共 20
16、分 )1. (4 分 ) 下面程序的運(yùn)行結(jié)果是 ( ) 。#include<stdio.h>void main(void)int i;char a="Time",b="Tom"for(i=0;a!='0'&&b!='0'i+)if (a=b)if (a>='a' && a<= 'z') printf("%c",a-32);else printf("%c",a+32);else printf(&qu
17、ot;*");2. (4 分 ) 下面程序段的運(yùn)行結(jié)果是 ( ) 。 i=1;s=3dos+=i+;if (s%7=0) continue;else +i; whlie(s<15);printf("%d",i);3. (4 分 ) 若運(yùn)行時(shí)輸入 :5999, 則以下程序的運(yùn)行結(jié)果 ( 保留小數(shù)點(diǎn)后一位 ) 是( ) 。 void main(void)int x;float y;scanf("%d",&x);if (x>=0 && x<=2999) y=18+0.12 * x;if (x>=3000
18、 && x<=5999) y=36+0.6*x;if (x>=6000 && x<=10000) y=54+0.3*x;printf("%6.1f",y);4. (4 分 ) 以下程序的運(yùn)行結(jié)果是 ( ) 。 void main(void)int a=1,k;for(k=0;k<3;k+) printf("%4d",f1(a)int f1(int x)static int z=3,y=0;y+;z+;return(x+y+z);5. (4 分 )以下程序的功能是計(jì)算函數(shù) F(x,y,z)=(x+y)
19、/(x-y)+(z+y)/(z-y) 的值,請選擇填空。 #include<stdio,h>#include<math.h>float fun1(float,float);void main(void)float x,y,z,sum;scanf("%f%f%",&x,&y,&z);sum=fun1( )+ fun1 ( );printf("sum=%fn",sum);float fun1(float a,float b)float num;num=a/b;return num;五、程序填空題 ( 每題 2
20、分,共 20 分 )1. 下面程序的功能是用公式:nXn /6=1/(1 X 1)+1/(2 X 2)+1/(3 X 3)+求n的近似值,直到最后一項(xiàng)的值小于10e-6為止。#include <stdio.h>#include <math.h>void main(void)long i=1; pi=0;while (i*i<=10e+6) pi= ; i+; pi=sqrt(6.0*pi); printf("pi=%10.6fn",pi);2. 下面程序的功能是把以下給定的字符按其矩陣格式讀入數(shù)組str1 中,并輸出行列號之和是 3 的數(shù)組元素
21、。void main(void)char str143='A','b','C','d','E','f','G','h','I','j','K','i'int x,y,z;for(x=0;x<4;x+)for(y=0; ;y+)z=x+y;if ( ) printf("%cn",str1xy);3. 以下程序的功能是用遞歸方法計(jì)算學(xué)生的年齡,已知第一位學(xué)生年齡最小,為 10 歲,
22、其余學(xué)生一個(gè)比一個(gè)大 2 歲,求第 5 位學(xué)生的年齡。遞歸公式如下:age(1)=10age(n)=age(n-1)+2 (n>1)#include<stdio.h>int age(int n)int c;if (n=1) c=10;else c= ;return c;4. 以下程序的功能是判斷輸入的年份是否是閏年。void main(void)int year,yes;scanf("%d",&year);if (year%400=0) yes=1;else if ( ) yes=1;else ;if(yes) printf("%d is
23、 ",year);else printf("%d is not ",year);printf("a leap year.n");5. 以下程序?qū)崿F(xiàn) : 輸入三個(gè)整數(shù) , 按從大到小的順序進(jìn)行輸出。void main(void)int x,y,z,c;scanf("%d %d %d",&x,&y,&z);if ( ) c=y;y=z;z=c;if ( ) c=x;x=z;z=c;if ( ) c=x;x=y;y=c;printf("%d,%d,%d",x,y,z);六、填空題 ( 每
24、題 1 分,共 20 分 )1. 在 C 語言中,一個(gè) float 型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為 ( ) 個(gè)字節(jié) ; 一個(gè) double 型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為 ( ) 個(gè)字節(jié)。、單項(xiàng)選擇題1下面正確的字符常量是:A) “c”B) '' C)W'D)2 下列字符串中不能作為C+標(biāo)識符使用的是:A) WHILE B) user C) _1var D) 9stars3 執(zhí)行語句序列的輸出結(jié)果是 。int i=0;while(i<25)i+=3;cout<<i;A) 24 B) 25 C) 27 D) 284 .下列符號中可以用作C+標(biāo)識符的是。A)
25、radius B) foobar C) else D) 3room5. 若 a 是 int 類型變量,則表達(dá)式 a=25/3%3 的值是:A) 3 B) 2 C) 1 D) 06. 以下敘述中不正確的是:A) 在不同的函數(shù)中可以使用相同名字的變量B) 函數(shù)中的形參是局部變量C) 在一個(gè)函數(shù)內(nèi)部定義的變量只在本函數(shù)范圍內(nèi)有效D) 在一個(gè)函數(shù)內(nèi)部定義的變量在所有函數(shù)內(nèi)部有效7. 變量的引用,其含義是指該變量的:A.值B.類型C.別名D.地址8.已知定義:char s10;則下面不表示s1 的地址的是:A.s+1B. *(s+1)9.通??截悩?gòu)造函數(shù)的參數(shù)是:C.&s0+1D. &s
26、1A.對象B.對象的成員C.對象的引用D.對象的指針10 派生類對象的構(gòu)造順序是先調(diào)用:A派生類的構(gòu)造函數(shù)B基類的構(gòu)造函數(shù)C內(nèi)嵌對象的構(gòu)造函數(shù)D友元類的構(gòu)造函數(shù)二、填空題1動(dòng)態(tài)多態(tài)是指在 _(1 ) 時(shí)才確定使用哪個(gè) _ (2)_ 函數(shù)的方式。2友員不是類的成員,但必須在 _ ( 3) _予以聲明,它具有存取類的 _ (4 ) _成員的 特權(quán)。5)_的成員為私有的,3 . C+中class 與struct的主要區(qū)別是在缺省訪問權(quán)限時(shí),4 若有定義語句: int a=3,b=2;而_ (6)_ 的成員為公有的。,則表達(dá)式 a<b?a :b的值是 _(7)5 表達(dá)式: 26%3=_(8),
27、32/5=_(9)6類的成員包括 _(10)_ 和_(11)_ 兩種,在面向?qū)ο蟮男g(shù)語中,前者稱為屬性、后 者稱為方法。其訪問權(quán)限有三種,由符號_(12)_ 、_(13)_ 和_(14)_ 指定,其中具有_(15)_ 權(quán)限的成員只有類中的成員函數(shù)才能訪問、而具有_(16)_ 權(quán)限的成員在任何函數(shù)中都可訪問。7對基類成員的初始化,必須在派生類構(gòu)造函數(shù)的(17)中進(jìn)行。8 . C+源程序文件的擴(kuò)展名是(18),頭文件的擴(kuò)展名是 (19)9若 n 為整型,則表達(dá)式 n=(float)2/3 的值是 (20)。三、寫出程序的運(yùn)行結(jié)果1 寫出程序運(yùn)行結(jié)果include <iostream.h>
28、;#include <string.h>class CRectprivate:char color10;int left;int top;int length;int width;public:;CRect();CRect(char *c, int t, int lef, int len, int wid); void SetColor(char *c);void SetSize(int l=100, int w=100);void Move(int t,int l);void Draw();CRect:CRect()strcpy(color, "Black")
29、; top = 0;left = 0;length = 0;width = 0;CRect:CRect(char *c, int t, int lef, int len, int wid)strcpy(color, c); top = t; left = lef; length = len; width = wid;void CRect:SetColor(char *c)strcpy(color, c);void CRect:SetSize(int l, int w)length=l;width = w;void CRect:Move(int t,int l)top = t;left = l;
30、void CRect:Draw()cout << " 矩形左上角坐標(biāo)為 (" << left << "," << top << ")" << endl; cout << " 矩形長和寬分別為 " << length << "," << width << endl;cout << " 矩形的顏色是 " << color &l
31、t;< endl;void main()CRect r;r.SetColor("Red");r.Move(10,20);r.SetSize(100,200);r.Draw();r.Move(50,50);r.SetColor("Blue");r.Draw();2寫出程序運(yùn)行結(jié)果#include <iostream.h>class Aint x,y;public:A()x=0;y=0;A(int a, int b)x=a;y=b;A()if(x=y)cout << "x=y" << endl;e
32、lsecout << "x!=y" << endl;void Display()cout << "x=" << x << " ,y=" << y << endl;void main()A a1, a2(2,3);a1.Display();a2.Display();3寫出程序運(yùn)行結(jié)果#include <iostream.h>class Aprivate:int n;public:A(int i)n=i;operator +()n+;opera
33、tor +(int )n+=2;void Display()cout << "n=" << n << endl;void main()A a(2), b(2);a+;+b;a. Display();b. Display();4寫出程序運(yùn)行結(jié)果#include <iostream.h>int func1(int n);int func2(int n);void main()int sum;sum = func2(5);cout << sum << endl;int func1(int n)if(n=1)r
34、eturn 1;elsereturn n*func1(n-1);int func2(int n)int s = 0;for(int i=1; i<=n; i+)s += func1(i);return s;四、編程(根據(jù)要求填上程序缺少的部分)1完成如下的程序,使得輸出為:1234#include <iostream.h>#include <math.h>class Aprivate:(1)protected:(2)public:A(int a, int b, int c)X=a;Y=b;Z=c;int GetX()return X;int GetY()retur
35、n Y;int GetZ()return Z; class B private:public:_(3)int K;B(int a, int b, int c, int d)(4)K=d;void Show()cout << GetX() << GetY() << Z << K << endl;void main()B b(1,2,3,4);c. Show();2 .在主函數(shù)中定義有 30個(gè)元素的數(shù)組s,函數(shù)funci ()的功能是將 2、4、6、56、58、60 分別賦給數(shù)組元素s0、s1 、s2、s27、s28、s29。函數(shù)func
36、2 ()的功能是按順序?qū)?shù)組的每 5 個(gè)元素求平均值并存入數(shù)組 w 中(即將 s0、s1、 s2、 s3、 s4 的平均值存入 w0 中, s5 、 s6、 s7、 s8 、 s9的平均值存入w1中,)。請?zhí)羁帐钩绦蛘_運(yùn)行。#include <iostream.h>#include <math.h>void func1(double s)int i,k;for(k=2,i=0; i< 30; i+)si=k;(5)void func2(double s, double w)double sum;int i,k;for(k=0,i=0,sum=0; i<30
37、; i+)(6)if( (i+1)%5=0)wk = sum/5;(7)k+;void main()double s30, w6;func1(s);func2(s,w);C+ 程序設(shè)計(jì) 試題及答案(一)答案一、單項(xiàng)選擇題1C2. D3. A4. A5. B6. D7. D8. A9. c10. b二、填空題1執(zhí)行,成員2.類中,私有3.class ,struct4. 25. 2 , 6公共6. 數(shù)據(jù)成員, 函數(shù)成員7. public , private , protect , 私有,8. .cpp .h9. 0.5三、寫出程序的運(yùn)行結(jié)果1 矩形左上角坐標(biāo)為 50,50 矩形長和寬分別為 100
38、,100 矩形的顏色是 Blue2 x= 0,y=0x=2,y=3x=yx!=y3, n=3n=44 , 5四、編程(根據(jù)要求填上程序缺少的部分)1.int X,Y;2.int Z;3 public A4 : A(a,b,c)5 k+=2;6 sum += si;7 sum = 0;C+ 程序設(shè)計(jì) 試題及答案(二)一、填空題( 20 分,每空 1 分)1當(dāng)使用關(guān)鍵字 _ (1)_ 作為函數(shù)返回類型時(shí),該函數(shù)不返回任何值。2在類中必須聲明成員函數(shù)的 _(2)_ ,成員函數(shù)的 _(3)_部分可以寫在類外。3如果需要在被調(diào)函數(shù)運(yùn)行期間,改變主調(diào)函數(shù)中實(shí)參變量的值,則函數(shù)的形參應(yīng)該是 (4)_類型或
39、_ (5)_類型。4 當(dāng)一個(gè)變量被聲明為另一個(gè)變量的引用時(shí),此變量就成為被引用變量的_(6)_ 。此時(shí),對其中一個(gè)變量值的修改, _(7)_ (會(huì) / 不會(huì))影響到另一個(gè)變量的值。5 友員不是類的成員,但必須在 _(8)_ 予以聲明,它具有存取類的 _(9)_ 成員的特權(quán)。6如果需要在被調(diào)函數(shù)運(yùn)行期間,改變主調(diào)函數(shù)中實(shí)參變量的值,則函數(shù)的形參應(yīng)該是(10)_ 類型或 _(11)_ 類型。成員的特7 友員不是類的成員,但必須在_(12)_ 予以聲明,它具有存取類的 _(13)_權(quán)。8如果需要在被調(diào)函數(shù)運(yùn)行期間,改變主調(diào)函數(shù)中實(shí)參變量的值,則函數(shù)的形參應(yīng)該是 _(14)_ 類型或 _(15)_類型
40、。9. 下面程序?qū)⒆址麛?shù)組 a 復(fù)制到字符數(shù)組 b 中。main()char a="I am a boy.",b20;int i;for(i=_(16)_;ai!='0'i+)_(17)_;(18)_;10 .下面程序的功能是計(jì)算1-3+5- 7+99+101的值存在s中,請?zhí)羁铡?include <stdio.h>main()int i,t=1,s=0;for(i=1;i<=101;_(19)_)s=s+i*t;t=_(20)_;二、判斷以下說法的正確性,正確的劃V,錯(cuò)誤的劃X (10分,每個(gè)題目2分)1 如果派生類的成員函數(shù)的原型與基類
41、中被定義為虛函數(shù)的成員函數(shù)原型相同,那么,這個(gè) 函數(shù)自動(dòng)繼承基類中虛函數(shù)的特性。2 .在C+中,關(guān)鍵字class 與struct具有完全相同的作用。3 若有定義: double x35;則 x 數(shù)組行下標(biāo)的上限是 3,下限是 1 。4. 說明函數(shù)原型時(shí)不需要指明每個(gè)參數(shù)的類型,只需要說明每個(gè)參數(shù)的名字就可以了。5. 如果在一個(gè)程序塊中有兩個(gè)變量具有相同的名字,并且都有效,只是它們的作用域不同, 則優(yōu)先訪問作用域較大的那個(gè)變量。三、單項(xiàng)選擇題( 30 分,每題 2 分)1 .程序段int a,b;a=5;b=a+;cout << b;的輸出應(yīng)為:A) 4 B) 5 C) 6 D) 7
42、2程序段int i,a;for(i=0;i<=10;i+)a=i;cout << i;的輸出應(yīng)為:A) 0 B) 9 C) 10 D) 113 下列有關(guān)函數(shù)重載的敘述中,錯(cuò)誤的是 A) 函數(shù)重載就是用相同的函數(shù)名定義多個(gè)函數(shù)B) 重載函數(shù)的參數(shù)列表必須不同C) 重載函數(shù)的返回值類型必須不同D) 重載函數(shù)的參數(shù)可以帶有默認(rèn)值4 int *p1,*p2,a10;p1=a;p2=&a5;則 p2-p1 的值為:A) 無法確定 B) 10 C) 5 D) 12一個(gè)標(biāo)志5變量的指針,其含義是指該變量的:A) 值 B) 地址 C) 名 D)6. 派生類的成員函數(shù)不能訪問基類的 。
43、A) 公有成員和保護(hù)成員 B)公有成員C) 私有成員 D) 保護(hù)成員7數(shù)字字符 0 的 ASCII 值為 48 ,若有以下程序void main()char a='1', b='2'cout << b+ << ” , ”;cout << b-a << endl;程序運(yùn)行后的輸出結(jié)果是:A) 3,2B ) 50,2 C) 2,2D)2,508有以下程序void main()int a33,*p,i;p=&a00;for(i=0;i<9;i+)pi=i;for(i=0;i<3;i+)cout <
44、;< a1i;程序運(yùn)行后的輸出結(jié)果是:A) 012B) 123C )234 D)3459以下敘述中錯(cuò)誤的是:A) 對于double 類型數(shù)組,不可以直接用數(shù)組名對數(shù)組進(jìn)行整體輸入或輸出B) 數(shù)組名代表的是數(shù)組所占存儲區(qū)的首地址,其值不可改變C) 程序執(zhí)行中,數(shù)組元素的下標(biāo)越界時(shí),系統(tǒng)給出下標(biāo)越界”的出錯(cuò)信息D) 可以通過賦初值的方式確定數(shù)組元素的個(gè)數(shù)10 有以下程序void main()int a=1,2,3,4,5,6,7,8,9,0,*p;for(p=a;p<a+10;p+)cout << *p << “ , ”;程序運(yùn)行后的輸出結(jié)果是:A) 1,2,3
45、,4,5,6,7,8,9,0,B) 2,3,4,5,6,7,8,9,10,1,C)0,1,2,3,4,5,6,7,8,9,D) 1,1,1,1,1,1,1,1,1,1,11 有以下程序void main()int c=35;int b=c&c;cout << b;程序運(yùn)行后的輸出結(jié)果是:A) 0 B )70 C ) 35 D) 112 執(zhí)行下列程序段后,正確的結(jié)果是:int i=0, s=1;while(i<3)s+=i;i+;cout << s;A) 5 B) 6 C) 4 D) 313 執(zhí)行下列程序段后,正確的結(jié)果是:char a7= ” abcdef
46、 ”;char b4= ” ABC”;strcpy(a,b);cout << a5;A) e B) f C) 0 D) 無輸出14 下列帶缺省值參數(shù)的函數(shù)說明中,正確的說明是A) int Fun(int x,int y=2,int z=3);B) int Fun(int x=1,int y,int z=3);C) int Fun(int x,int y=2,int z);D) int Fun(int x=1,int y,int z);15 拷貝構(gòu)造函數(shù)的作用是:A) 進(jìn)行數(shù)據(jù)類型的轉(zhuǎn)換B) 用對象調(diào)用成員函數(shù)C) 用對象初始化對象D) 用一般類型的數(shù)據(jù)初始化對象四、寫出程序的運(yùn)行結(jié)
47、果( 20 分,每題 10 分)1 函數(shù) sub 的功能是什么?寫出運(yùn)行結(jié)果。1 函數(shù) sub 的功能是什么?寫出運(yùn)行結(jié)果。#include <iostream.h>long sub(int num)int i;long subsum=1;for(i=1;i<=num;i+)subsum *= i;return( subsum );void main()int i; long sum=0;for(i=1;i<=5;i+)sum += sub(i);cout << i << "," << sum << e
48、ndl;2寫出程序運(yùn)行結(jié)果#include <iostream.h>class Basepublic:void WhoAmI()cout << "Class Bass" << endl;virtual void Who()cout << "Class Bass" << endl;class Derived:public Basepublic:void WhoAmI()cout << "Class Derived" << endl;void Who()c
49、out << "Class Derived" << endl;void main()Base *p;Base b;Derived d;p = &b;p->WhoAmI();p->Who();p = &d;p->WhoAmI();p->Who();五、編程(根據(jù)要求填上程序缺少的部分)( 20 分,每題 10 分)1 函數(shù) Convert ()將一個(gè)數(shù)字字符串轉(zhuǎn)換為對應(yīng)的整數(shù),請?zhí)羁?,?shí)現(xiàn)函數(shù)的功能。#include <iostream.h> int Convert(char *str);void m
50、ain()char s10 = "12345" int n = Convert(s);cout << n << endl;int Convert(char *str)int num=0,digit;for(int i=0; (1) ; i+)digit =(2) ;num = num*10 + digit;return num;2 函數(shù) Convert ()將一個(gè)數(shù)字字符串轉(zhuǎn)換為對應(yīng)的整數(shù),請?zhí)羁?,?shí)現(xiàn)函數(shù)的功能。#include <iostream.h>int Convert(char *str);void main()char s10
51、 = "12345"int n = Convert(s);cout << n << endl;int Convert(char *str)int num=0,digit;for(int i=0; (3) ; i+)digit = (4) num = num*10 + digit;return num;C+ 程序設(shè)計(jì) 試題及答案(二)一、填空題1 void2. 函數(shù)頭,函數(shù)體3. 引用,指針4. 別名,會(huì)5. 類中,私有6. 引用,指針7. 類中,私有8. 引用,指針9. ai=bi ai='0'10. i=i+2二、判斷以下說法的正確
52、性1 . V2. X3. X4. X5. X三、單項(xiàng)選擇題1. C2. B3. A4. D5. B6. D7. B8. A9. D10. B11. D12. B13. A14. C15. D四、寫出程序的運(yùn)行結(jié)果1. 從 1 連乘到 num5,1532 Class BassClass BassClass DerivedClass Derived五、編程(根據(jù)要求填上程序缺少的部分)1(1) i < strlen(str)(2) stri2 (1) i<10(2) siC+程序設(shè)計(jì)試題及答案(三)時(shí)間 :2011-07-17 18:54來源 : 未知 作者 : admin 點(diǎn)擊 :
53、2840 次標(biāo)簽:C+ 程序設(shè)計(jì)試題及答案(三) 學(xué)號: 專業(yè): 層次: 姓名: 題號 一 二 三 四 五 六 七 八 九 十 總分 得分 注意:所有答案都要寫在答題卡上 一、單項(xiàng)選擇題 1 設(shè)有數(shù)組 定義: char array=China;則數(shù)組 array 所占的空間為: A) 4 個(gè)字節(jié) B) 5 個(gè)字節(jié)C) 6 個(gè)C+程序設(shè)計(jì)試題及答案(三)學(xué)號:專業(yè): 層次: 姓名:題號四五六七八九十總分得分注意:所有答案都要寫在答題卡上一、單項(xiàng)選擇題所占的空間為:個(gè)字節(jié)1 設(shè)有數(shù)組定義: char array= ” China ” ;則數(shù)組 arrayA) 4 個(gè)字節(jié) B) 5 個(gè)字節(jié) C) 6
54、 個(gè)字節(jié) D) 72下列選項(xiàng)中,與實(shí)現(xiàn)運(yùn)行時(shí)多態(tài)性無關(guān)的是A) 重載函數(shù) B) 虛函數(shù) C) 指針 D) 引用3若 a 是 int 類型變量,則計(jì)算表達(dá)式 a=1000 999 的值是:A)B) 1C) 2D) 34面程序段中,for 循環(huán)的執(zhí)行次數(shù)是:inti=10;for(i=1;i<10;i+)cout << “ * ”A) 9B)10C)8D)75有以下程序void main()int a33,*p,i;p=&a00;for(i=0;i<9;i+)pi=i;for(i=0;i<3;i+)cout << a1i;程序運(yùn)行后的輸出結(jié)果是:A) 012B ) 123 C )234 D )3456以下敘述中錯(cuò)誤的是:A) 對于double類型數(shù)組,不可以直接用數(shù)組名對數(shù)組進(jìn)行整體輸入或輸出B) 數(shù)組名代表的是數(shù)組所占存儲區(qū)的首地址,其值不可改變C) 程?蛑蔥兄校?樵?氐南鹵暝澆縭保?低掣??ldquo;下標(biāo)越界”的出錯(cuò)信息D) 可以通過賦初值的方式確定數(shù)組元素的個(gè)數(shù)7有以下程序void main()int a=1,2,3,4,5,6,7,8,9,0,*p;for(p=a;p<a+10;p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代小區(qū)火災(zāi)應(yīng)急救援隊(duì)伍的實(shí)戰(zhàn)化訓(xùn)練探討
- 現(xiàn)代企業(yè)員工激勵(lì)機(jī)制設(shè)計(jì)與實(shí)踐
- 班級環(huán)境衛(wèi)生與校園文化建設(shè)的結(jié)合
- 4《機(jī)械擺鐘》說課稿-2023-2024學(xué)年科學(xué)五年級上冊教科版
- 2023七年級數(shù)學(xué)上冊 第3章 一次方程與方程組3.2 一元一次方程的應(yīng)用第1課時(shí) 等積變形和行程問題說課稿 (新版)滬科版
- Unit 4 Plants around us Part A Let's learn(說課稿)-2024-2025學(xué)年人教PEP版(2024)英語三年級上冊
- 2024-2025學(xué)年新教材高中英語 Unit 3 The world meets China預(yù)習(xí) 新知早知道1(教用文檔)說課稿 外研版選擇性必修第四冊
- 2025日本食品業(yè)A公司特許合同樣本
- 2025年銀行擔(dān)保借款合同范本
- 1小蝌蚪找媽媽 說課稿-2024-2025學(xué)年語文二年級上冊統(tǒng)編版
- 2023-2024年同等學(xué)力經(jīng)濟(jì)學(xué)綜合真題及參考答案
- 農(nóng)村集體土地使用權(quán)轉(zhuǎn)讓協(xié)議
- 課件四露天礦山安全知識培訓(xùn)
- 2025年高考數(shù)學(xué)模擬卷(一)含答案及解析
- 大單元教學(xué)理念及其定義、特點(diǎn)與實(shí)施策略
- 屋頂分布式光伏發(fā)電項(xiàng)目光伏組件技術(shù)要求
- 職業(yè)技術(shù)學(xué)院《裝配式混凝土構(gòu)件生產(chǎn)與管理》課程標(biāo)準(zhǔn)
- 2023光伏并網(wǎng)柜技術(shù)規(guī)范
- DBJ15 31-2016建筑地基基礎(chǔ)設(shè)計(jì)規(guī)范(廣東省標(biāo)準(zhǔn))
- 北師大版八年級數(shù)學(xué)下冊課時(shí)同步練習(xí)【全冊每課齊全含答案】
- 小學(xué)德育養(yǎng)成教育工作分層實(shí)施方案
評論
0/150
提交評論