

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、C 語言程序設計試卷 ,C+ 語言程序設計試題及答案、單項選擇題 (每題 1 分,共 20 分)1.C 語言規定 :在一個源程序中 , main函數的位置 (C)A.必須在最開始B.必須在系統調用的庫函數的后面C.可以任意D.必須在最后2.下面四個選項中 , 均是合法浮點數的選項是(B) 。A.+1e+15e-9.403e2B.-.6012e-4-8e5C.123e1.2e-.4+2e-1D.-e3.8e-45.e-03.若 a=-14,b=3, 則條件表達式 aba:b+1的值為 (A)A.-14B.-13C.3D.44.已知 :intn,i=1,j=2; 執行語句 n=iji+:j+; 則
2、 i 和 j 的值是 (c).A.1,2B.1,3C.2,2D.2,35.為了判斷兩個字符串 s1 和 s2 是否相等 , 應當使用 (D)A.if(s1=s2)B.if(s1=s2)C.if(strcmp(s1,s2)D.if(strcmp(s1,s2)=0)6.以下正確的描述是 (B) 。A.函數的定義可以嵌套 , 但函數的調用不可以嵌套 。B.函數的定義不可以嵌套 , 但函數的調用可以嵌套 。C.函數的定義和函數的調用均不可以嵌套 。D.函數的定義和函數的調用均可以嵌套 。7. 在 C 語言中 ,下面對函數不正確的描述是 (D) 。A.當用數組名作形參時 , 形參數組值的改變可以使實參數
3、組之值相應改變 。B.允許函數遞歸調用 。C.函數形參的作用范圍只是局限于所定義的函數內 。D.子函數必須位于主函數之前 。8. 如果在一個函數中的復合語句中定義了一個變量 , 則以下正確的說法是 (A) 。A.該變量只在該復合語句中有效B.該變量在該函數中有效C.該變量在本程序范圍內均有效D.該變量為非法變量9. 以下正確的函數形式是 (D) 。A.doublefun(intx,inty)z=x+y;returnz;B.fun(intx,y)intz;returnz;C.fun(x,y)intx,y;doublez;z=x+y;returnz;D.doublefun(intx,inty)do
4、ublez;z=x+y;returnz;10. 以下程序的輸出結果是 (B) 。#include#defineF(y)8.19-y#definePRINT(a)printf(%d,(int)(a)voidmain(void)intx=2;PRINT(x*F(3);A.10B.13C.11D. 報錯11. 以下程序中編譯和運行結果均正確的一個是 (C) 。A.A.voidmain(void)unionintn;floatx;comm=1;printf(%d,comm.n);B.B.voidmain(void)unionintn;floatx;comm=12.5;printf(%f,comm.x)
5、;C.C.voidmain(void)unionfloatx;intn;comm=12.5printf(%f,comm.x);D.D.voidmain(void)unionintn;floatx;comm=5;printf(%d,comm.n);12. 設有定義 : inta=1,*p=&a;floatb=2.0;charc=A;A.p+;B.a-;C.b+;D.c-;13.以下程序中調用 scanf 函數給變量 a 輸入數值的方法是錯誤的 , 其錯誤原因是 (B) 。main()int*p,*q,a,b;p=&a;printf(inputa:);scanf(%d,*p);以下不合法的運算是(
6、A)A.*p表示的是指針變量 p 的地址B.*p表示的是變量 a 的值 ,而不是變量 a 的地址C.*p表示的是指針變量 p 的值D.*p只能用來說明 p 是一個指針變量14.若 num、 a、b 和 c 都是 int 型變量 ,則執行表達式 num=(a=4,b=16,c=32); 后 num的值為 (C) 。A. 4B.16C.32D.5215. 已有如下定義和輸入語句 , 若要求 a1,a2,c1,c2 的值分別為 10,20,A 和 B, 當從第一列開始輸入數據時 , 正確的數據輸入方式是 (C),( 注 :_ 表示空格 ) intal,a2,charc1,c2;scanf(%d%c%
7、d%c,&a1,&c1,&a2,&c2);A. 10A_20_BB.10_A_20_BC.10A20BD.10A20_B16. 若有說明 :inta10;則對 a 數組元素的正確引用是 (C) 。A. a10B.a3.5C.a5-3D.a-117.在 C 語言中,一維數組的定義方式為類型說明符數組名;(A)A. 整型常量表達式 B. 表達式 C. 整型常量 D. 整型表達式 18.以下能對一維數組 a 進行正確初始化的語句是 (C) 。A. ina10=(0,0.0,0,0);B.in ta10=;C.i nta= 0;D.inta10=10*1;19. 以下程序段 (C) 。x=-1;dox
8、=x*x;while(!x);A. 是死循環 B. 循環執行二次C. 循環執行一次 D. 有語法錯誤20.以下關于 do-while 循環的不正確描述是 (B) 。A.do-while 的循環體至少執行一次B.do-while 循環由 do 開始 ,用 while 結束,在 while( 表達式 ) 后面不能寫分號C.在 do-while循環體中 , 一定要有能使 while 后面表達式的值變為零 ( 假) 的操作D.do-while 的循環體可以是復合語句二、是非判斷題 (每題 1 分,共 15 分)1.C 語言規定,標識符中的字母一般區分大 、小寫。T2.控制臺標準輸入設備一般是指鍵盤 。
9、 T3.使用 while 和 do-while 循環時 ,循環變量初始化的操作應在循環語句之前處理 。T4.循環體中 continue 語句的作用是結束整個循環的執行 。 F5.關系表達式的值是 0 或 1。 T6.若有說明 : inta34=0, 則只有元素 a00 可得到初值 0。 T7.字符串作為一維數組存放在內存中 。 T8.字符數組中的一個元素存放一個字符 T。9.字符數組中的最后一個字符必須是 0。 F10.形參為指針變量時 , 實參必須是數組名 。 F11.用數組名作函數參數時傳遞的是數組的值 。 F12.全局變量可以被任何一個函數中的任何一個表達式使用 。 T13.一個函數可以
10、帶回一個整型值 、字符值 、實型值等 , 也可以帶回指針型的數據 。14.表達式 i+ 與 +i 在任何場合功能完全相同 。15.在賦值表達式中 , 賦值號左邊的變量和右邊的表達式之值的數據類型可以不相同。三、 多項選擇題 ( 每題 1 分, 共 5 分)1.若要求在 if 后一對圓跨括號中表示 a 不等于 0 的關系 ,則不能正確表示這一關系 的表達式為 (ABC).Aa0B!aC a=0DaEa!=02.選出所有合法的常量 (CEGIJ) 。A 3e22 . 5B-e-3C-.1e-1DBASICE045F0fdG0 xfdaLHe8I J 3.以下關于函數原型說法錯誤的是:(ADFHI)
11、(1) 對變量的定義 ”和“聲明”是一回事 ,對函數的 “定義 ”和“聲明 ”也是一回事 。(2) 在聲明函數原型時 , 允許只寫出參數的類型 ,而不必寫出參數的名稱 。(3) 如果在定義函數時不指定函數類型 , 系統會隱含指定函數類型為 int 型 。(4) 調用一個函數時 , 函數名 、實參個數 、實參類型必須與函數原型一致 。(5) 如果被調函數的定義出現在主調函數之前 ,可以不必加以聲明 。(6) 所有的函數之間可以互相調用 。(7) 在 C 語言中 ,所有函數都是平行的 ,一個函數不能從屬于另一個函數 ,即不能嵌套定義 的。(8) 如果函數沒有返回值 , 在定義時可以省略函數類型 。
12、(9) 在 C 語言中 , 任何函數的定義都不允許為空 。(10) C 語言規定 ,實參變量對形參變量的數據傳遞是 “值傳遞 ”。4.請從下面關于指針的敘述中 , 選出 5 個正確的敘述 。 (ABDEH)(1) 指針即地址 。(2) 指針須先賦值后使用 。(3) 當指針 p 指向數組 a 的首址后 ,由于 p 和 a 都能引用數組元素 , 所以這里 p 和 a是等價 的。(4)int*p 表示定義了一個指向 int 類型數據的指針變量 p 。(5) 數組的指針是指數組的起始地址 。(6) 若有定義 inta4,*p=a, 則 p+ 后 p 指向數組 a 所占內存的第二個字節 。(7) 使用指
13、針變量作函數參數采取的是 值傳遞 的方式 。(8) 相同類型的指針可以進行減法運算 。(9) 指針變量和許多變量一樣可以進行四則運算 。(10)指針 p 指向數組元素 a2 ,若要其指向 a4 ,執行 p=p*2 即可 。5.以下關于數組的敘述中 ,5 個最確切的說法是 : (BEGHI)(1) 在聲明一個數組變量時必須指定大小 。(2) 必須用常量表達式來說明一個數組變量的大小 。(3) 在對數組進行初始化時大括號中的數據個數必須和數組的大小相同 。(4) 有變量定義 inta3=0,1,2,b3; , 可以用 b=a ,使數組 b 的每個元素和 a 的每個 元素相等 。(5) 在 C 語言
14、中 ,可以將字符串作為字符數組來處理 。(6) 定義了字符數組 charc11; 為了給它賦值 , 可以用 c=china; 。(7) 如果有 chars15=Iama0student;, 則 strlen(s) 的值為 6 。(8)C 語言中 , 二維數組中元素排列的順序是 : 按行存放 。(9) 在 C 語言中 ,不能對局部的數組變量進行初始化 。(10)在聲明時對數組進行進行初始化必須指定數組大小 。四 、程序運行結果題 ( 每題 4 分 ,共 20 分)1.(4 分 ) 下面程序的運行結果是 ( ) 。#includevoidmain(void)inti;chara=Time,b=To
15、m;for(i=0;a!=0&b!=0;i+)if(a=b)if(a=a&a=z)printf(%c,a-32);elseprintf(%c,a+32);elseprintf(*);2.(4 分 ) 下面程序段的運行結果是 ( ) 。i=1;s=3dos+=i+;if(s%7=0)continue;else+i;whlie(s=0&x=3000&x=6000&x=10000)y=54+0.3*x;printf(%6.1f,y);4.(4 分 ) 以下程序的運行結果是 ( ) 。voidmain(void)inta=1,k;for(k=0;k3;k+)printf(%4d,f1(a)intf1(
16、intx)staticintz=3,y=0;y+;z+;return(x+y+z);5.(4 分 )以下程序的功能是計算函數 F(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y) 的值 ,請選擇填空 。#include#includefloatfun1(float,float);voidmain(void)floatx,y,z,sum;scanf(%f%f%,&x,&y,&z);sum=fun1( )+fun1( ); printf(sum=%fn,sum);floatfun1(floata,floatb)floatnum;num=a/b;returnnum;五、程序填空題 ( 每
17、題 2 分,共 20 分)1.下面程序的功能是用公式:nXn/6=1/(1X1)+1/(2X2)+1/(3X3)+求n的近似值,直到最后一項的值小于10e-6 為止。#include#includevoidmain(void)longi=1; pi=0;while(i*i=10e+6)pi= ;i+;pi=sqrt(6.0*pi); printf(pi=%10.6fn,pi);2. 下面程序的功能是把以下給定的字符按其矩陣格式讀入數組str1 中,并輸出行列號之和是 3 的數組元素 。voidmain(void)charstr143=A,b,C,d,E,f,G,h,I,j,K,i ;intx,
18、y,z; for(x=0;x1)#includeintage(intn)intc;if(n=1)c=10;if(elsec= ;returnc;4.以下程序的功能是判斷輸入的年份是否是閏年 。voidmain(void)intyear,yes;scanf(%d,&year);if(year%400=0)yes=1;elseif( )yes=1;else ;if(yes)printf(%dis,year);elseprintf(%disnot,year);printf(aleapyear.n);5.以下程序實現 : 輸入三個整數 , 按從大到小的順序進行輸出 。voidmain(void)int
19、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);六、填空題(每題 1 分,共 20 分)1. 在 C 語言中 ,一個 float 型數據在內存中所占的字節數為 ( ) 個字節 ; 一個 double 型數據在內存中所占的字節數為 ( ) 個字節 。一、單項選擇題1 下面正確的字符常量是 :A)“c”B) C)WD)2下列字符串中不能作為 C+ 標識符使用的是 :A) WHILEB)userC)_1varD)9stars3 執行語句序列
20、的輸出結果是 _ 。inti=0;while(i25)i+=3;couti;A) 24B)25C)27D)284 .下列符號中可以用作 C+標識符的是_。A) radiusB)foobarC)elseD)3room5. 若 a 是 int 類型變量 ,則表達式 a=25/3%3 的值是 :A) 3B)2C)1D)06 以下敘述中不正確的是 :A) 在不同的函數中可以使用相同名字的變量B)函數中的形參是局部變量C)在一個函數內部定義的變量只在本函數范圍內有效D)在一個函數內部定義的變量在所有函數內部有效7 變量的引用 ,其含義是指該變量的 :A.值 B.類型 C.別名 D.地址8 已知定義 :
21、chars10;則下面不表示 s1 的地址的是 :A. s+1B . *(s+1)C. &s0+1D . &s19 . 通常拷貝構造函數的參數是 :A.對象 B.對象的成員 C.對象的引用 D.對象的指針10 .派生類對象的構造順序是先調用 :A派生類的構造函數B.基類的構造函數C內嵌對象的構造函數D.友兀類的構造函數二、 填空題1動態多態是指在 _ ( 1 ) _ 時才確定使用哪個 _( 2 ) _ 函數的方式 。2友員不是類的成員, 但必須在 _ ( 3 ) _ 予以聲明 , 它具有存取類的 _ (4) _成員的特權。3 . C+中 class 與 struct的主要區別是在缺省訪問權限時
22、,_ (5) _的成員為私有的,而_ ( 6) _的成員為公有的 。4 若有定義語句 : inta=3,b=2;5 表達式 : 26%3=_(8)_6類的成員包括 _(10)_ 和 者稱為方法 。其訪問權限有三種7對基類成員的初始化 , 必須在派生類構造函數的 (17) 中進行 。 8 C+ +源程序文件的擴展名是 (18) , 頭文件的擴展名是 (19) 。 9若 n 為整型 , 則表達式 n=(float)2/3的值是 (20) 。 三、寫出程序的運行結果1 寫出程序運行結果in clude#includeclassCRectprivate:, 則表達式,32/5=_(9)_(11)_ 兩
23、種 ,在面向對象的術語中 ,前者稱為屬性 、后 ,由符號 _(12)_ 、_(13)_ 和_(14)_ 指定,其中具有_(15)_ 權限的成員只有類中的成員函數才能訪問 中都可訪問 。、而具有 _(16)_ 權限的成員在任何函數charcolor10;intleft;inttop;intlength;intwidth;public:CRect();CRect(char*c,intt,intlef,intlen,intwid);voidSetColor(char*c);voidSetSize(intl=100,intw=100);voidMove(intt,intl);voidDraw();CR
24、ect:CRect()strcpy(color,Black);top=0;left=0;length=0;width=0;CRect:CRect(char*c,intt,intlef,intlen,intwid)strcpy(color,c);top=t;left=lef;length=len;width=wid;voidCRect:SetColor(char*c)strcpy(color,c);voidCRect:SetSize(intl,intw)length=l;width=w;voidCRect:Move(intt,intl)top=t;left=l;voidCRect:Draw()cout 矩形左上角坐標為 (left,top)endl;cout 矩形長和寬分別為 length,widthendl; cout 矩形的顏色是 colorendl;voidmain()CRectr;r.SetColor(Red);r.Move(10,20);r.SetSize(100,200);r.Draw();r.Move(50,50);r.SetColor(Blue);r.Draw();2寫出程序運行結果#includeclassAintx,y;public
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 武漢學院《微生物生理學》2023-2024學年第一學期期末試卷
- 漯河醫學高等專科學校《控制電機》2023-2024學年第二學期期末試卷
- 湛江市高中畢業班調研測試理綜化學試題
- 基礎輻射安全培訓
- 2025綜合布線系統安裝合同范本
- 2025標準自建房施工合同模板
- 2025國際建筑工程分包合同范本
- 2025版短期勞動合同范本下載
- 2025廣東房屋租賃合同范本
- 2025存量房買賣合同范本及司法解釋
- 2025年濟源職業技術學院單招職業技能測試題庫匯編
- 護工合同協議書樣本
- 航空發動機控制知到智慧樹章節測試課后答案2024年秋中國民航大學
- 廣東省2025年高三高考模擬地理試卷試題(含答案詳解)
- 濕法厭氧消化副產物資源化-深度研究
- 斯大林格勒保衛戰
- 電氣設備維護與安全使用
- 2024年中國海上綠色氫醇氨行業市場發展前景研究報告-智研咨詢發布
- DB33T 2216-2019 人民調解工作規范
- 2025年中國華電集團公司招聘筆試參考題庫含答案解析
- 2023園林養護施肥計劃表
評論
0/150
提交評論