事業單位招錄計算機專業知識(C語言)模擬試卷3(題后含答案及解析)_第1頁
事業單位招錄計算機專業知識(C語言)模擬試卷3(題后含答案及解析)_第2頁
事業單位招錄計算機專業知識(C語言)模擬試卷3(題后含答案及解析)_第3頁
事業單位招錄計算機專業知識(C語言)模擬試卷3(題后含答案及解析)_第4頁
事業單位招錄計算機專業知識(C語言)模擬試卷3(題后含答案及解析)_第5頁
已閱讀5頁,還剩5頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

事業單位招錄計算機專業知識(C語言)模擬試卷3(題后含答案及解析)題型有:1.單項選擇題3.判斷題4.簡答題單項選擇題1.C語言中函數返回值的類型是由()決定的。A.函數定義時指定的類型B.形參的數據類型C.調用該函數時的實參的數據類型D.return語句中的表達式類型正確答案:A解析:C語言函數返回值是由定義函數時所定義的函數類型決定的。也就是說,函數是什么類型,返回值就是什么類型。return語句的表達式能轉換成函數定義類型,則返回函數定義類型,否則將出錯,故A為正確選項。知識模塊:C語言2.在C語言中,函數的數據類型是指()。A.函數返回值的數據類型B.調用該函數時的實參的數據類型C.任意指定的數據類型D.函數形參的數據類型正確答案:A解析:在C語言中,函數的數據類型是由定義函數時所定義的函數類型決定的。也就是說。函數是什么類型,返回值就是什么類型,和函數形參的數據類型及調用的實參數據類型無關。故正確選項為A。知識模塊:C語言3.在C語言程序中,語句“char*func(intx,inty);”表示()。A.對函數func的定義B.對函數func的調用C.對函數func的返回值類型說明D.對函數func的原型說明正確答案:D解析:原型說明的時候,要說明參數類型,返回類型。知識模塊:C語言4.在C語言程序中,若有一下函數調用語句:fun(a+b,(x,y),fun(n+k,d,(a,b));在此函數調用語句中實際參數個數是()。A.3B.4C.5D.6正確答案:A解析:fun(a+b,(x,y),fun(n+k,d,(a,b)))中fun(n+k,d,(a,b))是子函數,只需要傳如3個實際參數即可。知識模塊:C語言5.C語言規定,簡單變量做實參時,它和對應形參之間的數據傳遞方式為()。A.由系統選擇B.由用戶指定傳遞方式C.地址傳遞D.單向值傳遞正確答案:D解析:在C語言中,簡單變量做實參時,相應的形參變量也是簡單變量,它們之間的數據傳遞方式是單向值傳遞,即數據只能由實參傳到形參,形參值的改變不影響實參值的變化。知識模塊:C語言6.C語言中,說明int*f();標識符f代表的是()。A.一個用于指向整數類型數據的指針變量B.一個用于指向一維數組的行指針C.一個用于指向函數的指針變量D.一個回值為指針型的函數名正確答案:D解析:該函數返回一個int型的指針。這個函數就是所謂的返回指針的函數(指針函數)。知識模塊:C語言7.設有函數print-value()定義如下,則執行程序printf(“d%\n”,++*x)”inta=25”;print-value(&a);后a的值是voidprint-value(int*x)。A.24B.25C.26D.27正確答案:D解析:先運算累加后執行。+*x是x指向內存的值先自增1,再取該值。知識模塊:C語言8.單擊“按鈕”時,以下程序運行后的輸出結果是()。privateSubprocl(xasInteger,yasInteger,zasInteger)x=3*zy=2*Zz=x+yendsubprivatesubCommandl_ClicK()DimxasInteger,yasInteger,zasIntegerx=1;y=2;z=3Callproel(x,x,z)Printx;x;zCallprocl(x,y,y)Printx;y;yendSubA.661261010B.95051010C.961291015D.910105410正確答案:A解析:從整體上看,可得主調過程將兩次調用過程procl后,實參的值將隨形參變化而變化。第一次調用被調過程procl,主調過程把實參x,x,z的地址分別傳給形參x,y,z,此時形參x,y,z值分別為1,1,3,執行語句x=3*z后,形參x值變為9,此時相對應的實參x也變為9,執行語句y=2*z后,形參y值變為6,則相對應的實參x值變為6。執行z=x+y后,形參z值應為12,當然這次調用后。程序代碼輸出的數值為6,6,12。第二次調用被調過程procl,主調過程把實參x,y,y的地址分別傳給形參x,y,z。我們應注意一下,此時實參x的值為6而不是1,所以此時形參x,y,z值分別為6,2,2,執行語句x=3*z后,形參x值為6,相對實參x值也相應的變為6。執行語句y=2*z后,形參y值變為4,相應的實參y值也變為4,執行2=x+y后,形參z值變為10,相應的實參y的值變為10,而形參y和z的地址相同,最后它們值都應為10,所以此次調用后,程序代碼將輸出的數值為6,10和10。知識模塊:C語言9.在函數調用時,以下說法正確的是()。A.函數間的數據傳遞不可以使用全局變量B.實際參數和形式參數可以同名C.函數調用后必須帶回返回值D.主調函數和被調函數總是在同一個文件里正確答案:B解析:形式參數就是在定義函數或過程的時候命名的參數,也就是一個記號。實際參數是在執行時,調用函數或過程時。傳遞給函數或過程的參數,也是實際值。形式參數和時間參數可以同名也可以不同名,故B項正確。C項中函數調用后不是必須帶回返回值,這個和函數定義的類型有關,void類型的就不需要返回值。A項中函數間的數據傳遞可以使用全局變量,也可以使用局部變量。D項中主調函數和被調函數可以在同一個文件里。知識模塊:C語言10.C語言中對函數的描述正確的是()。A.可以嵌套定義B.嵌套調用,遞歸調用均可C.不可以嵌套調用D.可以嵌套調用,不可以遞歸調用正確答案:B解析:在C語言程序中,所有的函數都是平行的,即在定義函數時是互相獨立的,一個函數并不從屬于另一個函數,即函數不能嵌套定義,但可以互相調用,不管是嵌套調用和遞歸調用均可以。故B項正確。知識模塊:C語言11.以下敘述中正確的是()。A.構成C語言程序的基本單位是函數B.所有被調用的函數一定要在調用之前進行定義C.main()函數必須放在其他函數之前D.可以在一個函數中定義另一個函數正確答案:A解析:一個C源程序是由一個main函數和若干個其他函數組成的。函數是C語言程序的基本單位,故A正確。B項中main函數就不需要調用前先定義,故錯誤。main函數不需要放在其他函數之前,只需要調用前先定義即可,故C項錯誤。在C語言程序中,所有的函數都是平行的,即在定義函數時是互相獨立的,一個函數并不從屬于另一個函數,即函數不能嵌套定義,但可以互相調用,故D項錯誤。知識模塊:C語言12.在C語言程序中,有關函數的定義正確的是()。A.函數的定義不可以嵌套,但函數的調用可以嵌套B.函數的定義和函數的調用均不可以嵌套C.函數的定義和函數的均可以嵌套D.函數的定義可以嵌套,但函數的調用不可以嵌套正確答案:A解析:在C語言程序中,所有的函數都是平行的,即在定義函數時是互相獨立的,一個函數并不從屬于另一個函數,即函數不能嵌套定義,但可以互相調用。但是不能調用main函數。故A項正確。知識模塊:C語言13.在C語言中,函數原型不能標識()。A.函數的返回類型B.函數的功能C.函數的參數類型D.函數參數的個數正確答案:B解析:聲明函數原型時能標識函數的參數類型,參數個數和返回類型等,但不能標識函數的功能。知識模塊:C語言14.用數組名作為函數調用時的實參時,傳遞給形參的是()。A.數組首地址B.數組第一個元素的值C.數組全部元素的值D.數組元素的個數正確答案:A解析:在C語言中數組的變量名就是指向其首元地址的指針名。數組的其他元素可以通過首元偏移得到。故用數組名作為函數調用時的實參時,傳遞給形參的是數組的首地址。知識模塊:C語言15.以下對C語言函數的有關描述中,正確的是()。A.C語言函數既可以嵌套定義又可遞歸調用B.C語言函數必須有返回值,否則不能使用函數C.在C語言程序中有調用關系的所有函數必須放在同一個源程序文件中D.在C語言程序中,調用函數時,如函數參數是簡單變量,則只能把實參的值傳遞給形參,形參的值不能傳送給實參正確答案:D解析:C語言函數不可以嵌套定義,可以遞歸調用,故A項錯誤;C語言函數不一定需要返回值,比如void類型的就不需要返回值,故B項錯誤;在C語言程序中有調用關系的所有函數可以不用放在同一個源程序文件中,故C錯誤;在C語言程序中,調用函數時,如函數參數是簡單變量,則只能把實參的值傳遞給形參,形參的值不能傳送給實參,故D正確。知識模塊:C語言16.下述對C語言中字符數組的描述錯誤的是()。A.字符數組可以存放字符串B.字符數組中的字符串可以整體輸入和輸出C.可在對字符數組定義時通過賦值運算符“=”字符數組整體初始化D.可在賦值語句中通過賦值運算符“=”對字符數組整體賦值正確答案:D解析:字符數組可以存放字符串,可以對字符數組中的字符串可以整體輸入和輸出,可在對字符數組定義時通過賦值運算符“=”對字符數組整體初始化,故ABC項正確。但不可以賦值語句中通過賦值運算符“=”對字符數組整體賦值,比如說chara[]=”abc”雖然合法,但卻不能算是賦值表達式,而是字符數組的初始化,故D項錯誤。知識模塊:C語言17.下列說法中錯誤的是()。A.構成數組的所有元素的數據類型必須是相同的B.用指針法引用數組元素允許數組元素的下標越界C.定義數組時的長度可以是整型常量表達式D.一維數組元素的下標依次是0,1,2,3……正確答案:D解析:數組是相同元素的集合,所以構成數組的所有元素的數據類型必須是相同的,A正確。逐個引用數組元素不容許數組元素下標越界,但用指針法引用數組元素可以讓數組元素下標越界,B項正確,一維數組元素的下標依次為:0,1,2,3……故D項錯誤。定義數組時的長度可以是整型常量表達式,C項正確。知識模塊:C語言18.已知charx[]=”hello”,y[]={‘h’,’e’,’a’,’b’,’e’};,則關于兩個數組長度的正確描述是()。A.x大于yB.相同C.x小于yD.以上答案都不對正確答案:A解析:x表示字符串,y表示字符數組。字符串以’\0’結尾,也就是charx[]=”hello”這個字符串在定義時會自動加上了’\0’變成{‘h’,’e’,’l’’l’,’o’,’\O’},因此x的長度是6,y長度是5,因此x的長度大于y的長度。A為正確選項。知識模塊:C語言19.設有數組定義:chararray[]=”abcd”;則數組array所占的空間為()。A.6個字節B.5個字節C.8個字節D.7個字節正確答案:B解析:airay表示字符串,字符串以’\0’結尾,也就是chalarray[]=”abcd”這個字符串在定義時會自動加上了’\0’變成{‘a’,’b’,’c’,’d’,’\0’},因此array的長度是5,所以B是正確選項。知識模塊:C語言20.以下能對一維數組a進行初始化的語句是()。A.inta[3]={0,1,2}B.inta(5)={}C.inta[5]=(0,1,2,3,4,)D.inta{5}={10*1}正確答案:A解析:一維數組的定義為:類型說明符數組名[常量表達式],B和D項錯誤。在對數組賦值時將值包含在{}中,故C項錯誤,A項正確。知識模塊:C語言21.給出以下定義:charx[]=”abcdefg”;chary[]=[‘a’,’b’,’c’,’d’,’e’,’f’,’g’};則正確的敘述為()A.數組x和數組y等價B.數組x的長度大于數組y的長度C.數組x和數組y的長度相同D.數組x的長度小于數組y的長度正確答案:B解析:x表示字符串,y表示字符數組。字符串以’\0’結尾,也就是charx[]=”abcdefg“;這個字符串在定義時會自動加上了’\O’變成{‘a’,’b’,’c’,’e’,’f’,’g’,’\0’},故和字符數組y是不一樣的,因此x的長度是8,y長度是7,因此x的長度大于y的長度。所以ACD錯誤,B正確。知識模塊:C語言22.在C語言中,下列數組聲明語句中,正確的是()。A.inta[]={1,2,3,5};B.inta[4]={1,2,3,4,5};C.chara[4]={A,B,C,D};D.chara[4]=”ABCD”;正確答案:A解析:A項,inta[]={1,2,3,5};由于沒有指定數組的長度,那么數組的長度即為賦值元素的個數,正確;B項,賦值元素有5個,數組長度為4,賦值元素個數大于數組長度,錯誤;C項,數組元素是字符,應該用單引號標注每個字母,錯誤;D項,系統會自動添加一個’\0’作為字符串結束符,因此數組長度應該為5,錯誤。答案為選項A。知識模塊:C語言23.下面不正確的字符串常量是()。A.’PROGRAM’B.0C.”“D.12’12正確答案:A解析:在C語言中”表示單個字符,”“表示字符串。所以’PROGRAM’表示錯誤,不是正確的字符串常量。知識模塊:C語言24.若有以下數組說明,則i=10;a[a[i]]元素數值是()。inta[12]={1,4,7,10,2,5,8,11,3,6,9,12};A.8B.10C.6D.57正確答案:C解析:由于i=10,故a[10]=9,則a[a[10]]即a[9]=6。知識模塊:C語言25.若有以下語句,則正確的描述是()。staticcharX[]=”12345”;staticchary[]=[‘1’,’2’,’3’,’4’,’5’,’\0’};A.x數組長度大于y數組長度B.x數組和y數組不相同C.x數組長度小于y數組長度D.x數組等價于y數組正確答案:D解析:x表示字符串,y表示字符數組。字符串以’\0’結尾,也就是staticcharx[]=”12345”;這個字符串在定義時會自動加上了’\0’,長度是6,故和字符數組y是一樣的,因此x和y是一樣的,且長度都是6,所以ABC錯誤,D正確。知識模塊:C語言26.在C語言中對一維整型數組的正確定義為()。A.#defineN10inta[N];B.intn=10,a[n];C.intn;a[n];D.inta(10);正確答案:A解析:一維整數數組的定義為int數組名[常量表達式]。(1)數組名的命名方法與變量名相同,遵循標識符命名規則;(2)數組是用方括號括起來的常量表達式,不能用圓括號,故D項錯誤:(3)常量表達式表示數組元素的個數,即數組的長度,數組的下標從0開始,下標的最大值為:常量表達式一1:(4)常量表達式中可以包括常量和符號常量,不能包括變量。故B項C項錯誤。A項中N是預定義符,是常量,故正確。知識模塊:C語言27.在C語言中,數組M[6][6],一個數組元素占兩個字節,數組開始的地址為1000,M[2][1]的地址是()。A.1026B.1024C.1014D.1012正確答案:A解析:數組M[6][6]的第一個元素為M[0][0],因此在M[2][1]前面有2×6+1=13,一個數組元素占兩個字節,起始地址為1000,則13個元素占26個字節,M[2][1]的地址為1000+26=1026。知識模塊:C語言判斷題28.C語言中當說明一個結構體變量時系統分配給它的內存是結構中第一個成員所需的內存量。()A.正確B.錯誤正確答案:B解析:當說明一個結構變量的時候,系統分配給它的內存是各成員所需的內存之和。知識模塊:C語言29.在C程序中,如果要把常量327存入變量a中,a不能定義char類型。()A.正確B.錯誤正確答案:A解析:類型不同,而且無法進行隱式轉換和顯示轉換。知識模塊:C語言30.C允許對數組的大小作動態定義,即可用變量定義數組的大小。()A.正確B.錯誤正確答案:B解析:數組的大小可以用不加參數的方式動態的數組的大小。知識模塊:C語言31.taticcharc[]={‘a’,’‘,’b’,’o’,’0’,’k’,’\0’};與staticcharc[]={‘a’,’‘,’b’,’o’,’o’,’k’};等價。A.正確B.錯誤正確答案:B涉及知識點:C語言簡答題32.用遞歸實現將輸入小于32768的整數按逆序換行輸出。如輸入12345,則輸出54321。請補充下列C語言程序中的空格部分的代碼。正確答案:#include<stdio.h>main(){intn:printf(“inputn:”);Scanf(“%d”,&n);r(n);printf(“\n”);}r(intm){printf(“%d”,

溫馨提示

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

評論

0/150

提交評論