全國自考計算機(jī)基礎(chǔ)與程序設(shè)計歷年真題_第1頁
全國自考計算機(jī)基礎(chǔ)與程序設(shè)計歷年真題_第2頁
全國自考計算機(jī)基礎(chǔ)與程序設(shè)計歷年真題_第3頁
全國自考計算機(jī)基礎(chǔ)與程序設(shè)計歷年真題_第4頁
全國自考計算機(jī)基礎(chǔ)與程序設(shè)計歷年真題_第5頁
已閱讀5頁,還剩85頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

全國自考計算機(jī)基礎(chǔ)與程序設(shè)計歷年真題

全國2009年7月自考計算機(jī)基礎(chǔ)與程序設(shè)計試題

課程代碼:02275

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

在每小題列出的四個備選項中只有一個是符合題目要求的。請將其代碼填寫在題后的括

號內(nèi)。錯選、多選或未選均無分。

1.內(nèi)存每個基本單元都有唯一的序號,這個序號稱為()

A.地址B.字節(jié)

C.代碼D.字

2.計算機(jī)對編譯型高級語言的執(zhí)行方式是()

A.逐條語句邊解釋邊執(zhí)行,即解釋一條就執(zhí)行一條

B.將整個程序編譯完成后再執(zhí)行,不生成目標(biāo)代碼

C.將源程序編譯成目標(biāo)程序,執(zhí)行連接后的程序

D.將源程序解釋完畢后再執(zhí)行

3.下列轉(zhuǎn)義字符中,表示換行的是()

A.\0B.\n

C.\rD.\f

4.unsignedlong型數(shù)的取值范圍是()

A.-215~(2I5-1)B.-231-(23I-1)

C.0~(216-l)D.0-(232-l)

5.設(shè)有inta=3;表達(dá)式a+=a*=a*=a的值是()

A.3B.9

C.81D.162

6.下列四種運算符中,優(yōu)先級最低的是()

A.>=B.!

C.&&D.II

7.下列程序段的輸出結(jié)果是()

main()

|

inta=5,b=3,c;

c=a;a=b;b=c;

printf("%d,%d\nr,,a,b);

A35B.5,3

C.5,8D.8,3

8.下列程序段所表示的邏輯關(guān)系是()

if(a<b)

if(c==d)

x=l;

else

x=2;

[1a<b且c=d1a<b且c=d

A.x=<B.x=<

[2a>b且c*d2a>b

cf1a<bfic=d1a<b且c=d

(V一)D.x=?

[2a<bJEcd2a¥b

9.執(zhí)行下列程序段后,i的結(jié)果是()

inti=10;

switch(i){

case9:i+=l;break;

case10:i+=l;break;

case11:i+=l;break;

default:i+=l;break;

)

A.10B.ll

C.12D.13

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

a=100;

do

a=a+l;

while(a>120);

printf(,f%d",a);

A.100B.101

C.120D.121

11.關(guān)于break和continue語句,下列說法正確的是()

A.在循環(huán)體中可以用break語句結(jié)束本次循環(huán)

B.在循環(huán)體中可以用continue語句結(jié)束本次循環(huán)

C.break語句僅能使用在switch結(jié)構(gòu)中

D.可以使用continue語句跳出switch結(jié)構(gòu)

12.若有定義inta[4]={L2,3,4};則a[a[0]+2*a[2]?a[3]]等于()

A.1B.2

C.3D.4

13.定義如下變量和數(shù)組,則下列程序段的輸出結(jié)果是()

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

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

if(i%2!=l)printf(z,%d",x[i][i]);

A.19B.17

C.37D.39

14.若有定義staticcharstr2[10],strl[]=ffChina";欲將strl中的字符串拷貝到str2中去,下

列正確的語句是()

A.strcpy(str2,strl);B.strcpy(strl,str2);

C.strcpy(r,China",str2);D.strl=str2;

15.下列關(guān)于C程序的說法中不本碰的是()

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

B.一個C程序可以有多個名字為main的函數(shù)

C.一個C程序由一個或多個源程序文件組成

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

16.用數(shù)組名作為函數(shù)調(diào)用時的實參,實際上傳遞的是()

A.數(shù)組全部元素的值B.數(shù)組第一個元素的值

C.數(shù)組的首地址D.數(shù)組元素的個數(shù)

17.設(shè)有函數(shù)()

voidprint_value(int*x)

{printf(,z%d\n",++*x);}

執(zhí)行程序段inta=25;print_value(&a);的正確輸出是

A.23B.24

C.25D.26

18.語句float*p[6|;的含義是()

A.p是一個數(shù)組,有6個元素,每個元素都是浮點數(shù)

B.p是一個指針,指向有6個浮點數(shù)據(jù)的數(shù)組

C.p是一個指針數(shù)組,有6個元素,每個元素都是浮點型指針

D.p是一個指針,指向一個浮點數(shù)

19.設(shè)有下列程序()

#include"stdio.h"

voidmain(void)

{

unsignedx=l,y=2;

printf("%d\n",?(x&y));

)

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

A.-lB.O

C.lD.2

20.設(shè)有說明:FILE*fp;對于fp=fopen("cWabc.dat"r+");語句,下列說法正確的是

()

A.打開ASCII文件讀寫B(tài).打開二進(jìn)制文件讀寫

C.打開ASCH文件只讀D.打開二進(jìn)制文件只讀

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

在每小題列出的五個備選項中至少有兩個是符合題目要求的,請將其代碼填寫在題后的

括號內(nèi)。錯選、多選、少選或未選均無分。

21.下列數(shù)據(jù)中等值的有()

A.(0.100)2B.(0.101)2

C.(0.5)8D.(0.625)io

E.(0.A)]6

22.下列有關(guān)switch語句的說法中正確的有()

A.switch后面的表達(dá)式可以為任意類型

B.case后的每個常量表達(dá)式的值必須互不相同

C.若case后面有兩個或兩個以上的執(zhí)行語句,必須加花括號

D.一個case對應(yīng)一組執(zhí)行語句,多個case不可共用同一組執(zhí)行語句

E.default部分可有可無

23.下列對數(shù)組賦初值正確的有()

A.inta[][]={!,2,5,8,3,7};

B.inta[][3]={l,2,5,8,3,7};

C.inta[2][3]={l,2,5,8,3,7);

D.inta[2][]={l,2,5,8,3,7);

E.inta[3][3]={l,2,5,8,3,7};

24.若有說明:inta[]={L,2,3,4,5,6,7,8,9,0),i;當(dāng)givlO時,下列對數(shù)組元

素地址正確的表示有()

A.&a+1B.a+1

C.a++D.&a[i]

E.a+i

25.下列關(guān)于結(jié)構(gòu)體類型的定義正確的有()

A.structriverB.structriverC.struct

({(

intbranch;intbranch;intbranch:

charname[20];charname[20];charname[20];

);))

D.structE.structriver

{{

intbranch;intbranch;

charname[20];charname[20];

};structriver*next;

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

26.假設(shè)字長為8位,請寫出-1的原碼和補(bǔ)碼。

27.寫出for語句的一般形式并分析循環(huán)體被執(zhí)行的條件。

28.字符數(shù)組的初始化與字符串指針變量的初始化有什么不同?

29.語句fwrite(stu,size,n,fp);中stu>size、n和fp的含義各是什么?

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

30.閱讀下列程序并寫出運行結(jié)果。

voidmain(void)

{inta=987,b=100,x,y;

y=b:

x=a/b;

print(u%d,%d\n",x,y);

)

31.閱讀下列程序,若輸入0,3并回車,則程序的輸出結(jié)果是什么?

voidmain(void)

{intx,y,z;

scanf(M%d,%d\&x,&y);

if(x<y)

{z=x;x=y;y=z;}

print("%d,%d\n",x,y);

)

32.下列程序的功能和輸出結(jié)果是什么?

voidmain(void)

{intk=0,total=0;

while(k<=100){

total+=k;

k++;}

print("total=%d\n",total);

)

33.閱讀下列程序并寫出運行結(jié)果(注:A的ASCII碼值為65,a的ASCII碼值為97)。

voidmain(void)

{inti=64;

chars[20],*p=s;

while(i++<=73){

*p=i%2==0?i+32:i;

P++;

}

*p='\0';

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

)

34.閱讀下列程序并寫出運行結(jié)果。

intfib(intn)

{

staticintfO=O,fl=l,i,f;

for(i=3;i<=n;i++){

f=ro+n;ro=n;n=f;

printf(,,fO=%d,fl=%d\n,,,fO,fl);

return(f);

}

voidmain(void)

{

printf(,,%d\n,,,fib(3)+fib(3));

}

35.閱讀下列程序并寫出程序的運行結(jié)果。

#include,^string.h'^

#includenmalloc.hn

structplanet

(

charname[20];

doubleweight;

structplanet*next;

)*head=NULL;

voidmain(void)

(

structplanet*p;

char*planet_name[3]={',earth,',',venus',,',mars,,};

doubleplanet.weight[3]={25455700.565,11253300.437,7286320.512};

intj;

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

(

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

strcpy(p->name,planet_name[j]);

p->weight=planet_weight[j];

p->next=head;

head=p;

)

p=p->next;

printf("%s,%lf\n”,p->name,p->weight);

)

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

36.從鍵盤上輸入20個整數(shù),求其中正數(shù)的累加和并輸出結(jié)果。

37.在文本文件c:\pxl.dat中有10個實型數(shù)據(jù)(每兩個數(shù)之間用逗號隔開),編程將這10個數(shù)

按從小到大排序后,寫到文本文件c:\xpl.dat中。

全國2009年4月自考計算機(jī)基礎(chǔ)與程序設(shè)計試題

課程代碼:02275

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

在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的

括號內(nèi)。錯選、多選或未選均無分。

1.衡量存儲器的基本單位是()

A.bitB.byte

C.KBD.word

2.Windows操作系統(tǒng)是()

A.單用戶、單任務(wù)B.單用戶、多任務(wù)

C.多用戶、單任務(wù)D.多用戶、多任務(wù)

3.組成微機(jī)主存儲器的是()

A.CD-ROM和RAMB.硬盤和RAM

C.硬盤和CD-ROMD.ROM和RAM

4.下列數(shù)據(jù)中最大數(shù)是()

A.(1010010)2B.(123.4)8

C.(84.5)10D.(55?6

5.在TurboC2.0中,運行一個程序后,要查看運行結(jié)果可按鍵()

A.Alt+FlB.Alt+F5

C.Alt+F9D.Alt+FlO

6.下列是合法C語言常量的是(

A.eB.7E4.0

C.E4D.-9.13E-30

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

A.0B.1

C.3D.4

8.以指數(shù)形式輸出實型數(shù)的格式說明符是()

A.%uB.%x

C.%fD.%e

9.下列程序的輸出結(jié)果是()

main()

{intx=5,y;

if(x<O)y=-l;

if(x==O)y=O;

y=i;

printf(,f%d",y);

)

A.-5B.-1

C.OD.1

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

i=l;

while(i<3){

j=l;

while(j<=i){

printf(,f%d"j+j);

j++;

)

i++;

printf("\n");

A.2334B.234

C.23D.2

3434

IL已知strl和str2是字符數(shù)組名,下面函數(shù)中能正確地完成字符串輸出的是()

A.puts(strl,str2)B.puts(str2)

C.putchar(strl)D.putchar(strl,str2)

12.下列關(guān)于函數(shù)的說明中不正頌的是()

A.函數(shù)名后面可以不要一對圓括號

B.函數(shù)參數(shù)類型必須作說明

C.函數(shù)形參個數(shù)可以是一個、多個或沒有

D.空函數(shù)被調(diào)用時不做任何工作

13.若有定義:inta[5];則a數(shù)組中首元素的地址可以表示為()

A.&aB.a+1

C.aD.&a[l]

14.設(shè)有char*s="\ta\017bc";則指針變量s指向的字符串在內(nèi)存中所占的字節(jié)數(shù)是

()

A.5B.6

C.7D.9

15.下列關(guān)于結(jié)構(gòu)體類型的定義正確的是()

A.structtreeB.structtree

{intbranch;{intbranch;

charname[20J;charname[20],

char*relation;char*relation,

hi.bi.

C.structtreeD.structtree

{intbranch{intbranch;

charname[20]charname[20];

char*relationchar*relation;

))

16.下列各個位運算符的優(yōu)先級從左到右依次降低的是()

A.1&人>>B.A&>>I

C.?D.->>r

17.設(shè)有說明:intu=l,v=3,w=5;表達(dá)式:v&~~ulw的值是()

A.3B.5

C.6D.8

18.設(shè)有下列程序:()

#include,rstdio.h,r

main()

unsignedx=8,y=2;

printf("%d\n",yl?(x&y));

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

A.-1B.Oxff

C.127D.65535

19.若有定義:#defineP(x)x*x*x+l和說明語句:inta=2;則表達(dá)式P(2)的值是

()

A.6B.8

C.9D.10

20.在語句fgets(str,n,p);中,下列說法不事碰的是()

A.str是字符指針B.一次可以讀n個字符

C.str是字符數(shù)組名D.一次可以讀n-1個字符

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

在每小題列出的五個備選項中至少有兩個是符合題目要求的,請將其代碼填寫在題后的

括號內(nèi)。錯選、多選、少選或未選均無分。

21.下列關(guān)于計算機(jī)的敘述中正確的是()

A.CPU是計算機(jī)系統(tǒng)的部件

B.I/0設(shè)備不是計算機(jī)系統(tǒng)的部件

C.計算機(jī)區(qū)別于其他計算工具的本質(zhì)特點是能存儲數(shù)據(jù)

D.“裸機(jī)”是指不配置任何軟件的計算機(jī)

E.計算機(jī)指令是控制計算機(jī)進(jìn)行操作的命令

22.設(shè)有inta=3,b=-5;下列表達(dá)式的值等于1的有()

A.a&&b<0B.fabs(b)-a-l>0

C.a>b&&b<0D.(a,2,-5)=(b,2,a)

E.a+b<0

23.下列關(guān)于break、goto、continue語句的說法中正確的是()

A.break語句能夠用于循環(huán)語句中

B.break語句不能用于switch語句中

C.goto語句可以用于直接從多層循環(huán)中退出

D.continue語句可用于跳出循環(huán)體

E.continue語句不能用于switch語句中

24.若有定義:inty[4][4],(*p)[4];及賦值p=y;則下列語句中可以輸出數(shù)組元數(shù)y⑵⑼的值的

語句是()

A.print”"%d\n",&y[2][0]);B.printf(/,%d\n",y⑵⑼);

C.printf("%d\n",p⑵[0]);D.printf("%d\n〃,y⑵);

E.printf("%d\n",*(*(y+2));

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

structworker

intid;

char*name;

floatsalary;

}wl={102035,"Lihua”,2560.50},*p;

下列選項中語句語法正確的有()

A.p=wl;B.p=&wl;

C.p->id=wl->idD.p->id=wl.id;

E.p.salary=wl.salary;

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

26.有無default對switch語句有什么不同的影響?

27.寫出do-while語句的一般形式及其執(zhí)行過程。

28.定義chara(]="Iamastudent.",*str=a;等價于

charaf]="Iamastudent.,*str;

str=a;

嗎?為什么?

29.設(shè)有說明:

structvegetable

(

char*part;

char*color;

}clove;

char*part.of_vegetable[3]={AA"BB","CC"};

char*seven_color={z,11〃,“22〃,〃33”44〃,"55",〃66",〃77〃};

請分別寫山將clove的成員part指向〃BB",成員color指向"55"的C語句。

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

30.閱讀分析下面程序后,寫出程序的運行結(jié)果。

#include"stdio.h"

main()

(

inta=978,x,y,z,ij,w;

x=a/100;

y=(a-100*x)/10;

z=a-10*y-100*x;

i=y>z?z:y;

j=y<=z?z:y;

w=100*x+10*i+j;

printf("%d,%d,%d,%d\n”,x,y,z,w);

)

31.閱讀分析下面程序后,寫出程序的運行結(jié)果。

#include"stdio.h"

main()

(

intn,m;

fbr(n=1;n<=5;n++)

for(m=l;m<=4;m++)

printf(f,%4d",m*n);

printf("\n〃);

)

)

32.閱讀分析下面程序后,寫出程序的運行結(jié)果。

#include''stdio.h"

main()

(

intarr[10],i,k=0;

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

arr[i]=i;

fbr(i=l;i<=4;i++)

(

k+=arr[i]+i;

printf(w%5d",k);

)

)

33.閱讀分析下面程序后,寫出程序的運行結(jié)果。

#includenstdio.h,r

intfun(intx)

{

intp;

if(x==0llx==l)

return(3);

p=x-fun(x-2);

printf(,f%5d”,p);

return(p);

)

main()

(

fun(9);

)

34.閱讀下面程序,分析cat函數(shù)的功能并寫出程序的運行結(jié)果。

#includef,stdio.h,f

voidcat(char*s,char*t)

(

while(*s)s++;

while((*s++=*t++)!='\0/);

)

main()

(

charsi[80]="computer,s2[80]=//Pentium」';

cat(s2,sl);

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

}

35.閱讀分析下面部分程序:

structcjd

charname[9];

floatscore|2][2|;

}x;

floatt[2][2]={70.5,65.0,83.0,92.5};

intj,k;

請用for循環(huán)將t數(shù)組中的元素依次賦給結(jié)構(gòu)變量x中score數(shù)組的對應(yīng)元素。

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

36.請編程從鍵盤上輸入十個整數(shù),計算其中大于零的奇數(shù)的平均值,并輸出這些大于零的

奇數(shù)以及它們的平均值。

37.有若干個學(xué)生(不超過50人)的某一門課的成績放在文件c:\cj.dat中,要求編程統(tǒng)計出

90?100分,80?89分,70?79分,60?69分,0?59分的人數(shù)各有多少人。

全國2008年7月自考計算機(jī)基礎(chǔ)與程序設(shè)計試卷

課程代碼:02275

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

在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的括

號內(nèi)。錯選、多選或未選均無分。

1.一個完整的計算機(jī)系統(tǒng)應(yīng)該包括()

A.主機(jī)和外設(shè)B.主機(jī)和操作系統(tǒng)

C.硬件系統(tǒng)和系統(tǒng)軟件D.硬件系統(tǒng)和軟件系統(tǒng)

2.若用八位二進(jìn)制表示一個整數(shù),則4在計算機(jī)中的表示是()

A.11111100B.11111011

C.10000100D.00000100

3.下列轉(zhuǎn)義字符中,表示回車的是()

A.\0B.\n

C.\rD.\f

4.若定義doubled;則d在內(nèi)存中分配的字節(jié)數(shù)是()

A.1個B.2個

C.4個D.8個

5.下列表達(dá)式中運算結(jié)果為3的表達(dá)式是()

A.(-7)%4B.7/4+2

C.7/4*4-4D.8/3+8Z3

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

A.-6B.-5

C.-4D.-3

7.在printf語句中,格式說明符u表示()

A.以十進(jìn)制帶符號形式輸出整數(shù)

B.以十六進(jìn)制帶符號形式輸出整數(shù)

C.以十進(jìn)制無符號形式輸出整數(shù)

D.以十六進(jìn)制無符號形式輸出整數(shù)

8.若有inta=3,b=4,c=5,d=6,x=4;執(zhí)行下列程序段后x的值是()

if(a<b)

if(c==d)

else

x=d++

A.4B.5

C.6D.7

9.關(guān)于switch中的表達(dá)式,正確的說法是()

A.它必須是算術(shù)表達(dá)式B.它必須是關(guān)系表達(dá)式

C.它必須是邏輯表達(dá)式D.它可以是任意類型的表達(dá)式

10.對do語句while(表達(dá)式);結(jié)構(gòu)的循環(huán),下列說法正確的是()

A.當(dāng)表達(dá)式的值為非零時不執(zhí)行循環(huán)體

B.循環(huán)體至少被執(zhí)行一次

C.當(dāng)表達(dá)式的值為零時循環(huán)體一次也不執(zhí)行

D.循環(huán)體僅被執(zhí)行一次

11.只能在循環(huán)語句中用于結(jié)束本輪循環(huán)的語句是()

A.break;B.continue;

C.gotoD.if

12.若有定義inta[4]={l,2,3,4};則a[(a[l]*a[3]+a[0])3-l)]的值是()

A.1B.2

C.3D.4

13.若有定義inta[3][5];則數(shù)組a在內(nèi)存中分配的字節(jié)數(shù)是()

A.8B.15

C.24D.30

14.已知strl和str2是字符串?dāng)?shù)組,下列哪一個函數(shù)能正確的完成字符串的輸入?

()

A.gets(strl)B.gets(strl,str2)

C.getchar(strl)D.getchar(strl,str2)

15.下列關(guān)于函數(shù)的描述中正確的是()

A.C程序中有調(diào)用關(guān)系的所有模塊必須放在同一個源文件中

B.函數(shù)必須有返回|值,否則不能使用函數(shù)

C.C程序必須由一個或一個以上函數(shù)構(gòu)成

D.C函數(shù)既可以嵌套定義又可以嵌套調(diào)用

16.設(shè)有下列程序,則()

intd=10;

main()

(

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

)

A.a是全局變量,d是全局變量

B.a是局部變量,d是全局變量

C.a是全局變量,d是局部變量

D.a是局部變量,d是局部變量

17.若有說明:int*pl,*p2,m=5,n;以下進(jìn)行賦值的語句中合理的是()

A.pl=m;B.&p2=n;

C.pl=&m;p2=pl;D.*pl=&m;

18.下列為指針數(shù)組定義的是()

A.float(*)[6];B.floatpf6];

C.float(*)();D.float*p[6];

19.設(shè)有說明:FILE*fp;對于fp=fopen("c:\Xabc.dat"rb");語句,下列說法中不

正確的是()

A.fp將指向abc.dat文件

B.以只讀方式打開二進(jìn)制文件

C.打開文件的文件名是abc.dat

D.以讀寫方式打開ASCII碼文件

20.ASCII碼文件的結(jié)束可以用符號常量EOF表示。EOF的值是()

A.0B.1

C.-1D.不能確定的值

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

在每小題列出的五個備選項中至少有兩個是符合題目要求的,請將其代碼填寫在題后的

括號內(nèi)。錯選、多選、少選或未選均無分。

21.下列數(shù)據(jù)數(shù)值相等的有()

A.(11111111)2B.(377)8

C.(255)10D.(FF)16

E.(256)10

22.以下if語句中沒有語法錯誤的有()

A.if(x>O)printf(,,%f",x);

elseprintf(/z%f",x);

B.if(x>O){x=x+y;printf(,/%f",x)}

elseprintf(,z%f",x)

C.if(x>0){x=x+y;printf(%f",x);}

elseprintf(u%f",x);

D.if(x>O)x=x+y;printf(,f%f",x);

elseprintf(u%f",x)

E.ifx>y

x++;

else

x--;

23.設(shè)有程序如下:

main()

{inti,j,a[]={l,3,5,7,9,11,13,15);

i=5;

switch(i)

{default;printf(%d\n",a[i]);

casel:printf(//%d\n”,a[3]);

case2:printf("%d\n",af++i]);break;

case3:printf(z,%d\n",a[-i]);

)

)

上述程序的輸出結(jié)果不包括()

A.5B.7

C.9D.11

E.13

24.設(shè)有定義及賦值:()

inta[10]={0,1,2,3,4,5,6,7,8,9},*p;

p=a;

則引用a中值為5的元素的正確形式是

A.a[5]B.a[4]

C.*(a+5)D.p[5]

E.*(p+5)

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

A.u&vlwB.ulvlw

C.uAvlwD.w&vlu

E.uAwlv

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

26.C語言中整型常量有兒種形式,它們是如何表示的?

27.寫出語句if(表達(dá)式)語句1else語句2的執(zhí)行過程。

28.若定義char*str;然后用gets(str);輸入字符串可以嗎?為什么?

29.單個字符的讀函數(shù)fgetc(fp),其中fp表示什么?該函數(shù)的功能是什么?

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

30.閱讀下面程序并寫出運行結(jié)果。

main()

(

inta=47,x,y,z,w;

x=a/2;

y=a%2;

z=a++;

w=++a;

printf(n%d,%d,%d,%d”,x,y,z,w);

)

31.閱讀分析下面程序,請說明程序的功能;然后寫出當(dāng)鍵盤輸入14時,程序的運行

結(jié)果。

main()

(

intx;

scanf(u%d”,&x);

if(x%5==0&&x%7==0)

printf(,fyes");

else

printf(z,);

)

32.閱讀下面程序并寫出運行結(jié)果。

main()

staticinta[]={5,3,7,2,1,5,4,10};

ints=0,k;

for(k=0;k<8;k+=3)

s+=a[k];

printf(,ra[%d]=%d,s=%d\n",k,a[k],s);

)

)

33.閱讀下面程序并寫出運行結(jié)果。

check(intn,intk)

(

intm;

do{

m=n%10;n=n/10;

}while(k--);

retum(m);

)

main()

(

intj,y=2345;

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

printf("j=%d,numberis%d\n",j,check(y,j));

)

34.閱讀分析下面程序并寫出運行結(jié)果。

main()

(

char*a[J={"Pascal"CLanguage","dBase"Cobol"};

intj;

for(j=3;j>=Oy--)

printf(H%s\n"

35.閱讀下面程序并說明語句:x=p->drO]>p->d[l]?p->d[O]:p->dri];的含義,然后寫

出程序的運行結(jié)果。

structnumber

intd[2];

}n={12,8},*p=&n;

main()

(

intx;

x=p->d[0]>p->d[1J?p->d[0]:p->d[l];

printf(f,%d",x);

)

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

36.從鍵盤上輸入一個正整數(shù)n(n<10),求n的階乘并輸出結(jié)果。

37.由鍵盤輸入n*m個數(shù),并把它們存放在一個n行m列的數(shù)組中(n、m均不超過20),

(1)按n行m列輸出該二維數(shù)組;

(2)求出該二維數(shù)組全部元素的平均值;

(3)把該二維數(shù)組中大于平均值的元素的值、以及它們行列下標(biāo)打印出來。

全國2008年4月自學(xué)考試歷年試卷計算機(jī)基礎(chǔ)與程序設(shè)計試題

課程代碼:02275

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

在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的

括號內(nèi)。錯選、多選或未選均無分。

1.存儲容量1KB等于()

A.23字節(jié)B.21°字節(jié)

C.220字節(jié)D.23°字節(jié)

2.在計算機(jī)中,指令通常是由(

A.操作碼、操作數(shù)組成B.源操作數(shù)、目標(biāo)操作數(shù)組成

C.反碼、補(bǔ)碼組成D.直接尋址、目的尋址組成

3.與十進(jìn)制數(shù)39等值的二進(jìn)制數(shù)是()

A.00100111B.01001001

C.10100111D.01011000

4.下列設(shè)備中屬于輸出設(shè)備的是()

A.掃描儀B.鍵盤

C.鼠標(biāo)D.顯示器

5.整數(shù)一2在機(jī)器內(nèi)存中的表示是()

A.1000000000000010B.1111111111111110

C.11111111111111101D.1111111111111111

6.下列運算符中優(yōu)先級最低的是()

A.>B.!

C.%D.==

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

A.—6B.-5

C.-4D.-3

8.以十進(jìn)制無符號形式輸出整數(shù)的格式說明符是()

A.%uB.%x

C.%oD.%d

9.下列程序段的輸出結(jié)果是()

voidmain(void)

(

inyy=l,x=5;

if(x<O)y=-1;

if(x>=O)y=O;

printf(0%d\n",y);

)

A.-1B.0

C.1D.5

10.執(zhí)行如下程序段后,x的值是()

intx=l,y=-1;

if(y<O)x—=y;

elsex+=y;

A.-1B.0

C.1D.2

11.執(zhí)行while(表達(dá)式)循環(huán)的條件是()

A.當(dāng)表達(dá)式的值為。時B.僅當(dāng)表達(dá)式的值為1時

C.當(dāng)表達(dá)式的值非。時D.當(dāng)表達(dá)式的值不為1時

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

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

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

printf("%dM,i+j);

A.2334B.234

C.23D.2

3434

13.若有定義定ts[4]={l,2,3,4};則a[a⑵-3*a[0]+l]的值是()

A.1B.2

C.3D.4

14.下列關(guān)于C語言程序說法正確的是()

A.C語言程序總是從有定義的函數(shù)起順序執(zhí)行

B.在C語言程序中,被調(diào)用函數(shù)必須在main函數(shù)中定義

C.C語言程序中的main函數(shù)必須放在程序的開始部分

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

15.若有inta[]={1,2,3,4,5,6,7,8910},且OWiV10,則對數(shù)組元素地址正確表示的是

()

A.&a+lB.&a++

C.&aD.&a[i]

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

A.structABCB.structABC

((

intainta;

charbcharb;

char*pchar*p;

)}

C.structABCD.structABC

{(

inta;inta,

charb;charb,

char*p;char*p,

};);

17.下列位運算符中,表示按位異或操作的是()

A.B.I

C.AD.&

18.下列各個位運算符的優(yōu)先級從左到右依次升高的是()

A.?|&-B.|?&~

C.|&?~D.~|&?

19.設(shè)有說明:intu=l,v=3;則表達(dá)式u?=v的值是()

A.0B.1

C.3D.8

20.如果文件存儲的是數(shù)據(jù)在內(nèi)存中存放的字節(jié)形式,則該文件是()

A.ASCII文件B.文本文件

C.二進(jìn)制文件D.設(shè)備文件

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

在每小題列出的五個備選項中至少有兩個是符合題目要求的,請將其代碼填寫在題后

的括號內(nèi)。錯選、多選、少選或未選均無分。

21.存儲在下列哪些設(shè)備中的信息可以長期保存?()

A.RAMB.ROM

C.硬盤D.軟盤

E.光盤

22.下列語句中正確的有()

A.if(x>y);

B.if(x=y)&&(x!=O)x+=y;

C.if(x!=y)scanf(<4%d,&x);elsescanf("%d",&y);

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

E.if(x<y)x++;y++;elsex----;y------;

23.下列循環(huán)將會產(chǎn)生死循環(huán)的有()

A.while(l);B.do{}while(0);

C.do{}while(l);D.for(k=l;k>-10;k++);

E.for(k=l;k=10;k++,k——);

24.設(shè)有二維數(shù)組inta[4][3];下列表示數(shù)組元素a[0]⑵地址的有()

A.a[2]B.*a

C.*a+2D.a[0]+2

E.&a[0][2]

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

structdata

intnum;

structdata*next;

}*p,*head=NULL;

下列語句中正確的有

A.p=(structdata*)malloc(sizeof(structdata));

B.p=(structdata)malloc(sizeof(structdata));

C.p=(structdata*)malloc(sizeof(data));

D.p—>next=head;

E.p.next=head;

三、簡答題(本大題

溫馨提示

  • 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

提交評論