C語言考試試題

2023-01-15 05:00:04 字數 3890 閱讀 3798

2011-2012學年第二學期

《c程式語言》課程考試卷(a卷)

專業:資訊管理與資訊系統層次:本科年級:2011

(試卷總分:100分,考試時間:120分鐘,試題內容7頁,空白紙0頁)

客觀題部分

一、選擇題(每題1分,共20題,共20分)

1、以下選項中屬於c語言的資料型別是( d )。

a、複數型 b、邏輯型 c、集合型 d、雙精度型

2、乙個c程式的執行是從( a )。

a、main()函式開始,直到main()函式結束。

b、第乙個函式開始,直到最後乙個函式結束。

c、第乙個語句開始,直到最後乙個語句結束。

d、main()函式開始,直到最後乙個函式結束。

3、若有 char c[5]=;則執行語句printf("%s",c);結果是( c )。

a、cd\0e b、'c''d' c、cd d、cd e

4、以下有巨集替換不正確的敘述( d )。

a、巨集替換不占用執行時間。 b、巨集名無型別。

c、巨集替換只是字串替換。 d、巨集名必須用大寫字母表示。

5、在定義int a[3][4][2];後,第10個元素是( b )。

a、a[2][1][2] b、a[1][0][1] c、a[2][0][1] d、a[2][2][1]

6、合法的c語言字元常量是( a )。

a、『a』 b、「a」 c、65d、a

8、在下面的運算子中,優先等級最高的運算子是( c )。

a、9、c語言規定,函式返回值的型別是由( d )。

a、return語句中的表示式型別所決定。

b、呼叫該函式時的主調函式型別所決定。

c、呼叫該函式時系統臨時決定。

d、在定義該函式時所指定的函式型別所決定。

10、在c語言中,邏輯值"真"的表示是用( c )。

a、true b、整型值0 c、非0整型值 d、t

11、逗號表示式(a=3*5,a*4),a+15的值為( c )。

a、15 b、60 c、30 d、不確定

12、下列識別符號組中,合法的使用者識別符號為( b )。

a、pad與p#d b、scanf 與a10

c、void與max d、a*與temp

13、設變數f是實型,i是雙精度型,則表示式10+'a'+i*f值的資料型別為( c )。

a、int b、float c、double d、char

14、設a=2,b=3,c=4,則表示式 a+b>c&&b= =c&&a||b+c&&b+c的值為( d )。

a、5b、8c、0d、1

15、若在scanf函式語句中沒有非格式字元作輸入資料的間隔,則不可用( b )作為輸入資料的間隔。

a、空格b、逗號 c、tabd、回車

16、設ch是字元變數,其值為a,且有下面的表示式ch =!(ch>='a'&& ch<='z') ? ch :(ch+32)則表示式的值是( b )。

a、ab、ac、2d、z

17、以下正確的敘述是( d )。

a、在c程式中,每行只能寫一條語句。

b、若a是實型變數,c程式中允許賦值a=10,因此實型變數中允許存放整型數。

c、在c程式中,無論是整數還是實數,都能被準確無誤地表示。

d、在c程式中,%是只能用於整數運算的運算子。

18、已定義x為float型變數

x=213.82631;

printf("%-4.2f\n",x);

則以上語句( b )。

a、輸出格式描述符的域寬不夠,不能輸出 b、輸出為213.83

c、輸出為213.82d、輸出為-213.82

19、下面有關for迴圈的正確描述是( d )。

a、for迴圈只能用於迴圈次數已經確定的情況。

b、for迴圈是先執行迴圈體語句,後判定表示式。

c、在for迴圈中,不能用break語句跳出迴圈體。

d、for迴圈體語句中,可以包含多條語句,但要用花括號括起來。

20、有如下語句int a=10,b=20,*p1,*p2;p1=&a;p2=&b;若要實現p1,p2均指向b,可選用的賦值語句是( b )。

a) *p1=*p2; b) p1=p2; c) p1=*p2; d) *p1=p2;

主觀題部分

一、 填空題(每空1.5分,共10題,共15分)

1、結構化程式設計的三種基本結構分別為:順序結構,(選擇結構 )和迴圈結構。

2、設有,執行語句後的輸出結果為( 41 )。

3、設有int a = 27; ,執行語句 a %= 4;後a 的值為( 3 )。

4、設有#define m(x) x * x,則m(1+2)的值為( 5 )。

5、dowhile(表示式)迴圈至少執行( 1 )次。

6、判斷char型變數c1是否為字母的正確表示式為(ch>='a'&& ch<='z' || ch>='a'&& ch<='z')。

7、設int a[3][4]=,,};則表示式a[1][2]+a[2][3]的值是( 15 )。

8、c語言標準函式庫中,用於字串比較的函式是(strcmp )。

9、已知int a=3,b=7,c,*p=&a;,則執行語句*p=5,c=a+b;後,c的值為( 12 )。

10、設有

typedef struct abc

new;

則new表示的含義是(乙個新的結構體資料型別 )。

二、程式改錯題(每題2分,共5題,共10分)

以下各段程式有乙個或兩個錯誤,改正錯誤。只要改正程式中的錯誤,不要改變程式的結構。把正確的**寫在答題卡上。

1、下面**的功能是:輸入乙個整數,如果是偶數,則輸出。

2、下面**的功能是:輸出1到10,總共10個整數。

3、下面**的功能是:定義乙個字元陣列,並將乙個字串賦值給它。

4、下面**的功能是:通過指標給陣列的各個元素賦值。

5、下面**的功能是:定義了乙個函式,用來輸出乙個變數的值。

三、程式填空題(每題5分,共2題,共10分)

1、下面的**功能是:輸出fibonacci序列的第n項。在括號裡填入適當的**,實現要求的功能。

2、下面的**功能是:輸出所有的水仙花數。在括號裡填入適當的**,實現要求的功能。

四、程式設計題(共3題,共45分)(在z盤新建三個資料夾,分別命名為1,2,3,把下面三題分別儲存在對應得三個資料夾中)

1、設計程式,實現以下功能(10分)。

定義乙個個人資訊的結構體,包含:學號,姓名,出生日期(年,月,日),出生地等4個成員。在設計的程式中輸入你自己的個人資訊,再輸出。

2、設計程式,實現以下功能(15分)。

設計乙個程式,輸入兩個字串stra和strb,把strb中從第m個開始的字串連線到stra的後面。其中m是乙個變數,在程式執行時通過輸入獲得。

例如:stra=「abcdefg」 strb=」123456」 m=4 則結果為:stra=「abcdefg56」

3、設計程式,實現以下功能(20分)。

設計乙個程式,輸入十個整數,儲存在陣列中,然後對陣列進行排序,並把排序結果輸出。

要求:(1)輸入、輸出、排序三個功能分別用不同的函式實現,在主函式中呼叫這三個函式,實現所要求的功能。

(2)在實現輸入、輸出、排序,這三個函式中,要用指針對陣列進行引用、操作,不能使用下標的方式。

(3)排序演算法自由選擇:冒泡,選擇,簡單交換排序。

c語言考試試題

六一 判斷共10題 共計20分 第1題 2.0分 題號 1259 若定義int m 則m 1 的值為2.答案 y 第2題 2.0分 題號 1275 如果定義乙個函式時省略型別,則函式沒有返回值.答案 n 第3題 2.0分 題號 12 結構體型別只有一種。答案 n 第4題 2.0分 題號 1241 在...

C語言期末考試試題 A

忻州師範學院電腦科學與技術系 2005 2006學年第二學期 c語言 期末試題 a卷 考試班級 2005本16班考試時間 110分鐘 一 填空題 每空3分,共30分 1 若從鍵盤輸入58,則以下程式輸出的結果是 main 2 以下程式的輸出結果是 main 3 以下程式的輸出結果是 main 以下程...

c語言筆試試題

關係 delete 會呼叫物件的析構函式,和 new 對應 free 只會釋放記憶體,呼叫建構函式.new malloc 與 free 是 c c 語言的標準庫函式,new delete 是 c 的運算子.它們都可用於申請動態記憶體和釋放記憶體.對於非內部資料型別的物件而言,光用 malloc fr...