C語言與數(shù)據(jù)結(jié)構(gòu)試題B參考答案與評分標(biāo)準(zhǔn)_第1頁
C語言與數(shù)據(jù)結(jié)構(gòu)試題B參考答案與評分標(biāo)準(zhǔn)_第2頁
C語言與數(shù)據(jù)結(jié)構(gòu)試題B參考答案與評分標(biāo)準(zhǔn)_第3頁
C語言與數(shù)據(jù)結(jié)構(gòu)試題B參考答案與評分標(biāo)準(zhǔn)_第4頁
C語言與數(shù)據(jù)結(jié)構(gòu)試題B參考答案與評分標(biāo)準(zhǔn)_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

一、單項選擇題(在每小題的四個備選答案中,選出一個正確答案,并將正確答案的序號填

在題目的括號內(nèi)。每小題1分,共20分)

1.不屬于字符型常量的是()

A.'A'B.'a'C."A"D.'b'

2.依據(jù)C語言的語法規(guī)則,下列()是不合法標(biāo)識符。

A.whileB.NameC.Rern5D._exam

3.表達(dá)式“l(fā)?(0?3:2):(10?l:0)”的值為().

A.3B.2C.1D.0

4.為表示關(guān)系x》y2z,應(yīng)運用C語言表達(dá)式().

A.(x>=y)&&(y>=z)B.(x>=y)AND(y>=z)

C.(x>=y>=z)D.(x>=z)&(y>=z)

5.以下說法中正確的是().

A.C語言程序總是從第一個定義的函數(shù)起先執(zhí)行。

B.在C語言程序中,要調(diào)用的函數(shù)必需有main()函數(shù)中定義。

C.C語言程序總是從main()函數(shù)起先執(zhí)行。

D.C語言程序中的main()函數(shù)必需放在程序的起先部分。

6.設(shè)有數(shù)組定義:chararray口="China”;則數(shù)組所占的存貯空間為().

A.4個字節(jié)B.5個字節(jié)C.6個字節(jié)D.7個字節(jié)

7.C語言中以只讀方式打開一個文件應(yīng)選擇()參數(shù)。

A."r”B."w"C,“rb”D."a”

8.從循環(huán)體內(nèi)某處跳出,接著從頭執(zhí)行該循環(huán)外的語句是:().

A.break語句B.return語句C.continue語句D.空語句。

9.設(shè)有定義:longx=T23456L;則以下能夠正確輸出變量x值的語句是().

A.printf("x=%d\n",x)B.printf(<<x=%ld\nM,x)

C.printf("x=l\n",x)D.printf("x=%D\n",x);

10.C語言用()表示邏輯“真”值。

A.trueB.t或yC.非零整型值D.整型值0

11.設(shè)A為存放(短)整型的一維數(shù)組,假如A的首地址為P,那么A中第i個元素的地址為

()。

A.P+i*2B.P+(i-l)*2C.P+(i-l)D.P+i

12.字符串指針變量中存入的是().

A.字符串的首地址。B.字符串C.第一個字符D.字符串變量。

13.以()個是不正確的描述。

A.數(shù)組名可以作為參數(shù)進(jìn)行傳遞。

B.在定義函數(shù)時,必需指定形參的類型。

C.形參和實參之間可以是值傳遞。

D.不論在主函數(shù)還是自定義函數(shù)中,只要說明白變量,就可為其支配存貯單元。

14.在函數(shù)中默認(rèn)存儲類型說明符的變量應(yīng)當(dāng)是()存儲類型。

A.內(nèi)部靜態(tài)B.外部C.自動D.寄存器

15.設(shè)已有定義:char*st="howareyou”;下列程序段中正確的是()

A.char*p;strcpy(p=a+l,st[4]);

B.chara[l1];strcpy(a,st);

C.chara[ll];strcpy(++a,st);

D.chara[],*p;strcpy(p=&a[l],st+2);

16.計算機算法指的是(晨

A.計算方法B.排序方法

C.調(diào)度方法D.解決某一問題的有限運算序列

17.棧是一種()的數(shù)據(jù)結(jié)構(gòu)。

A.先進(jìn)后出B.先進(jìn)先出C.只允許在端點處插入和刪除元素D.操作沒有限

18.循環(huán)隊列用數(shù)組A[0..m-11存放其元素值,已知其頭尾指針分別是front和rear,則

當(dāng)前隊列中的元素個數(shù)是()。

A.rear-front_1B.rear-front+1C.(rear-front+m)MODm

D.rear-front

19.structsk

{inta;

floatb;

}data;

int*p;

若要使P指向data中的a域,正確的賦值語句是()。

A.p=&a;B.p=data.a;C.p=&data.a;D.*p=data.a

20.若有以下說明和定義

typedefint*INTEGER

INTEGERp,*q;

以下敘述正確的是()。

A.p是int型變量

B.p是基類型為int的指針變量

C.q是基類型為int的指針變量

D.程序中可用INTEGER代替int類型名

填空題(1-2題每題2分,3-8題每題1分,共10分)

1.C語言中基本的數(shù)據(jù)類型有:、、O

2.C語言中一般整型變量的類型說明符為,在內(nèi)存中占字節(jié),有符號一般整型

的數(shù)據(jù)范圍是。

3.整數(shù)-35在機內(nèi)的補碼表示為。

4.執(zhí)行下列語句inta=8;a+=a-=a*a;后,a的值是。

5.有如下語句:charA[]={"Iamastudent"};該字符串的長度是.A[3]=。

6.符號“a"和'a'的區(qū)分是o

7.所謂“指針”就是.運算符的作用是.運算符的作用是。

8.有如下輸入語句:scanf("a=%d,b=%d,c=%d”,&a,&b,&c);為使變量a的值為1,b

的值為3,c的值為2,從鍵盤輸入數(shù)據(jù)的正確形式應(yīng)是。

三、推斷題(正確的在題后括號內(nèi)打“J”,錯的打“X”。每小題1分,共10分)

1.c語言源程序文件通過了編譯、連接之后,生成一個后綴為.EXE的文件。()

2.在C程序中,函數(shù)既可以嵌套定義,也可以嵌套調(diào)用。()

3.在C程序中,APH和aph代表不同的變量。()

4.表達(dá)式0195是一個八進(jìn)制整數(shù)。()

5.continue語句的作用是結(jié)束本次循環(huán)。()

6.extern變量的生命期是整個程序執(zhí)行期。()

7.C語言中字符串的結(jié)束符是‘\0'。()

8.假如有定義inta,*p=&a;則*p與a意義相同。()

9.結(jié)構(gòu)體變量中各成員共享空間。()

10.起泡排序法是穩(wěn)定的。()

四、應(yīng)用題(每小題7分,共42分)

1.#include"stdio.h"

main()

(

inta[]={8,2,9,4,1},*p;

p=a;

*(p+2)+=2;

printf(u%d,%d”,*p,*(p+2));}

該程序的運行結(jié)果是.

2.已知有一函數(shù)定義如下:

template<classT>

voidswapl(Ta,Tb)

(

Ttemp;

temp=a;

a=b;

b=temp;

)

主函數(shù)調(diào)用格式如下:

main()

(

intx=l,y=2;

printf(wx=%dy=%d\n",x,y);

swapl(x,y);

printf(<<x=%dy=%d\nw,x,y);

)

執(zhí)行后輸出結(jié)果為

x=ly=2

x=ly=2

原來是想交換x和y的值,但沒有成功,請指出錯誤所在,并該正之。

3.for(a=Lb=l;a<=100;a++)

{if(b>=20)break;

if(b%3==l)

{b+=3;continue;}

b-=5;}

程序執(zhí)行后a和b的值分別為。

4.main()

inti,num[5];

for(i=0;i<5;i++)

num[i]=i*10-2;

printf("%d”,num[3]);

)

該程序的運行結(jié)果是.

5.mainO

(

floatc,f;

c=30.0;

f=(6*c)/5+32;

printf(f);

)

該程序的運行結(jié)果是.

6.寫出下列程序的運行結(jié)果。

ttinclude"stdio.h"

main()

{

inta[]={l,2,3,-4,5};

intm,n,*p;

p=&a[0];m=*(p+1);n=*(p+4);

printf("%d%d%d",*p,m,n);

}

該程序的運行結(jié)果是.

五、編程題(18分,任選2題,每題9分,選題操作2題按錯誤最多的2題評分)

1.編程將文件score1.txt中的字符讀出顯示到屏幕上。

2.輸出1—100之間不能被12整除的數(shù)。

3.從鍵盤上輸出10個整數(shù)存入一維數(shù)組中,按由大到小的依次輸出。

4.假設(shè)以帶頭結(jié)點的單鏈表表示線性表,單鏈表的類型定義如下:

template<classT>

structNode

(

Tdata;

Node<T>*next;//此處〈T〉也可以省略

);

編寫函數(shù)推斷鏈表是否為空。函數(shù)原型如下:

boolIsEmpty(Node<T>*head);

C語言與數(shù)據(jù)結(jié)構(gòu)試題B參考答案與評分標(biāo)準(zhǔn)

一、單項選擇題(在每小題的四個備選答案中,選出一個正確答案,并將正確答案的序號

填在題目的括號內(nèi)。每小題1分,共20分)

CABACCACBCBADCBDACCB

二、填空題(1-2題每題2分,3-8題每題1分,共10分)

1.整型實型字符型依次可以不一樣,實型1分,其余兩種各0.5分

2.int4-231?+231-1(1分)

3.232-35或Oxffffffdd

4.-112

5.14'm'沒有單引號不扣分(各0.5分)

6.一個字符串一個字符

7.地址取地址取內(nèi)容(或代表目標(biāo)變量)(各1/3分,答對2個不扣分)

8.1,3,2

三、推斷題(推斷下列各小題,正確的在題后括號內(nèi)打“J”,錯的打“X”。

每小題1分,共10分)

四、應(yīng)用題(每小題7分,共42分)

1.8,11

2.指出錯誤3分,改正4分

改成引用或指針均可,

改成指針,如下:

template<classT>

voidswapl(T*a,T*b)〃3分

{

Ttemp;

temp=*a;

*a=*b;

*b=temp;

main()

{

intx=l,y=2;

printf("x=%dy=%d\n”,x,y);

swapl(&x,&y);〃1分

printf("x=%dy=%d\n”,x,y);

3.822

4.28

5.68.000000

6.125

五、編程題(18分,任選2題,每題9分,選題操作2題按錯誤最多的2題評分)

1.編程將文件scorel.txt中的字符讀出顯示到屏幕上。

參考程序:

#include<stdio.h>

main()

(

FILE*fp;//I分

charc;〃1分

fp=fopen(''scorel.txt〃,“r〃);〃1分

while(!feof(fp))//2分

(

//fscanf(fp,"%c",&c);

c=fgetc(fp);//2分

putchar(c);//I分

}

fclose(fp);//I分

)

2.輸出1—100之間不能被12整除的數(shù)。

溫馨提示

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

評論

0/150

提交評論