c語言筆試題目100及答案_第1頁
c語言筆試題目100及答案_第2頁
c語言筆試題目100及答案_第3頁
c語言筆試題目100及答案_第4頁
c語言筆試題目100及答案_第5頁
已閱讀5頁,還剩3頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

c語言筆試題目100及答案

一、單項選擇題(每題2分,共10題)1.在C語言中,合法的字符常量是()A.'\084'B.'\x43'C.'ab'D."\0"答案:B2.若有定義:inta=5;則表達式a++的值是()A.5B.6C.4D.7答案:A3.以下不能正確定義二維數組的選項是()A.inta[2][2]={{1},{2}};B.inta[][2]={1,2,3,4};C.inta[2][2]={{1},2,3};D.inta[2][2]={{1,2},{3,4}};答案:C4.在C語言中,函數返回值的類型是由()決定的。A.return語句中的表達式類型B.調用該函數的主調函數類型C.定義函數時所指定的函數類型D.形參的數據類型答案:C5.若有定義:inta=1,b=2,c=3;則表達式(a<b?a:b)==c的值是()A.0B.1C.2D.3答案:A6.以下敘述中正確的是()A.在C語言中,函數內的靜態變量在函數調用結束后仍然存在。B.在C語言中,全局變量的隱含類別是自動存儲類別。C.在C語言中,函數的形參都屬于全局變量。D.在C語言中,未賦初值的自動變量的值為0。答案:A7.若有定義:chars[]="abc";則表達式s[3]的值是()A.'c'B.'\0'C.不確定D.0答案:B8.若有以下程序段:inta=1,b=2,c=3;c=(a=a+1,a+b);則執行后c的值是()A.3B.4C.5D.6答案:C9.在C語言中,以下正確的說法是()A.實參和與其對應的形參各占用獨立的存儲單元。B.實參和與其對應的形參共占用一個存儲單元。C.只有當實參和與其對應的形參同名時才共占用存儲單元。D.形參是虛擬的,不占用存儲單元。答案:A10.以下關于C語言標識符的描述中,正確的是()A.標識符可以由字母、數字和下劃線組成,且第一個字符必須是字母或下劃線。B.標識符可以由字母、數字和下劃線組成,且第一個字符必須是數字。C.標識符可以由字母、數字和下劃線組成,且第一個字符可以是字母、數字或下劃線。D.標識符可以由字母、數字和減號組成,且第一個字符必須是字母。答案:A二、多項選擇題(每題2分,共10題)1.以下哪些是C語言中的基本數據類型()A.整型B.浮點型C.字符型D.數組型E.結構體類型答案:ABC2.關于C語言中的函數,以下說法正確的是()A.函數可以有返回值也可以沒有返回值。B.函數的形參可以有默認值。C.函數可以嵌套定義。D.函數可以遞歸調用。E.函數的實參可以是表達式。答案:ADE3.在C語言中,以下哪些是合法的轉義字符()A.'\n'B.'\t'C.'\101'D.'\x41'E.'\0'答案:ABCDE4.若有定義:inta=1,b=2;以下哪些表達式的值為真()A.a<bB.a==bC.a!=bD.!(a>b)E.a++<b答案:ACDE5.以下關于C語言數組的說法正確的是()A.數組元素的下標從0開始。B.數組名代表數組的首地址。C.可以動態定義數組的大小。D.數組在內存中是連續存儲的。E.二維數組可以看作是特殊的一維數組。答案:ABDE6.以下哪些是C語言中的邏輯運算符()A.&&B.||C.!D.&E.|答案:ABC7.關于C語言中的指針,以下說法正確的是()A.指針變量可以存儲變量的地址。B.可以通過指針間接訪問變量的值。C.指針變量可以進行算術運算。D.指針變量可以指向數組元素。E.指針變量可以指向函數。答案:ABCDE8.在C語言中,以下哪些操作可以對文件進行()A.打開文件B.讀取文件C.寫入文件D.關閉文件E.刪除文件答案:ABCD9.若有定義:structstudent{intnum;charname[20];};以下哪些操作是合法的()A.structstudents;B.s.num=1001;C.scanf("%s",);D.structstudentp=&s;E.p->num=1002;答案:ABCDE10.以下哪些情況會導致C語言程序編譯錯誤()A.變量未定義就使用。B.函數調用時實參和形參類型不匹配。C.缺少必要的頭文件。D.使用了非法的運算符。E.語句末尾缺少分號。答案:ABCDE三、判斷題(每題2分,共10題)1.在C語言中,字符串常量是用雙引號括起來的字符序列。()答案:對2.若有定義:inta;則表達式a=3+5,a2的值為16。()答案:錯3.C語言中的數組名是一個常量指針。()答案:對4.函數的局部變量在函數調用結束后就被釋放。()答案:對5.在C語言中,兩個整數相除的結果一定是整數。()答案:對6.可以用typedef關鍵字給數據類型重新命名。()答案:對7.若有定義:intp;則p=100;是合法的操作。()答案:錯8.C語言中的宏定義是在編譯階段進行替換的。()答案:對9.結構體變量所占的內存空間是其所有成員所占內存空間之和。()答案:對10.在C語言中,文件操作結束后不需要關閉文件。()答案:錯四、簡答題(每題5分,共4題)1.簡述C語言中局部變量和全局變量的區別。答案:局部變量定義在函數內部,作用域局限于函數內部,函數調用結束后變量釋放。全局變量定義在函數外部,作用域從定義處開始到文件結束,可被多個函數訪問,生存周期貫穿整個程序運行期間。2.什么是C語言中的函數遞歸?舉一個簡單的函數遞歸的例子。答案:函數遞歸是指在函數的定義中使用函數自身的方法。例如求n的階乘,函數factorial(n),當n>0時,factorial(n)=nfactorial(n-1),當n=0或1時,factorial(n)=1。3.如何在C語言中動態分配內存?答案:使用malloc()、calloc()或realloc()函數。例如,使用malloc:intp=(int)malloc(sizeof(int)n);其中n是要分配的元素個數,返回值是指向分配內存的指針。4.簡述C語言中指針的作用。答案:指針可以存儲變量的地址,通過指針可以間接訪問變量的值,可用于操作數組、函數等,還能實現動態內存分配等功能,提高程序的靈活性和效率。五、討論題(每題5分,共4題)1.討論在C語言程序中,如何提高程序的可讀性?答案:采用有意義的變量名和函數名,添加適當的注釋,合理的代碼縮進,將復雜功能分解為多個函數。2.闡述C語言中宏定義和函數的區別。答案:宏定義是預編譯時進行文本替換,無類型檢查,運行效率可能高。函數有類型檢查,調用時需要

溫馨提示

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

評論

0/150

提交評論