《C程序設(shè)計語言》模擬試卷1.doc
《《C程序設(shè)計語言》模擬試卷1.doc》由會員分享,可在線閱讀,更多相關(guān)《《C程序設(shè)計語言》模擬試卷1.doc(9頁珍藏版)》請在裝配圖網(wǎng)上搜索。
一、單項選擇題 1. 以下并非C語言的特點的是___B______。 A. C語言簡潔緊湊 B. 能夠編寫出功能復(fù)雜的程序 C. C語言可以直接對硬件進(jìn)行操作 D. C語言移植性好 2. 在C程序中,main()的位置_____C_______。 A. 必須作為第一個函數(shù) B. 必須作為最后一個函數(shù) C. 可以任意 D. 必須放在它所調(diào)用的函數(shù)之后 3. 一個C程序是由_____B_______。 A. 一個主程序和若干個子程序構(gòu)成 B. 一個或多個函數(shù)構(gòu)成 C. 若干過程組成 D. 若干子程序組成 4. 以下字符串為標(biāo)識符的是____a________。 A. _MY B. 2_2222 C. short D. LINE 5 5. 下列符號可以作為變量名的是___c_________。 A. +a B. *p C. _DAY D. next day 6. 設(shè)c是字符變量,則以下表達(dá)式正確的是_______b_____。 A. c=666 B. c=c C. c="c" D. c="abcd" 7. 以下說法正確的是____d________。 A. 輸入項可以為一個實型常量,如scanf("%f", 3.5) B. 只有格式控制沒有輸入項也能進(jìn)行正確輸入,如scanf("%d") C. 當(dāng)輸入一個實型數(shù)據(jù)時,格式控制部分應(yīng)規(guī)定小數(shù)點后的位數(shù),如scanf(%4.2f", &f) D. 當(dāng)輸入數(shù)據(jù)時,必須指定變量的地址,如scanf("%f", &f) 8. 若a, b, c均定義為整型,要給它們輸入數(shù)據(jù),正確的輸入語句是_____d_______。 A. read(a, b, c); B. scanf("%d%d%d", a, b, c); C. scanf("%D%D%D", a, b, c); D. scanf(%d%d%d", &a, &b, &c); 9. 若a是float變量,b是unsigned型變量,以下輸入語句中合法的是______C______。 A. scanf("%6.2f%d", &a, &b); B. scanf("%f%n", &a, &b); C. scanf("%f%3o", &a, &b); D. scanf("%f%f", &a, &b); 10. if后面的表達(dá)式之值_______A____。 A. 只能是0或1 B. 只能是正整數(shù)或負(fù)整數(shù) C. 只能是整數(shù)或字符型數(shù)據(jù) D. 可以是任何類型的數(shù)據(jù) 11. 為了避免嵌套的if-else語句的二義性,C語言規(guī)定else總是與_____c_______組成配對關(guān)系。 A. 縮排位置相同的if B. 在其之前未配對的if C. 在其直接最近的未配對的if D. 同一行上的if 12. 選擇出合法的if語句(設(shè)int x, a, b, c;)_____A_____。 A. if(a = b0 x++; B. if (a =< b) x++; C. if(a <> b) x++; D. if (a=>b) x++; 13. 語句while(!e); 中的條件!e等價于_____a_______。 A. e == 0 B. e!=1 C. e!=0 D. ~e 14. C語言中while和do-while循環(huán)的主要區(qū)別是_______a_____。 A. do-while的循環(huán)體至少無條件執(zhí)行一次 B. while的循環(huán)控制條件比do-while的循環(huán)控制條件嚴(yán)格 C. do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi) D. do-while的循環(huán)體不能是復(fù)合語句 15. 以下程序段_____c_______。 int x = -1; do { x = x * x} while (x != 0); A. 是死循環(huán) B. 循環(huán)執(zhí)行二次 C. 循環(huán)執(zhí)行一次 D. 有語法錯誤 16. 以下關(guān)于數(shù)組的描述正確的是______c______。 A. 數(shù)組的大小是固定的,但可以有不同類型的數(shù)組元素 B. 數(shù)組的大小是可變的,但所有數(shù)組元素的類型必須相同 C. 數(shù)組的大小是固定的,所有數(shù)組元素的類型必須相同 D. 數(shù)組的大小是可變的,可以有不同類型的數(shù)組元素 17. 以下關(guān)于字符數(shù)組的描述中錯誤的是_____C_______ A. 字符數(shù)組可以存放字符串 B. 字符數(shù)組中的字符串可以整體輸入和輸出 C. 可以在賦值語句中通過賦值運算符"="對字符數(shù)組整體賦值 D. 不可以用關(guān)系運算符對字符數(shù)組中的字符串進(jìn)行比較 18. 以下合法的數(shù)組定義是____d______。 A. int a[] = "string"; B. int a[5] = {0, 1, 2, 3, 4, 5}; C. char a = "string"; D. char a[] = {0, 1, 2, 3, 4, 5}; 19. 在C語言程序中,下列敘述正確的是_____b_______。 A. 函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套 B. 函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套 C. 函數(shù)的定義和調(diào)用都可以嵌套 D. 函數(shù)的定義和調(diào)用均不可以嵌套 20. 在C語言程序中,簡單變量做實參時,它和對應(yīng)形參之間的數(shù)據(jù)傳遞方式是______b______。 A. 地址傳遞 B. 單向值傳遞 C. 由用戶指定參數(shù)傳遞方式 D. 由實參傳給形參,再由形參傳遞給實參 21. 在一個源文件中定義的外部變量的作用域為______D_____。 A. 本文件的全部范圍 B. 本程序的全部范圍 C. 本函數(shù)的全部范圍 D. 從定義該變量的位置開始至文件結(jié)束 22. 已知變量a已定義為int型變量,以下定義并初始化指針變量p的語句中正確的是____D_______。 A. int *p = a; B. int *p = *a; C. int p = &a; D. int *p = &a; 23. C語言中規(guī)定函數(shù)的返回值的類型是由______D______。 A. return語句中的表達(dá)式類型所決定 B. 調(diào)用該函數(shù)是的主調(diào)用函數(shù)所決定 C. 調(diào)用該函數(shù)時系統(tǒng)臨時決定 D. 在定義該函數(shù)時所指定的函數(shù)類型所決定 24. 在C語言程序中,下列敘述正確的是_____a_B______。 A. 實參可以是常量、變量或表達(dá)式 B. 實參可以是任意類型 C. 形參可以是常量、實參或表達(dá)式 D. 形參與隊友的實參類型要求可以不一致 25. 在定義一個結(jié)構(gòu)體變量時系統(tǒng)分配給它的存儲空間是_____d_______。 A. 該結(jié)構(gòu)體變量中第一個成員所需存儲空間 B. 該結(jié)構(gòu)體變量中最后一個成員所需存儲空間 C. 該結(jié)構(gòu)體變量中占用最大存儲空間的成員所需存儲空間 D. 該結(jié)構(gòu)體變量中所有成員所需存儲空間的總和 26. 以下關(guān)于typedef的敘述不正確的是______D______。 A. 用typedef可以定義各種類型名,但不能用來定義變量 B. 用typedef可以增加新類型 C. 用typedef只是將已存在的類型用一個新的名字來代表 D. 使用typedef便于程序的調(diào)用 27. 在聲明一個結(jié)構(gòu)體類型時系統(tǒng)分配給它的存儲空間是_____D___。 A. 該結(jié)構(gòu)體變量中第一個成員所需存儲空間 B. 該結(jié)構(gòu)體變量中最后一個成員所需存儲空間 C. 該結(jié)構(gòu)體變量中所有成員所需存儲空間的總和 D. 結(jié)構(gòu)體類型本身并不占用存儲空間,即系統(tǒng)并不給結(jié)構(gòu)體類型分配存儲空間 28. fopen()函數(shù)的打開文件模式"r"和"w"的差別是_____B_______。 A. "r"可向文件寫,"w"不可向文件寫 B. "r"不可向文件寫,"w"可向文件寫 C. "r"不可由文件讀, "w"可由文件讀 D. 文件不存在時,"r"建立新文件,"w"出錯 29. 以下正確的定義語句是______d______。 A. int A[a]; B. int A[3, 4]; C. int a[][3]; D. int a[10]; 30. 在定義int a[3][6];后,第10個元素是_____。 A. a[2][4] B. a[1][3] C. a[3][1] D. a[4][2] 二、填空題 1. 任何C語句必須以____分號________結(jié)束。 2. C編譯程序的功能是_____將C源程序編譯成目標(biāo)代碼(這樣就可以糊弄老師了!下面是編譯的全部過程!如有錯誤,還請雅正!呵呵! 編譯程序讀取源程序(字符流),對之進(jìn)行詞法和語法的分析,將高級語言指令轉(zhuǎn)換為功能等效的匯編代碼,再由匯編程序轉(zhuǎn)換為機(jī)器語言,并且按照操作系統(tǒng)對可執(zhí)行文件格式的要求鏈接生成可執(zhí)行程序。)________。 3. 表達(dá)式語句與表達(dá)式的不同是____語句必須以分號結(jié)尾,而表達(dá)式結(jié)尾沒有分號;語句可以出現(xiàn)函數(shù)體中數(shù)據(jù)定義或聲明語句之后任何位置,而表達(dá)式只能出現(xiàn)在語句中規(guī)定的位置或表達(dá)式中(嵌套出現(xiàn))。________。 4. 在C語言中可以利用___強制類型轉(zhuǎn)換____將一個表達(dá)式的值轉(zhuǎn)換成指定的類型 5. 表達(dá)式3 * 4 + 5的值是_17__________。 6. 表達(dá)式3 / 4 + 5的值是_____5______。 7. 判斷整型變量n是否是偶數(shù)的邏輯表達(dá)式是_____n%2==0_______。 8. 程序的三種基本控制結(jié)構(gòu)分別是_____順序結(jié)構(gòu)_______、_______循環(huán)結(jié)構(gòu)_____和_____選擇結(jié)構(gòu)_______。 9. _____break;_______語句強行結(jié)束循環(huán),轉(zhuǎn)向循環(huán)語句下面的語句。_____continue;_______語句結(jié)束本次循環(huán)體的執(zhí)行。 10. 常用的一維數(shù)組排序方法有冒泡排序、直接插入排序和_____希爾排序_____。 11. C語言通過函數(shù)實現(xiàn)模塊化程序設(shè)計。函數(shù)分為_____主函數(shù)_______和______子函數(shù)______。 12. 在函數(shù)中可以利用__return___語句返回函數(shù)計算結(jié)果 13. 訪問結(jié)構(gòu)體變量s的成員x,應(yīng)使用表達(dá)式__s.x___,使用結(jié)構(gòu)體指針變量ps訪問成員y,應(yīng)使用表達(dá)式___ps->y_或(*p).sy____。 14. C語言使用關(guān)鍵字__ ____定義結(jié)構(gòu)體類型。 15. 計算字符串長度的庫函數(shù)是__length()____。 三、程序分析題 1. 寫出以下程序的運行結(jié)果(假定程序已包含正確的頭文件)。 main() { int n = 10; n++; n += 5; printf("%d\n", n); } 16 2. 寫出以下程序的運行結(jié)果(假定程序已包含正確的頭文件)。 main() { int a = 3, b = 5; if (a > b) printf("a大于b\n") else printf("a不大于b\n"); } a不大于b\n 3. 寫出以下程序的運行結(jié)果(假定程序已包含正確的頭文件)。 main() { int n = 1, sum = 0; while (n < 5) { sum = sum + n; n++; } printf("%d\n", sum); } 10 4. 寫出以下程序的運行結(jié)果(假定程序已包含正確的頭文件)。 main() { int a[] = {0, 1, 2, 3, 4, 5}; printf("%d\n", a[4] + a[1]); } 5. 寫出以下程序的運行結(jié)果(假定程序已包含正確的頭文件)。 main() { int a = 3; *pa = &a; *pa = 10; printf("%d\n", a); } 10 6. 寫出以下程序的運行結(jié)果(假定程序已包含正確的頭文件)。 int fun(int n) { int m; m = 2 * n; return m; } main() { int k = 50, s; s = fun(k); printf("%d\n", s); } 100 四、程序設(shè)計題 1. 編寫一個交換兩個int型數(shù)據(jù)的函數(shù)swap,在main函數(shù)中從標(biāo)準(zhǔn)輸入讀取兩個整數(shù)到兩個整型變量中,輸出調(diào)用swap函數(shù)之前和之后的結(jié)果。 #include- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該PPT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- C程序設(shè)計語言 程序設(shè)計語言 模擬 試卷
鏈接地址:http://m.appdesigncorp.com/p-9552656.html