全國(guó)2006年4月至2012年4月計(jì)算機(jī)試題_第1頁(yè)
全國(guó)2006年4月至2012年4月計(jì)算機(jī)試題_第2頁(yè)
全國(guó)2006年4月至2012年4月計(jì)算機(jī)試題_第3頁(yè)
全國(guó)2006年4月至2012年4月計(jì)算機(jī)試題_第4頁(yè)
全國(guó)2006年4月至2012年4月計(jì)算機(jī)試題_第5頁(yè)
已閱讀5頁(yè),還剩71頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

全國(guó)2006年4月計(jì)算機(jī)基礎(chǔ)與程序設(shè)計(jì)試題

課程代碼:02275

一、單項(xiàng)選擇題(本大題共20小題,每小題1分,共20分)

在每小題列出的四個(gè)備選項(xiàng)中只有?個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后的括號(hào)

內(nèi)。錯(cuò)選、多選或未選均無(wú)分。

1.CPU處理數(shù)據(jù)和指令的基本單位是字(Word),一個(gè)字的字長(zhǎng)是()

A.8bitsB.16bits

C.32bitsD.與CPU數(shù)據(jù)總線有關(guān)的bit位數(shù)

2.與十進(jìn)制1100等值的十六進(jìn)制數(shù)是()

A.44AB.44C

C.54AD.54C

3.退出TurboC2.0返回系統(tǒng),在主菜單File項(xiàng)中可選擇()

A.LoadB.New

C.SaveD.Quit

4.設(shè)有inta=3,b=4c=5;表達(dá)式(a<b)?a+b:(a-b,b+4,a-=b+4)的值是()

A.-lB.0

C.3D.7

5.若有下列程序段,欲使a=2、b=3,對(duì)應(yīng)正確的數(shù)據(jù)輸入方法是()

(其中vCR>表示換行)

inta,b;

scanf(z/a=%db=%d",&a,&b);

A.2<CR>B.a=2b=3<CR>

3<CR>

C.a=2,b=3<CR>D.2,3<CR>

6.下面程序段的輸出結(jié)果是()

main()

{ints,p;

s=p=5;

p=++s;

P++;++p;

printf(〃%d\n",p);

)

A.5B.6

C.7D.8

7.下列if語(yǔ)句中,有語(yǔ)法錯(cuò)誤的是()

A.if(x>y);

B.if(x=y)x+y;

C.if(x!=y)scanf("%d",&x)elsescanf(/z%d0,&y)

D.if(x<y){x++;y++;}

8.下面程序段執(zhí)行后的輸出結(jié)果是()

inti="l;

if(i<=0)printfC,****\n");

elseprintf(〃%%%%\n");

A.****B.%%%%

C.%%%%cD.****c

9.下面程序段的循環(huán)次數(shù)是()

intk=2;

while(k==O)printf("%d〃,k);

k-;printfC\n,z);

A.0次B.1次

C.2次D.無(wú)限次

10.下面程序段的輸出結(jié)果是()

a=100;

while(a>120);

a=a+1;

printf(〃%d〃,a);

A.100B.101

C.120D.121

11.下面程序執(zhí)行后,i的值是()

main()

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

printf("%d”,a[i++]);

)

A.1B.2

C.3D.4

12.下面程序的輸出結(jié)果是()

main()

{inti,x[3][3]={9,8,7,6,5,4,3,2,l};

for(i=0;i<4;i+=2)printf("%d",x[i][l]);

)

A.51B.52

C.82D.93

13.在C程序中,若用基本數(shù)據(jù)類型所定義的變量調(diào)用函數(shù),正確的說(shuō)法是()

A.由系統(tǒng)自動(dòng)指定對(duì)應(yīng)實(shí)參和形參是否共用存儲(chǔ)單元

B.對(duì)應(yīng)實(shí)參和形參各占一個(gè)獨(dú)立的存儲(chǔ)單元

C.對(duì)應(yīng)實(shí)參和形參共用一個(gè)存儲(chǔ)單元

D.可以山用戶指定對(duì)應(yīng)實(shí)參和形參是否共用存儲(chǔ)單元

14.下面敘述中不正確的是()

A.不同函數(shù)中可以使用相同名字的變量

B.形式參數(shù)是局部變量

C.在一個(gè)函數(shù)內(nèi)部定義的變量只能在本函數(shù)范圍內(nèi)有效

D.在一個(gè)函數(shù)內(nèi)部的復(fù)合語(yǔ)句中定義的變量在本函數(shù)范圍內(nèi)有效

15.設(shè)有語(yǔ)句inta[4][10],*p=*a;則下面表達(dá)式中屬于地址表達(dá)式的是()

A.a[l][2]B.a[l]

C.*(p+1*10+2)D.*(afl]+2)

16.下面定義不正確的是()

A.structstarB.structstar

intidintid;

char*name;char*name;

}starl={1001,"Moon"};};starl={1001,"Moon"};

C.structD.structstar

{{

intid;intid;

char*name;char*name;

}starl={123,"Sun〃};}starl;

17.下面各個(gè)位運(yùn)算符的優(yōu)先級(jí)從左到右依次升高的是()

A.IA&?B.A?&-

C.v<I八~D.~I&>>

18.設(shè)有說(shuō)明:intu=l,v=14;表達(dá)式u+v?2的值是()

A.0B.3

C.5D.7

19.如果將文件指針fp指向文件末尾,正確的語(yǔ)句是()

A.feof(fp);B.rewind(fp);

C.fseek(fp,OL,O);D.fseek(fp,0L,2);

20.下面程序段中,不能完成的功能是()

FILE*fp;

charch='v';

fp=fopen(〃boy",〃rb+");

fputc(ch,fp);

A.建立文件指針fp與文件boy的聯(lián)系B.從boy文件中讀取一個(gè)字符

C.向boy文件中寫一個(gè)字符D.打開名為boy的二進(jìn)制文件

二、多項(xiàng)選擇題(本大題共5小題,每小題2分,共10分)

在每小題列出的五個(gè)備選項(xiàng)中有二至五個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后的括號(hào)

內(nèi)。錯(cuò)選、多選、少選或未選均無(wú)分。

21.總線是連接微機(jī)CPU、內(nèi)存和外設(shè)之間傳送信號(hào)的公共通道,微機(jī)的總線包括有

()

A.電源線B.數(shù)據(jù)線

C.地址線D.控制線

E.網(wǎng)絡(luò)線

22.若定義charcfll];可將字符串"Iamaboy"賦給數(shù)組c,下面正確的選項(xiàng)有

()

A.c="Iamaboy";B.getchar(c);

C.gets(c);D.scanf("%s",c);

E.for(i=0;i<10;i++)scanf("%c\&c[i];c[10])=,\0,;

23.若有如下定義和語(yǔ)句,則能正確表示數(shù)組a首元素地址的表達(dá)式有()

inta[10],*p;

p=a;

A.a[0]B.a

C.p+1D.p

E.*p

24.設(shè)有說(shuō)明:intx=l,y=3;下面表達(dá)式的值為2的有()

A.y&~xB.xAy

C.xlyD.ylx?l

E.x?lly?2

25.在C語(yǔ)言中,關(guān)于符號(hào)FILE下面說(shuō)法正確的有()

A.FILE是C的關(guān)鍵字

B.FILE表示一種關(guān)于文件參數(shù)的結(jié)構(gòu)體類型

C.FILE表示一種關(guān)于文件參數(shù)的結(jié)構(gòu)體變量

D.FILE*可以用來(lái)說(shuō)明文件指針

E.文件指針指向的變量的數(shù)據(jù)類型是FILE

三、簡(jiǎn)答題(本大題共4小題,每小題4分,共16分)

26.C語(yǔ)言中如何表示“真”和“假”?系統(tǒng)如何判斷一個(gè)量的“真”和“假”?

27.什么是“直接遞歸調(diào)用”?什么是“間接遞歸調(diào)用”?

28.判斷下面兩程序段正確與否,并說(shuō)明原因。

(1)charstrfl2];str="program”;

(2)char*str;str="program";

29.設(shè)有說(shuō)明:

structlanguage{longspearer;charcountry[20];}Chinese;

試寫出對(duì)Chinese的成員spearer和country分別賦值1250000000和“China”的C語(yǔ)句。

四、閱讀分析題(本大題共6小題,每小題5分,共30分)

30.閱讀下面程序,寫出運(yùn)行結(jié)果(已知A的ASCII碼為65,a的ASCII碼為97)。

include"stdio.h"

main()

{intk=100;charm;

m=k;pulchar(m);

printf(M,%d,%c,%o,Kk,m-32,m);

}

31.閱讀下面程序,并回答問(wèn)題:

main()

{intx,y,z,c;

scanf("%d%d%d",&x,&y,&z);

if(x<z){c=y;y=z;z=c;}

if(x<z){c=x;x=z;z=c;}

if(x<y){c=x;x=y;y=c;}

printf(/z%d,%d,%d",x,y,z);

)

(1)若程序運(yùn)行時(shí),輸入3、2和5,則輸出結(jié)果是什么?

(2)寫出程序所實(shí)現(xiàn)的功能。

32.閱讀下面程序,并回答問(wèn)題:

main()

{intm,n;

m=65;

n=14;

while(m!=n)

{while(m>n)m-=n;

while(n>m)n-=m;

)

printf(〃m=%d\n”,m);

)

(1)程序輸出結(jié)果是多少?

(2)外循環(huán)執(zhí)行完一次時(shí),m和n的值分別是多少?

(3)將while(n>m)n-=m;語(yǔ)句刪除后,程序運(yùn)行情況如何?

33.閱讀下面程序,并回答問(wèn)題:

gcd(intx,inty)

{inttemp;

while(y){temp=x%y;x=y;y=temp;}

returnx;

)

main()

{inta,b,y;

scanf("%d,%d",&a,&b);

y=gcd(a,b);

printf("最大公約數(shù)是:%d",y);

)

(1)gcd函數(shù)的返回值類型是什么?

(2)若將returnx寫成returny會(huì)得到什么樣的結(jié)果?

34.閱讀下面程序,寫出運(yùn)行結(jié)果。

mian()

{char*str[]={"Pascal","CLanguage","Dbase","Cobol"};

intk;

for(k=0;k<4;k++)

printf("%s\n",str[k]);

)

35.閱讀下面程序段,寫出輸出結(jié)果。

structnum

{floatfl;

intj;

}u={5.6,8},*p=&u;

printf(,,%.2f,%d\n,,,u.fl,u.j);

printf("%.2f,%d\n",(*p).fl,p->j);

五、程序設(shè)計(jì)題(本大題共2小題,每小題12分,共24分)

36.若有n行n列數(shù)組,試編寫一程序,分別求出兩條對(duì)角線元素之和。(從鍵盤輸入n*n

個(gè)整型數(shù),n<20)

37.若在c:\tclt路徑下有一個(gè)名為zz.dat的文本文件,它包括10個(gè)按升序排列的整數(shù),且每

兩個(gè)數(shù)之間用逗號(hào)隔開,現(xiàn)要插入一個(gè)整數(shù)使該序列仍保持升序,并把新序列寫入到c:\tclt

路徑下名為zzz.dat的文本文件中。

全國(guó)2006年7月計(jì)算機(jī)基礎(chǔ)與程序設(shè)計(jì)試題

課程代碼:02275

一、單項(xiàng)選擇題(本大題共20小題,每小題1分,共20分)

在每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后的括號(hào)

內(nèi)。錯(cuò)選、多選或未選均無(wú)分。

1.存儲(chǔ)量1MB等于()

A.23字節(jié)

B.210字節(jié)

C.220字節(jié)

D.230字節(jié)

2.下面數(shù)據(jù)中最小數(shù)是()

A.(0.1100)2

B.(0.64)8

C.(0.8125)10

D.(O.D)16

3.在TurboC2.0中,尋求在線幫助可按鍵()

A.F1

B.F5

C.F9

D.F10

4.設(shè)有inta=3,b=4c=0;表達(dá)式((a>b)?a:b)&&c<0的值是()

A.-4

B.0

C.1

D.3

5.若有下列程序段,欲使a=2、b=3,對(duì)應(yīng)正確的數(shù)據(jù)輸入方法是()

(其中<CR>表示換行)

inta,b;

scanf(na=%d,b=%dw,&a,&b);

A.2<CR>

B.a=2b=3<CR>

3<CR>

C.a=2,b=3<CR>

D.2,3<CR>

6.下面程序段的輸出結(jié)果是()

main()

{ints,p;

s=p=5;

P=-s;

p++;++p;

printf("%d\n〃,p);

)

A.5

B.6

C.7

D.8

7.關(guān)于if語(yǔ)句下面敘述正確的是()

A.只有當(dāng)if語(yǔ)句中表達(dá)式的值等于1時(shí),,才執(zhí)行if的內(nèi)嵌語(yǔ)句

B.只有當(dāng)if語(yǔ)句中表達(dá)式的值為假時(shí),才執(zhí)行if的內(nèi)嵌語(yǔ)句

C.只有當(dāng)if語(yǔ)句中表達(dá)式的值等于0時(shí),才執(zhí)行if的內(nèi)嵌語(yǔ)句

D.只要if語(yǔ)句中表達(dá)式的值非。時(shí),就執(zhí)行if的內(nèi)嵌語(yǔ)句

8.若執(zhí)行下面程序時(shí),從鍵盤輸入數(shù)據(jù)3和4,則程序的輸出結(jié)果是()

main()

{inta,b,s;

scanf("%d",&a,&b);

s=a;

if(a<b)s=b

s=s*s;

printf("%d〃,s);

)

A.9

B.12

C.16

D.25

9.若intx=0;則while(x==O);的循環(huán)次數(shù)是()

A.0

B.1

C.2

D.無(wú)限次

10.下面程序段的輸出結(jié)果是()

for(i=l;iv3;i++)

{for(j=l;j<3;j++)

printf("%d〃,i+j);

printf(〃\n〃);}

A.2334

B.234

C.23

D.23434

11.下面程序的輸出結(jié)果是()

mian()

{inta[5]={2,4,6,8,10),i;

i=2;

printf("%d",a[i++]);

)

A.2

B.4

C.6

D.8

12.下面程序的輸出結(jié)果是()

main()

{inta[3][4]={1,3,5,7,9,11,13,15,17,19,21,23);

inti,j,k=O;

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

k=k+a[i][0];

printf(〃%d\n",k);

)

A.27

B.33

C.39

D.45

13.以下正確的函數(shù)定義形式是()

A.doublefun(intx,inty)

B.doublefun(intx;inty)

C.doublefun(intx,inty);

D.doublefun(intx,y);

14.關(guān)于變量以下不正確的說(shuō)法是()

A.在不同函數(shù)中可以使用相同名字的變量

B.形式參數(shù)是全局變量

C.在函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效

D.在函數(shù)內(nèi)的復(fù)合語(yǔ)句中定義的變量是局部變量

15.設(shè)有語(yǔ)句inta[4][10],*p=*a;則下列表達(dá)式中不是地址表達(dá)式的是()

A.&a[l][2]

B.a[3]

C.*(p+1*10+2)

D.p+l*10+2

16.下面關(guān)于結(jié)構(gòu)體類型變量定義不正確的是()

A.structscore

B.struct

{{

intmath;intmath;

intChinese;intChinese;

}Li,Wang;}Li,Wang;

C.structscore

D.structscore

{{

intmath;intmath;

intChinese;intChinese;

};};Li,Wang;

structscoreLi,Wang;

17.下面各個(gè)運(yùn)算符的優(yōu)先級(jí)從左到右依次降低的是()

A.&?lA

B.~I

C.?&Al

D.八

18.設(shè)有說(shuō)明:intu=l,v=2;表達(dá)式:u+vv<2的值是()

A.-1

B.1

C.9

D.12

19.下面程序段中,不能完成的功能是()

FILE*fp;

charch;

fp=fopen("filel〃,〃rb+");

ch=fgetc(fp);

A.建立文件指針fp與文件file1的聯(lián)系

B.從filel文件中讀一個(gè)字符

C.向filel文件中寫一個(gè)字符

D.打開名為filel的二進(jìn)制文件

20.在格式:fread(stu,size,n,fp);中,下面說(shuō)法不正確的是()

A.stu是內(nèi)存中存放數(shù)據(jù)的首地址

B.n表示讀n次

C.size是一個(gè)數(shù)據(jù)塊的字節(jié)數(shù)

D.fp表示文件指針

二、多項(xiàng)選擇題(本大題共5小題,每小題2分,共10分)

在每小題列出的五個(gè)備選項(xiàng)中有二至五個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后的括

號(hào)內(nèi)。錯(cuò)選、多選、少選或未選均無(wú)分。

21.微機(jī)系統(tǒng)的主機(jī)包含的部件有()

A.輸入設(shè)備

B.存儲(chǔ)器

C.輸出設(shè)備

D.運(yùn)算器

E.控制器

22.下面各選項(xiàng)中,能正確進(jìn)行字符串操作的有()

A.chars[]={'a','b','c',d,'e','0'};

B.chars[10];s="abcde";

C.chars[10];strcpy(s,"abcde")

D.chars[10];getchar(s);

E.chars[10];gets(s);

23.若有以下定義和語(yǔ)句,則能正確表示數(shù)組a首元素地址的表達(dá)式有()

doublea[5],*pl

pl=a;

A.a

B.pl+1

C.*pl

D.&a[l]

E.pl

24.設(shè)有說(shuō)明:intu=l,v=3,w=7;下面表達(dá)式的值為3的有()

A.w?l&vlu

B.u&v&w

C.ulv&w

D.w&v?l

E.vAwlu

25.在C語(yǔ)言中,下面關(guān)于文件說(shuō)法正確的有()

A.按數(shù)據(jù)的組織形式,可分為文本文件和二進(jìn)制文件

B.文件只能是ASCH碼文件

C.文件能用fopen()函數(shù)打開

D.文件只能是二進(jìn)制文件

E.對(duì)打開的文件可以進(jìn)行讀或?qū)懖僮?/p>

三、簡(jiǎn)答題(本大題共4小題,每小題4分,共16分)

26.簡(jiǎn)述C語(yǔ)言中標(biāo)識(shí)符的命名規(guī)則并說(shuō)明C語(yǔ)言中哪些名是用標(biāo)識(shí)符來(lái)標(biāo)識(shí)的?

27.變量有哪幾種存儲(chǔ)類別?指明它們存儲(chǔ)數(shù)據(jù)的區(qū)域。

28.定義char*str="computer";是將字符串"computer"賦值給變量str,這種說(shuō)法對(duì)嗎?為什

么?

29.設(shè)有說(shuō)明:

structflower{char*part;char*color;}mum;

char*part_of_flower[3]={"花","莖","葉"};

char*seven_color[7]={"赤","橙","黃","綠","青","藍(lán)","紫"};

試寫出將mum的成員part定義為"花"、成員color定義為"黃"的C語(yǔ)句。

四、閱讀分析題(本大題共6小題,每小題5分,共30分)

30.閱讀下面程序,寫出運(yùn)行結(jié)果。

main()

{inta=789,x,y,z;

x=a/100;

y=a/10-10*x;

z=a-l0*y-100*x

printf("%d,%o,%x,%d",x,y,z,100*z+10*y+x);

)

31.閱讀下面程序,并回答問(wèn)題:

main()

{inta,b,x,y;

scanf(〃%d,%d〃,&a,&b);

x=a*a+b*b

if(x>100)

{y=x/100;printfC%d?;)

elseprintf("%d〃,a+b);

)

(1)若程序運(yùn)行時(shí),輸入6和9,輸出結(jié)果是什么?

(2)說(shuō)明程序的功能。

32.閱讀下面程序,并回答問(wèn)題:

main()

{intu,v,a,b,t,r;

u=24;v=16;

if(u>v){t=u;u=v;v=t;}

a=u;b=v;

while((r=b%a)!=0)

{b=a;a=r;}

printf("a=%d\n",a);

}

(1)程序輸出結(jié)果是什么?

(2)該程序完成什么功能?

(3)若將while循環(huán)替換為do-while循環(huán),請(qǐng)寫出相應(yīng)的程序段。

33.閱讀下面程序,寫出運(yùn)行結(jié)果。

inta=5,b=5;

chang1()

{inta=4;

printf("a1=%d,b1=%d\n〃,a,b");

chang2(inta,intb)

{a++;b-;

)

main()

{chang1();a++,b++;chang2(a,b);

printfCra2=%d,b2=%d\n\a,b);

)

34.閱讀下面程序,寫出運(yùn)行結(jié)果。

#include<stdio.h>

#include<string.h>

main()

{charpl,p2,srt[50]="abc",str1[50];

pl=〃abc";p2=〃abc〃;

puts(str);

strcpy(strl,pl);

pl=strl;

printfCr%s\n\strcat(p1,p2));

strcpy(str+l,pl);

printf("%s\n",str);

)

35.設(shè)有說(shuō)明語(yǔ)句int*p;請(qǐng)分析下面語(yǔ)句的含義:

p=(int*)malloc(sizeof(int));

free(p);

五、程序設(shè)計(jì)題(本大題共2小題,每小題12分,共24分)

36.從鍵盤輸入n*n個(gè)整型數(shù)(n<20),組成n行n列數(shù)組,打印出其上三角數(shù)組。

37.用循環(huán)語(yǔ)句編程打印下列圖案,并以ASCII碼的形式寫到c盤根目錄下的lx.dat文件中。

(第一行的"$”在第20列)

$

$$$

J><4)

0。。J0

全國(guó)2007年4月計(jì)算機(jī)基礎(chǔ)與程序設(shè)計(jì)試題

課程代碼:02275

一、單項(xiàng)選擇題(本大題共20小題,每小題1分,共20分)

在每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后的

括號(hào)內(nèi)。錯(cuò)選、多選或未選均無(wú)分。

1.I/O設(shè)備指的是計(jì)算機(jī)的(B)

A.存儲(chǔ)設(shè)備B.輸入和輸出設(shè)備C.控制器D.運(yùn)算器

2.具有只讀功能的內(nèi)存儲(chǔ)器是指(A)

A.ROMB.RAMC.硬盤D.CD-ROM

3.十進(jìn)制數(shù)一5在八位的微機(jī)內(nèi)的存儲(chǔ)形式是(D)

A.00000101B.10000101C.11111010D.11111011

4.C語(yǔ)言源程序的基本單位是(B)

A.過(guò)程B.函數(shù)C.子程序D.語(yǔ)句

5.設(shè)有intp,q;以下不亞碩的語(yǔ)句是(D)

A.p*=3;B.p/=q;C.p+=3;D.p&&=q;

6.若有下列程序段,欲使a=2,b=3,對(duì)應(yīng)正確的數(shù)據(jù)輸入方法是(其中vCR>表示換行)

(A)

inta,b

scanf("%d%d”,&a,&b);

A.2<CR>B.a=2b=3<CR>

3<CR>

C.a=2,b=3<CR>D.2,3<CR>

7.設(shè)有說(shuō)明intx=0,y=2;

則執(zhí)行if(x=0)y=l+x;

elsey=x-l;

后,變量y的值是(A)

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

8.下面程序的輸出結(jié)果是(B)

main()

(

intx=5,y;

if(x>0)

y=i;

y=o;

if(x<0)

y=-i;

printf("%d",y);

A.-1B.0C.1D.5

9.執(zhí)行下面程序段后,輸出字符B的個(gè)數(shù)是(B)

x=0;

while(x<=5){

printf(nBM);

x+=2;

)

A.0個(gè)B.3個(gè)C.5個(gè)D.6個(gè)

10.在下述程序中,for循環(huán)執(zhí)行的次數(shù)是(C)

main()

(

inti=0,j=10,k=2,s=0;

for(;;)

(

i+=k;

if(i>j)

(

printf("%d\n",s);

break;

)

s+=i;

}

)

A.4B.5C.6D.7

11.若有定義:inta[10];則數(shù)組元素的下標(biāo)的下限和上限分別是(C)

A.0和1B.1和9C.0和9D.1和10

12.下列說(shuō)法不正夠的是(C)

A.一個(gè)源程序文件由一個(gè)或多個(gè)函數(shù)組成

B.一個(gè)C程序由?個(gè)或多個(gè)源程序文件組成

C.一個(gè)C程序以函數(shù)為獨(dú)立的編譯單位

D.一個(gè)C程序必須有一個(gè)main()函數(shù)

13.在C語(yǔ)言中,確定函數(shù)返回值的類型由(D)

A.return語(yǔ)句中的表達(dá)式類型決定B.調(diào)用該函數(shù)的主函數(shù)類型決定

C.調(diào)用函數(shù)時(shí)臨時(shí)決定D.定義函數(shù)時(shí)所指定的函數(shù)類型決定

14.若有以下定義和語(yǔ)句,且OWiVlO,則對(duì)數(shù)組元素地址的正確表示是(D)

intaU={0/23,4,5,6,7,8,9},*p;

P=a;

A.&(a+l)B.a++C.&pD.&p[i]

15.若有以下說(shuō)明:

chars[10]="ABCDEFGH",*p=s;

不熊表示字符C的是(B)

A.s[2]B.s[3]C.s「d-fa'JD.*(p+2)

16.有下列程序:

func(intx,inty,int*jia,int*jian)

{*jia=x+y;

*jian=x-y;}

main()

{inti=10j=3,xl,x2;

func(i,j,&xl,&x2);

printf(°%d,&d\n",xl,x2);}

則其運(yùn)行結(jié)果是(C)

A.0,0B.10,3C.13,7D.7,13

17.設(shè)有結(jié)構(gòu)體的定義如下:

structdata{

intn;

charc;

floatf;

);

則sizeof(structdata)的值是(C)

A.1B.3C.7D.11

18.如果在程序中要使用系統(tǒng)提供的函數(shù)sqrt,則需要書寫的編譯預(yù)處理命令是(B)

A.#include<stdio.h>B.#include<math.h>

C.#include<string.h>D.#include<malloc.h>

19.設(shè)有說(shuō)明:intx=12,y=3;則x1y的值是(D)

A.0B.3C.12D.15

20.測(cè)試文件是否結(jié)束函數(shù)的函數(shù)名是(A)

A.feofB.EOFC.eofD.FEOF

二、多項(xiàng)選擇題(本大題共5小題,每小題2分,共10分)

在每小題列出的五個(gè)備選項(xiàng)中至少有兩個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后

的括號(hào)內(nèi)。錯(cuò)選、多選、少選或未選均無(wú)分。

21.下列設(shè)備中屬于外存儲(chǔ)設(shè)備的有(BCDE)

A.RAMB.光盤C.硬盤

D.軟盤E.磁帶

22.設(shè)a=l,b=3,c=0;下面表達(dá)式的值為1的有(ABCE)

A.!a&&blla&&(c+l)B.a—b+3C.(a>b)==c

D.(a=0)&&(b=I0)E.b>a&&a>c

23.設(shè)有說(shuō)明:chars[20];(BCD)

卜面各項(xiàng)中能夠正確的將一個(gè)字符串“abed”賦給s數(shù)組的有

A.s=°abed°;B.gets(s);C.scanf("%s0,s);

D.strcpy(s,"abed");E.strcpy("abed",s);

24.關(guān)于結(jié)構(gòu)體,下面各項(xiàng)中不本碩的有(AC)

A.structperson{longbh;char*name;intage;}

psl={9100,"wangu,20},*pst;

pst=psl;printf("%d"/pst-*age);

B.structmy_data

{intnum;structmy_data*next;};

C.structtest

{char*course;char*class}

D.structworker

{charname[9];floatgz;}Li={*'LiPingH,532.67);

E.structint_num

{inti_num;structint_num*next;}ione,*pi;

pi=&ione;

25.設(shè)有說(shuō)明:intx=l,y=2,z=3;則下面表達(dá)式的值為0的有(ACDE)

A.x&y&zB.xIyIzC.xAx+yAy

D.z?yE.x&OxffOO

三、簡(jiǎn)答題(本大題共4小題,每小題4分,共16分)

26.C語(yǔ)言中的運(yùn)算符“=”與運(yùn)算符“==”的意義相同嗎?為什么?不同.C語(yǔ)言中“=”

稱為賦值號(hào),賦值號(hào)左邊只能是變量不能是表達(dá)式或常量。賦值號(hào)兩側(cè)不能互換,不表

示相等,而“==”稱為等號(hào),與數(shù)學(xué)中的“=”意義相同,符號(hào)兩側(cè)都可以使表達(dá)式

27.變量的存儲(chǔ)類別分為哪幾種?它們分別存儲(chǔ)在什么區(qū)域?Aotu^tatic,extern,register四

種。Aotu類型的局部變量存儲(chǔ)在動(dòng)態(tài)存儲(chǔ)區(qū)。Static類型的靜態(tài)變量和extern類型的外部

變量存儲(chǔ)在靜態(tài)存儲(chǔ)區(qū)。Register類型的變量存儲(chǔ)在寄存器中。

28.試定義一個(gè)三行的二維字符數(shù)組s,并用nIamaboy",'*youareagirln,nheisa

teacher"對(duì)其進(jìn)行初始化。chars【3】[2ft]={MIamaboy","youareagirl*','*he

isateacher”};

29.設(shè)有說(shuō)明:inta⑵[3];

請(qǐng)用四種方式來(lái)表示數(shù)組元素a[l][2]oa[l][2],*(&a[0][0]+1x3+2),*(a[0]

+1x3+2),*(*a+lx3+2);

四、閱讀分析題(本大題共6小題,每小題5分,共30分)

30.從鍵盤輸入字符A時(shí),寫出下面程序的運(yùn)行結(jié)果。(注:字符A的ASCII碼是65)

include"stdio.h”

main()

(

charch;

ch=putchar(getchar());

printf(",%d,%o,%cn,ch+l,ch+l,ch+32);A>66,102,a

}

31.閱讀下面程序:

voidmain(void)

(

ints=0,n=0,x;

label:scanf("%d",&x);

if(x>0){

s+=x;

n++;

printf(°s=%d,n=%d,even=%f\nH,s,n,1.0,*s/n);

)

if(x!=0)

gotolabel;

else

printf(°goodbye!”);

}s=12,n=l,even=12.0

s=17,n=2,even=8.5

s=30,n=3,even=10.0

goodbye!

當(dāng)依次輸入12-3-65130/時(shí),,寫出程序的運(yùn)行結(jié)果。

32.閱讀下面程序,寫出程序的運(yùn)行結(jié)果。

charatX7918、'6、'5、'4,,/3\,2」01\0'};

voidmain(void)

(

inti=8,j;

for(j=0;j<4;j++)

printf("%s\nM,&a[i-j]);

)10

210

3210

43210

33.請(qǐng)寫出下面程序的運(yùn)行結(jié)果。

longfun(intk)

{

longfac;

if(k==0)

return1;

else

(

fac=k*fun(k-l);

printf(*'fac=%/d\n,fac);

)

returnfac;

)

voidmain(void)

(

intn=3;

printf(11result=%/d\nn,fun(n+l)/n);

}fac=l

fac=2

fac=6

fac=24

34.閱讀下面程序,寫出運(yùn)行結(jié)果。

#include<stdio.h>

#include<string.h>

voidf(char*s)

(

char*t,c,*p=s;

for(t=s+strlen(s)-l;s<t;s++,t-----)

(

c=*s,*s=*t,*t=c;

printf(n%s\n",p);

)

)

voidmain(void)

(

chara[20]=Mabcdefg";

f(a);

Jgbcdefa

gfcdeba

gfedcba

35.閱讀下面程序段,說(shuō)明其功能:

intx,y=O,k;FILE*fp;

fp=fopen('*data.txt",urb");

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

fread(&x,sizeof(int),1,fp),y+=x;

printf(u%d,"y);

fclose(fp);計(jì)算并輸出從data,txt中讀出的5個(gè)整型數(shù)據(jù)的累加和

五、程序設(shè)計(jì)題(本大題共2小題,每小題12分,共24分)

36.從鍵盤輸入10個(gè)整數(shù)并依次賦給整型數(shù)組中的元素,然后求該數(shù)組中值為正數(shù)的元素

的累加和并輸出該累加和。

37.在c盤根目錄下有一個(gè)ASCII碼文件month.dat,文件中有12個(gè)字符串分別為英文1~12

月的名字,現(xiàn)從鍵盤上輸入一個(gè)表示月份的整數(shù),輸出該月份的名字。若輸入的整數(shù)不

在1~12之間,則打印"Illegalmonth”

gfcdeba(2分,

gfedcba(】分)

35.計(jì)算并輸出從data,txt中讀出的5個(gè)整型數(shù)據(jù)的累加和,

(注,答出打開叱”文件給1分.答出讀出5個(gè)整型數(shù)據(jù)給2分,答出求數(shù)據(jù)累加和給2分,滿分

5分?)

五、36.voidmain(void)

Unti.3=0,K】0二$(說(shuō)明正確2分)

for(i=0?i<10U-r+)(循環(huán)輸入iE確4分)

scanf("%d"?:

for(i=0,i<10;i++)(循環(huán),判斷正整數(shù)?以及求累加和正確4分)

if(a[i]>0)

s十

prinif("%d'n"?§):(輸出正確2分)

(注,用其它方法編程?參照此評(píng)分標(biāo)準(zhǔn)酌情給分,

37.rinclude-stdio.h**

名include**string,h”(頭文件1分)

mnin()

(inti.n;char;FILE*P,(定義2分)

p-{fopen("c:\\month.da,"Jr"),(打開文件1分)

for(i=l,iV=12,i++)

(轆入正確3分)

fscanf(p?*%s"??(a+i)):

(輸入正確分)

scanf《"%d"?&-n);n1

if(n>=I&&nV=12)

(判斷及輸出正確3分)

-printf("%s\nH??(a4~n)>i

else

printf("Illegalmonth*);

(fcloseCp);

)《關(guān)閉文件1分)

(注:用其它方法編程,參照此評(píng)分標(biāo)準(zhǔn)酌情給分,

全國(guó)2007年7月高等教育自學(xué)考試

計(jì)算機(jī)基礎(chǔ)與程序設(shè)計(jì)試題

課程代碼:02275

一、單項(xiàng)選擇題(本大題共20小題,每小題1分,共20分)

在每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后的

括號(hào)內(nèi)。錯(cuò)選、多選或未選均無(wú)分。

1.微機(jī)中信息的最小單位是(B)

A.bitB.byte

C.KBD.word

2.組成計(jì)算機(jī)硬件系統(tǒng)的是(A)

A.控制器、運(yùn)算器和內(nèi)存儲(chǔ)器B.CPU,顯示器和鍵盤

C.I/O設(shè)備、CPU和內(nèi)存儲(chǔ)器D.控制器、內(nèi)存儲(chǔ)器和I/O設(shè)備

3.(75)io的二進(jìn)制的表示是(D)

A.(01001001)2B.(01001010)2

C.(01001011)2D.(01001100)2

4.字符串常數(shù)“CHINA”在內(nèi)存中存儲(chǔ)時(shí)占的字節(jié)數(shù)是(B)

A.5個(gè)B.6個(gè)

C.7個(gè)D.8個(gè)

5.如果a=l,b=2,c=3,d=4,則表達(dá)式a>b?a:c<d?c:d的值是(D)

A.1B.2

C.3D.4

6.輸出字符串的格式說(shuō)明符是(A)

A.%cB.%s

C.%uD.%g

7.設(shè)有說(shuō)明intx=O,y=O;

則執(zhí)行if(x++)y=l+x;

elsey=2+x;

后,變量y的值是(A)

A.0B.1

C.2D.3

8.以下程序段所表示的數(shù)學(xué)函數(shù)關(guān)系是(B)

y=-i

if(x!=O)if(x>0)y=1;elsey=0;

-1U<0)’1(x<0)

A.y=<0(x=0)B.y=<-1(x=0)

1(x>0)0(x>0)

0(x<0)-1(x<0)

C.y=<-1(x=0)D.y=<1(x=0)

1(x>0)0(x>0)

9.執(zhí)行下面程序段后,輸出字符A的個(gè)數(shù)是(B)

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

printf(,zA");

A.0個(gè)B.3個(gè)

C.5個(gè)D.6個(gè)

10.若有定義chara[]="computer";則存儲(chǔ)字符m的數(shù)組元素是(C)

A.a[l]B.a(2]

C.a[3]D.a[4]

11.若有定義定ta[4]={l,2,3,4};則的值是(C)

A.1B.2

C.3D.4

12.凡是函數(shù)中未指定存儲(chǔ)類別的局部變量,其隱含的存儲(chǔ)類別為(C)

A.自動(dòng)(auto)B.靜態(tài)(static)

C.外部(extern)D.寄存器(register)

13.如果一個(gè)C程序僅由一個(gè)源文件組成,則在一個(gè)源文件中定義的全局變量的作用域?yàn)?/p>

(D)

A.源文件的全部范圍B.本程序的全部范圍

C.本函數(shù)的全部范圍D.從定義該變量的位置開始至本文件末尾

14.下列定義中,不用指針數(shù)組定義的是(D)

A.int*p[5];B.float*q[4];

C.int(*r)[6];D.char*w[7];

15.若有語(yǔ)句int*point,a=4;和point二&a;下面代表地址的一組選項(xiàng)是(B)

A.a,point,*&aB.&*a,&a,*point

C.*&point,*point,&aD.&a,&*point,point

16.下列程序的運(yùn)行結(jié)果是(C)

#difineN9

fun(chari])

(

char*p=s+4,*q=s;

inti;

for(i=0;i<4;i++,p++,q++)

(

s[i]=*p;

s[i+4J=*q

)

)

main()

charss[N]="ABCDEFGH";

fun(ss)

printf(H%s\n",ss);

A.EFGHABCDB.EFGHEFGH

C.ABCDEFGHD.ABCDABCD

17.設(shè)有結(jié)構(gòu)體的定義如下:(C)

structcjd{longbh;int*q;charxm[9];}:

貝I」sizeof(structcjd)的值是

A.14B.15

C.16D.17

18.設(shè)有說(shuō)明:intx=0xl5,y=0x0f;則x&y的結(jié)果是(B)

A.0x5B.0x15

C.OxfOD.Oxf5

19.如果在程序中要使用系統(tǒng)提供的函數(shù)sEen,則需要書寫的編譯預(yù)處理命令是(D)

A.#include<stdio.h>B.#include<math.h>

C.#incLude<string.h>D.#incLude<malloc.h>

20.由FILE*fp;fp=\fopen(aA\abc.txtz,,"r+");可以推知fopen函數(shù)的原型是(A)

A.char*fopen(char,char);B.FILE*fopen(char*,char*);

C.intfopen(char*,char*);D.FILFfopen(char*,char*);

二、多項(xiàng)選擇題(本大題共5小題,每小題2分,共10分)

在每小題列出的五個(gè)備選項(xiàng)中至少有兩個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后

的括號(hào)內(nèi)。錯(cuò)選、多選、少選或未選均無(wú)分。

21.下面基本結(jié)構(gòu)和特性中符合結(jié)構(gòu)化程序設(shè)計(jì)的要求的有(BCDE)

A.選擇結(jié)構(gòu)B.循環(huán)結(jié)構(gòu)

C.順序結(jié)構(gòu)

D.各結(jié)構(gòu)之間只有一個(gè)入口,至多兩個(gè)出口

E.各結(jié)構(gòu)之間只有一個(gè)入口,一個(gè)出口

22.若有intx;float;y下面結(jié)果為整型數(shù)的表達(dá)式有(ABCE)

A.(int)(x+y)B.(int)x+y

C.'a'+xD.x+(int)y

E.x*y

23.設(shè)有定義:inta[2][3];下面關(guān)于數(shù)組元素引用正確的有(BCD)

A.a[0JL3JB.a[OJ[OJ

C.a[2][l]D.a[l][2]

E.a[2][3]

24.設(shè)有關(guān)于結(jié)構(gòu)體類型的定義:(AC)

structcar

(

char*name;

floatprice;

structcar*next;

}*p,*head=NULL;

下面各選項(xiàng)中正確的有

A.p=(structcar*)MALLOC(sizeof(structcar);

B?p=(structcar*)malloc(s

溫馨提示

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

評(píng)論

0/150

提交評(píng)論