C語言程序設(shè)計試題2參考模板_第1頁
C語言程序設(shè)計試題2參考模板_第2頁
C語言程序設(shè)計試題2參考模板_第3頁
C語言程序設(shè)計試題2參考模板_第4頁
C語言程序設(shè)計試題2參考模板_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、C語言程序設(shè)計試題2一、單項選擇題(每題2分,共40分)1.以下敘述中正確的是。 A.C語言系統(tǒng)以函數(shù)為單位編譯源程序 B.main函數(shù)必須放在程序開始 C.用戶定義的函數(shù)可以被一個或多個函數(shù)調(diào)用任意多次 D.在一個函數(shù)體內(nèi)可以定義另外一個函數(shù) 2.以下選項中,不能用作c語言標識符的是 A.print B.FOR C.&a D._003對于以下程序片段,描述正確的是 。int x = -1;do x = x * x;while(!x);A. 是死循環(huán) B.循環(huán)執(zhí)行兩次 C.循環(huán)執(zhí)行一次 D.有語法錯誤4.已知有聲明"int a=3,b=4,c=5;",以下表達式中值

2、為0的是 。 A.a&&b B.a<=b C.a|b&&c D.!(!c|1)5.已知有聲明"long x,y;"且x中整數(shù)的十進制表示有n位數(shù)字(4<n<10),若要求去掉整數(shù)x十進制表示中的最高位,用剩下的數(shù)字組成一個新的整數(shù)并保存到y(tǒng)中,則以下表達式中能正確實現(xiàn)這一功能的是。 A.y=x/(10*(n-1) B.y=x%(10*(n-1) C.y=x%(long)pow(10,n-1) D.y=x%(10(n-1)6.已知有聲明"int x,y;",若要求編寫一段程序?qū)崿F(xiàn)"當x大于等于0時

3、y取值1,否則Y取值-1",則以下程序段中錯誤的是。 A.if(x>=0) y=1;else y=-1; B.y=x>=0?1:-1; C.switch() D.switch(x-abs(x) case x>=0: y=1;break; case 0:y=1;break; default:y=-1; default:y=-1; 7.已知有聲明"int m=5,4,3,2,1,i=0;",下列對m數(shù)組元素的引用中,錯誤是。 A.m+i B.m5 C.m2*2 D.mm4 8. 已知有聲明"char s80;",若需要將鍵盤輸入的

4、一個不含空格的字符串保存到組中,則下列語句中正確的是。 A.scanf("%s",s); B.scanf("%s",s0); C.s=gets(); D.s=getchar(); 9.若函數(shù)調(diào)用時的實參為變量,則以下關(guān)于函數(shù)形參和實參的敘述中正確的是。1 / 6 A.實參和其對應的形參占用同一存儲單元 B.形參不占用存儲單元 C.同名的實參和形參占用同一存儲單元 D.形參和實參占用不同的存儲單元 10.已知有聲明"int i,a10,*p=a;",現(xiàn)需要將1-l0保存到a0-a9中,以下程序段中不能實現(xiàn)這一功能的是 。 A.for(i

5、=0;i<10;i+) ai=i+1; B.for(i=0;i<10;i+) pi=i+1; C.i=1;while(p<a+10) *p+=i+; D.i=1;while(p<a+10) *a+=i+;11以下關(guān)于預處理命令的敘述中錯誤的是。 A預處理命令由預處理程序解釋 B程序中的預處理命令是以#開始的 C若在程序的一行中出現(xiàn)多條預處理命令,這些命令都是有效的 D預處理命令既可以出現(xiàn)在函數(shù)定義的外部,也可以出現(xiàn)在函數(shù)體內(nèi)部12有如下程序段: char p180=”Ganzhou",p220=“Young",*p32=”O(jiān)lympic”; strc

6、py(p1,strcat(p2,p3); printf(“%sn”,p1); 執(zhí)行該程序段后的輸出是 AGanzhouYoungOlympic BYoungOlympic COlympic DGanzhou13已知有聲明”int x23=0,*p=x0;”,以下表達式中有語法錯誤的是 · Ax0=1 Bp0=1 C*p=1 D.x00=114程序中已有預處理命令”#include <math.h>“和聲明”char x=4,y;”,以下表達式中能通過編譯且無警告信息的是 Ay=sqrt(x)%2 By=“x” Cy=x+1 D.y=&x15對于以下程序片段,描述正

7、確的是 。int x = -1;do x = x * x;while(!x);A是死循環(huán)B.循環(huán)執(zhí)行兩次 C.循環(huán)執(zhí)行一次 D.有語法錯誤16已有聲明”int x,a=3,b=2;”,則執(zhí)行賦值語句”x=a>b+?a+:b+;”后,變量x、a、b的值分別為。 A3 4 3 B3 3 4 C3 3 3 D4 3 417下面選項中可用作變量名的是 ACase Ba-b C$cd D2ab18執(zhí)行以下程序后的結(jié)果是 。 #include<stdioh> void main() int x=3; do printf(“%dt”,x=x-3); while(!x); A輸出一個數(shù):0

8、B.輸出一個數(shù);3 C輸出2個數(shù):0和-3 D無限循環(huán),反復輸出數(shù)19以下關(guān)予c語言函數(shù)的敘述中,正確的是。 A在一個函數(shù)體中可以定義另一個函數(shù),也可以調(diào)用其他函數(shù) B在一個函數(shù)體中可以調(diào)用另一個函數(shù),但不能定義其他函數(shù) C在一個函數(shù)體中不可調(diào)用另一個囂數(shù),也不能定義其他函數(shù) D。在一個函數(shù)體中可以定義另一個函數(shù),但不能調(diào)用其他函數(shù)20以下不能對二維數(shù)組a進行正確初始化的語句是 。A.int a 23=0;B.int a 3=1,2,0;C.int a 23=1,2,3,4,5,6;D.int a 3=1,2,3,4,5,6;二、填空題(每空1分,共20分)1. 數(shù)組 int  a3

9、5;共定義了_【1】_個數(shù)組元素。 2. 在C語言中,正確的標識符是由_ 【2】 組成的,且由_【3】 _ _開頭的。3. 至少執(zhí)行一次循環(huán)體的循環(huán)語句是 【4】 。4. C語言數(shù)組的下標總是從 【5】 開始,不可以為負數(shù);構(gòu)成數(shù)組各個元素具有相同的 【6】 。5. 字符常量使用一對【7】 來界定單個字符,而字符串常量使用一對【8】 來界定若干個字符的序列。6. 設(shè)int a; float f;double i ;則表達式3+b+i*f值的數(shù)據(jù)類型是【9】 。 7. 條件表達式“x>=0?x:-x”的功能是【10】 8. 若a是int變量,則執(zhí)行表達式a=26/3%3后,a的值是【11】

10、 。9. 設(shè)a=3,b=4,c=5,(a*=a)|(b+=c)&&(c+);則a=【12】 ,b=【13】 ,c=【14】 。10. 若有以下定義 double a10;則a數(shù)組元素下標的上限是【15】 11. 若有說明:int a3 =1,2,3,4,5,6,7,8,9,10;則a數(shù)組的第一維大小是【16】 。12. 靜態(tài)局部變量應該用關(guān)鍵字【17】 來進行聲明。 13. 若char ch="jxust886"有以下語句,則編譯后分配給數(shù)組ch的內(nèi)存占用的字節(jié)數(shù)為【18】 ,字符串長度為【19】 。14. 算術(shù)表達式a/=b+3等價于另一書寫形式 【20】

11、 。三、閱讀程序題(每小題5分,共20分)1 以下程序運行時輸出到屏幕的結(jié)果為() 。 #include “stdio.h” #define MAX(A,B) A>B?2*A:2*B void main() int a=1,b=2,c=3,d=4,t; t=MAX(a+b,c+d); printf("%dn",t); 2. 以下程序的輸出結(jié)果是( )#include <stdio.h>int fun(int x, int y) return x > y ? x : y;main() int a=3,b=6,c=9; printf("%dn&

12、quot;, fun(fun(a+c,b), a-c);3. 以下程序的輸出結(jié)果是( )#include<stdio.h>void main() int a, b;for(a=1, b=1; a<=100; a+) if(b>=10) break; if (b%3= =1) b+=3; continue; printf(“%dn”, a);4下面程序若從鍵盤輸入:Ref6ugcBDT8e,按回車鍵, 最后的執(zhí)行結(jié)果是_ #include <stdio.h> void main ( ) int m=0,n=0; char c; while ( (c=getchar( ) )!='n' ) if (c>='a' && c<='z' ) m+ ; if

溫馨提示

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

最新文檔

評論

0/150

提交評論