自學(xué)考試高級(jí)語言程序設(shè)計(jì)歷年真題和答案_第1頁
自學(xué)考試高級(jí)語言程序設(shè)計(jì)歷年真題和答案_第2頁
自學(xué)考試高級(jí)語言程序設(shè)計(jì)歷年真題和答案_第3頁
自學(xué)考試高級(jí)語言程序設(shè)計(jì)歷年真題和答案_第4頁
自學(xué)考試高級(jí)語言程序設(shè)計(jì)歷年真題和答案_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

2001年10月自考高級(jí)語言程序設(shè)計(jì)(一)試題

第一部分選擇題

一、單項(xiàng)選擇題(本大題共20小題,每小題1分,共20分)在每小題列出的四個(gè)選項(xiàng)中只有一個(gè)選項(xiàng)是符合題目要

求的,請(qǐng)將正確選項(xiàng)前的字母填在題后的括號(hào)內(nèi)。

LC語言程序編譯時(shí),程序中的注釋部分

A.參加編譯,并會(huì)出現(xiàn)在目標(biāo)程序中

B.參加編譯,但不會(huì)出現(xiàn)在目標(biāo)程序中

C.不參加編譯,但會(huì)出現(xiàn)在目標(biāo)程序中

D.不參加編譯,也不會(huì)出現(xiàn)在目標(biāo)程序中

2.下列表達(dá)式的值為0的是()

A.3%5B.3/5.0C.3/5D.3<5

3.正確的C語言用戶自定義標(biāo)識(shí)符是()

A.printB.floatC.when?D.random%2

4.設(shè)inta=3:則表達(dá)式a<l&&-a>l的運(yùn)算結(jié)果和a的值分別是()

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

5.下列敘述中,正確的是()

A.引用帶參的宏時(shí),實(shí)際參數(shù)的類型應(yīng)與宏定義時(shí)的形式參數(shù)類型相一致

B.宏名必須用大寫字母表示

C.宏替換不占用運(yùn)行時(shí)間,只占編譯時(shí)間

D.在程序的一行上可以出現(xiàn)多個(gè)有效的宏定義

6.下列保留字中用于構(gòu)成循環(huán)結(jié)構(gòu)的是()

A.ifB.whileC.switchD.default

7.與語句if(a>b)if(c>d)x=l;elsex=2;等價(jià)的是()

A.if(a>b){if(c>d)x=l;elsex=2;}

B.if(a>b){if(c>d)x=1;}elsex=2;

C.if((a>b)&&(c>d))x=l;elsex=2;

D.if(a<=b)x=2;elseif(c>d)x=l;

8.設(shè)charx='";則printf(nx=%c,y=%c\nn,x,97);的輸出是

A.x=a,y=97B.x=97,y=aC.x=97,y=97D.x=a,y=a

9.設(shè)intaD[4]={1,2,3,4,5,6,7,8,9};則數(shù)組a的第一維的大小是()

A.2B.3C.4D.無確定值

10.執(zhí)行下列程序

inta[3][3]={{l},{2},{3});

intb[3][3]={1,2,3);

main()

,,

{printf("%d\n>a[1][0]+b[0][0]);}

后輸出的結(jié)果是

A.0B.lC.2D.3

11.設(shè)charstr[100];inti=5;則引用數(shù)組元素的錯(cuò)誤形式是()

A.str[i+10]B.*(str+i)C.*(str+i-l)D.*((str++)+i)

12設(shè).intx[]={l,2,3,4,5,6},*p=x;則值為3的表達(dá)式是()

A.p+=2,*++pB.p+=2,*p++C.p+=3,*pD.p+=2,++*p

13.在函數(shù)內(nèi),定義變量時(shí)存儲(chǔ)類型符可省略的是()

A.autoB.staticC.extern□.register

14.執(zhí)行下列程序()

inta=3,b=4;

voidfun(intxl,intx2)

{printf(M%d,%d\nH,x1+x2,b);}

main()

{inta=5,b=6;fun(a,b);)

后輸出的結(jié)果是

A.3,4B.ll,1C.ll,4D.11,6

15.設(shè)有定義語句

struct

{inta;floatb;}d[3|={{l,4},{2,5},{6,7}};

則printf("%3.1f\n",d[2].a*d⑵.b/d[l].b);的輸出是()

A.2.5B.2.0C,8.0D.8.4

16.設(shè)有定義語句:enumtl{al,a2=7,a3,a4=15}time;()

則枚舉常量a2和a3的值分別為

A.1和2B.2和3C.7和2D.7和8

17.將一個(gè)整數(shù)10002存到磁盤上,以ASCII碼形式存儲(chǔ)和以二進(jìn)制形式存儲(chǔ),占用的字節(jié)數(shù)分別是()

A.2和2B.2和5C.5和2D.5和5

18.在文件使用方式中,字符串“rb”表示()

A.打開一個(gè)已存在的二進(jìn)制文件,只能讀取數(shù)據(jù)

B.打開一個(gè)文本文件,只能寫入數(shù)據(jù)

C.打開一個(gè)已存在的文本文件,只能讀取數(shù)據(jù)

D.打開一個(gè)二進(jìn)制文件,只能寫入數(shù)據(jù)

19.執(zhí)行下列程序()

#defineF(y)15?y

#definePRINT(a)printf("%d",a)

main()

(

PRINT(F(2));

)

后輸出的結(jié)果是

A.3B.3.5C.14D.7.5

20.main()函數(shù)可以帶兩個(gè)形參,一般分為argc和argv,其中argv可以定義為()

A.intargvB.char*argv[];C.charargv[];D.char**argv[];

第二部分非選擇題

二、填空題(本大題共10小題,每小題2分,共20分)

21.初始化值是0.618的雙精度變量a的定義形式為。

22.表達(dá)式!10!=1的值是o

23.“20<xW30”的C語言表達(dá)式是。

24.表達(dá)式a=l,a+=1,a+1,a++的值是。

25.設(shè)inti=5;則循環(huán)語句while(i>=l)i??;執(zhí)行后,i的值為。

26.被調(diào)函數(shù)在執(zhí)行結(jié)束時(shí):這個(gè)函數(shù)中定義的類型的變量不被釋放。

27.設(shè)

structstudent

intno;

charname[12];

floatscore[3];

}sl,*p=&sl;

用指針法給si的成員no賦值1234的語句是。

28.C語言程序中對(duì)文本文件的存取是以為單位進(jìn)行的。

29.設(shè)charstring[]=,This_is_a_book!";則數(shù)組的長度應(yīng)是。

30.設(shè)inta[2][3]={{2},{3}};則數(shù)組元素的值為3。

三、程序分析題(本大題共5小題,每小題5分,共25分)閱讀下列程序,將輸出結(jié)果寫到各題右側(cè)的空白處

31.inta=200;

main()

{inti;

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

{a++;

printf(u%d,,,,a);

s();

)

)

s()

{staticinta=20;

a++;

printf(%d\nn,a);

}

32.#include“stdio.h”

main()

{charc;

c=getchar();

if(c>='a,&&c<=,w'llc>='A,&&c<='W,)c=c+3;

elseif(c>='x'&&c<='z')llc>='X,&&c<=,Z')c=c-23;

printf(u%\n",c);

)

設(shè)從鍵盤上輸入Next/

33.#defineN7

main()

{inti,j,temp,a[N]={1,2,3,4,5,6,7};

for(i=0;i<N/2;i++)

{j=N-l-i;

temp=a[i];a[i]=a[j];a[j]=temp;

)

for(i=0;i<N;i++)printf(',%5d,',a[i]);

)

34.structporb

{char*name;

intcount;

}x[]={"Lining';19,"Langping';21;'Zhujianhuan,20};

main()

{inti;

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

printf("%s:%d\n”,x[i].namecount);

)

35.main()

{union

{shorta;charch;

}M;

M.a=100;M.ch=,A,;

printf("%d,%d,%c\n",sizeof(M),M.a,M.ch);

)

四、程序填充題(本大題共3小題,每小題6分,共18分)給出下列程序,將橫線處缺少的部分補(bǔ)上,使其能正確運(yùn)

行。

36.以下程序的功能是用選擇法對(duì)數(shù)組a中的整數(shù)由小到大進(jìn)行排序。

voidsort(intb[],intn)

{int

for(i=0;i<n-l;i++)

for(—;i<n;i++)

if(b[i]—b|j])

{t=b[il;;b|j|=t;}

)

main()

{inta[]={5,8,6,2,7,4,l,3};

inti;

sort(a,8);

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

printf("%5dM,a[i]);

printf(Ann);

)

37.輸入一字符串(換行為結(jié)束標(biāo)志)統(tǒng)計(jì)其中數(shù)字(0,1,2,9不單獨(dú)統(tǒng)計(jì))、空白和其它字符出現(xiàn)的次數(shù)。

#includeastdio.h"

main()

{charc;

ini;

while((c=getchar())!=\n')

{

if()digit++;

elseif(c="llc=\t')++blank;

else;

)

printf("digit=%d,blank=%d,other=%d\n",digit,blank,other);

)

38.先為數(shù)組a輸滿數(shù)據(jù),再為x輸入一個(gè)數(shù)據(jù),在數(shù)組a中找出第個(gè)與x相等的元素并將其下標(biāo)輸出,若不存在

這樣的元素,則輸出“Notfound!”標(biāo)志。

main()

{inti,x,a[10];

for(i=0;i<l0;i++)scanf(”%d”,___);

scanf("%d'',&x);printf(,,%d",x);

fbr(i=O;i<10;i++)if()break;

if(i_10)printf("position:%d\n”,i);

elseprintf("Notfound!\nM,x);

)

五、程序設(shè)計(jì)題(第39小題5分,第40、41小題各6分,共17分)。

39.求出10至1000之內(nèi)能同時(shí)被2、3、7整除的數(shù),并輸出。

40.求1到100之間的奇數(shù)之和及偶數(shù)之和,并將二者輸出。

41.輸入一字符串,檢查是否回文(回文是指正反序相同,如,LeveL),若是則輸出“Yes”,否則輸出“No”。

全國2001年10月自考高級(jí)語言程序設(shè)計(jì)(一)答案

課程代碼:00342

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

l.D2.C3.A4.B5.C

6.B7.A8.D9.B10.D

ll.D12.B13.A14.C15.D

16.D17.C18.A19.A20.B

二、填空題(本大題共10小題,每小題2分,共20分)

21.doublea=0.618

22.1

23.x>20&&x<=30或者(x>20)&&(x<=30)

24.2

25.0

26.靜態(tài)存儲(chǔ),或者static

27.p->no=1234;或者(*p).no=1234;

28.字節(jié)

29.16

30oa[l][0]

三、程序分析題(本大題共5小題,每小題5分,共25分)

31.201,21

202,22

203,23

204,24

205,25

32.Q(若結(jié)果為Qhaw,只得3分)

33.7654321

34.Lining:19

Langping:21

Zhujianhua:20

35.2,65,A

四、程序填充題(本大題共3小題,每小題6分,共18分)

36.(l)j=i+l

(2)>

(3)b[i]=bU]

37.(l)digit=0,blank=0,other=0

(2)c>='0&&c<=9

(3)++other或者other++

38.(l)&a[i]或者a+i

(2)x=a[i]

(3)<

五、程序設(shè)計(jì)題(第39小題5分,第40、41小題各6分,共17分)

39.main()

{inti;

for(i=10;i<=1000;i-H-)

if((i%2==0)&&(i%3==0)&&(i%7==0))

printf("i=%d\nu,i);

)

4O.main()

{inta=0,b=0,i;

for(i=2;i<=100;i4-=2)

{a+=i;b+=i-l;}

printf(nSumofevennumber=%d\nH,a);

printf("Sumofoddnumber=%d\n",b);

)

41.#include"string.h"

main()

{inti,n;staticcharstr[80];

gets(str);n=strlen(str);

for(i=0;i<n/2;i++)

if(str[i]!=str[n-l-i])

{printf(MNo!\nM);break;}

if(i==n/2)printf(nYes!\nn);

)

浙江省2002年1月高等教育自學(xué)考試

高級(jí)語言程序設(shè)計(jì)(一)試題

課程代碼:00342

一、單項(xiàng)選擇題(在每小題的四個(gè)備選答案中,選出一個(gè)正確答案,并將正確答案的序號(hào)填在題干的括號(hào)內(nèi)。每小題

1分,共15分)

1.完成C源文件編輯后、到生成執(zhí)行文件,C語言處理系統(tǒng)必須執(zhí)行的步驟依次為()

A.連接、編譯B.編譯、連接

C.連接、運(yùn)行D.運(yùn)行

2.常數(shù)的書寫格式?jīng)Q定了常數(shù)的類型和值,0x1011是()

A.8進(jìn)制整型常量B.字符常量

C.16進(jìn)制整型常數(shù)D.2進(jìn)制整型常數(shù)

3.C語句“x*=y+2;”還可以寫作()

A.x=x*y+2;B.x=2+y*x;

C.x=x*(y+2);D.x=y+2*x;

4.下列格式符中,可以用于以8進(jìn)制形式輸出整數(shù)的是()

A.%dB.%8d

C.%oD.%ld

5.下列各語句中,能夠且僅輸出整型變量a、b中最大值的是()

A.if(a>b)printf(r,%d\n”,a);printf("%d\n",b);

B.printf(,r%d\n",b);if(a>b)printf("%d\n",a);

C.if(a>b)printf(%d\n",a);elseprintf("%d\n",b);

D.if(a<b)printf(,f%d\n",a);prinlf("%d\n",b);

6.執(zhí)行語句“for(s=0,i=l;iv=10;i=i+3)s+=i;"后,變量s、i的當(dāng)前值是()

A.22,13B.12,10

C.22,10D.12,13

7.下列各語句定義了數(shù)組,其中一個(gè)不正確的是()

A.staticinta[5],b[2][3];

B.charno[30],rec[30,6];

C.intx口={2,4,6,8,10);

D.intxL10]={1,2,3,4,5};

8.宏定義definep(x,y,z)x=y*z;”的宏替換“p(a,x+5,y—3.1)”應(yīng)為()

A.a=x+5*y—3.1B.a=(x+5)*(y—3.1);

C.a=x+5*y—3.1D.a=(x+5)*(y—3.1)

9.下列語句定義p為指向float類型變量d的指針,其中哪一個(gè)是正確的()

A.floatd,*p=d;B.floatd,*p=&d;

C.floatd,p=d;D.float*p=&d,d;

10.執(zhí)行語句“for(i=0;ivl0;++i,++a)scanf(〃%d〃,a);”試圖為int類型數(shù)組a[10]輸入數(shù)據(jù),是錯(cuò)誤的。錯(cuò)誤的原

因是()

A.指針變量不能做自增運(yùn)算B.數(shù)組首地址不可改變

C.++i應(yīng)寫作i++D.++a應(yīng)寫作a++

11.定義函數(shù)時(shí),缺省函數(shù)的類型聲明,則函數(shù)類型取缺省類型()

A.voidB.char

C.floatD.int

12.執(zhí)行語句“k=5I3;"后,變量k的當(dāng)前值是()

A.1B.8

C.7D.2

13.執(zhí)行語句“k=5A3;”后,變量k的當(dāng)前值是()

A.15B.125

C.8D.6

14.以“只讀”方式打開文本文件a:\aadat,下列語句中哪一個(gè)是正確的()

A.fp=fopen(Ha:\\aa.dat"ab");

B.fp=fbpen(z,a:\aa.dat"a");

C.fp=fbpen(//a:\aa.dat"wb");

D.fp=fopen(''a:\\aa.dat"r");

15.寫字符到磁盤文件的中此函數(shù),其函數(shù)原型(頭)正確的是()

A.FILE*fputc(char)B.intfputc(FILE*)

C.intfpuc(char,FILE*)D.intfputc(FILE*,char)

二、填空題(每空1分,共15分)

1.設(shè)inta=5,b=2;floatc=32.8;,表達(dá)式b*(int)c%a的值為。

2.計(jì)算a、b中最小值的條件表達(dá)式為o

3?計(jì)算x、y之和的立方根,表達(dá)式應(yīng)寫作。

4.判斷變量a、b、c的值是否是等差數(shù)列中連續(xù)的三項(xiàng),寫作C的表達(dá)式為。

5.判斷變量a、b的值均不為0的C表達(dá)式為o

6.執(zhí)行語句“a=5+(c=6);"后,變量a、c的值依次為°

7.整型變量x的值為23,語句“printf(〃%o\\n",x);"的輸出結(jié)果為。

8.執(zhí)行語句“n=l;if(n=5)n++;"后,變量n值為。

9.執(zhí)行語句“s=0;n=5;while(-n)s+=n;v后,變量s、n值依次為。

10.執(zhí)行語句ufor(s=0,i=1;i<11;i++){if(i==6)continue;s+=i;},s值為。

IL若聲明uchara口="windows",b[]="9x",

執(zhí)行語句“printf("%s",strcat(a,b));”的輸出結(jié)果為。

12.若聲明chara[15]="Windows—9x";",語句"printf("%s",a+8);”的輸出結(jié)果為

13.程序中使用了字符串函數(shù)(如strlen),則必須包含的頭文件名為0

14.訪問結(jié)構(gòu)體數(shù)組元素a[k]的成員b,寫作o

15.a、b都是結(jié)構(gòu)體變量,語句“a=b;”能夠執(zhí)行的條件是0

三、程序閱讀題,讀下列程序,在程序旁的劃線處寫出程序的輸出結(jié)果。每行2分,共24分)

1.#include<stdio.h>

voidmain()輸出結(jié)果:

{inti;______

for(i=l;iv5;i++)printf("%d\t%c\n",i,'A'+i);

2.#include<stdio.h>

voidmain()

{inti,j,a[4][4];

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

for(j=0;j<4;j++)aLi][j]=l+i-j;

for(i=0;i<4;i++){

for(j=0;j<4;j++)輸出結(jié)果:

if(a[i][j]>O)printf("%3d",aLi][j]);一

putchar('\n');

)

3.#include<stdio.h>

voidf(floata,floatb,float*c)

{staticfloatx;floaty;

x=(y=a>b?a:b)>x?y:x;

*c=x;

)

voidmain()

{floata[5]={2.5,—1.5,7.5,4.5,6.5},x;

for(inti=0;i<4;i++){輸出結(jié)果:

f(a[i],a[i+1],&x);

printf(,l%.lf\n",x);

四、根據(jù)下列各編程題題意填空(每空2分,共24分)

1.輸入2個(gè)整數(shù),輸出它們的最小公倍數(shù)和最大公約數(shù)。

#include<stdio.h>

voidmain()

{intm,n,gbs,gys;scanf);

gbs=m;

while(⑵)gbs=gbs+m;

gys=£3);

(4);

)

2.下列函數(shù)sum的返回值為一個(gè)整數(shù)m的所有因子之和。

{ints=l;i;

for((2);i<=m/2;i++)

if((3))s=s+i;

(4);

3.下列函數(shù)用于將鏈表中tabdata類型的、成員num值與形參n相等的結(jié)點(diǎn)刪除。

structtabdata*del(tabdata*h,intn)

{structtabdata*pl,*p2;

if(h=NULL){printf(w\nlistnull!\);m__________;}

pl=h;

while(n!=pl—>num&&⑵){p2=p1;pl=p1—>next;}

if(⑶__________){

if(pl==h)h=pl->next;else(4);

printf(,fdelete:%ld\n/z,n);

)

else

printf(,r%Idnotbeenfound!\nv,n);

returnh;

五、編程題(第1小題6分,其他小題各8分,共22分)

1.編程,先輸入n,再輸入n個(gè)實(shí)數(shù)并分別統(tǒng)計(jì)正數(shù)的和、負(fù)數(shù)的和,然后輸出統(tǒng)計(jì)結(jié)果。

2.編程,輸入a】、a2、…、aI5后,計(jì)算下列表達(dá)式的值并輸出。

ai

1+---------

a2

1+

1+

14-??,

1+^-

l+a15

3.把文本文件xl.dat復(fù)制到文本文件x2.dat中,要求僅復(fù)制xl.dat中的非空格字符。

浙江省2002年1月高等教育自學(xué)考試

高級(jí)語言程序設(shè)計(jì)(一)試題參考答案

課程代碼:00342

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

l.B2.C3.C4.C5.C

6.A7.B8.A9.B10.B

ll.D12.C13.D14.D15.C

二、填空題(每空1分,共15分)

1.4

2.a<b?a:b

3.pow(x+y,1.0/3)

4.a—b==b—c

5.a*b!=0或a*b

6.11,6

7.27\n

8.6

9.10

10.49

11.windows9x

12.9x

13.string.h

14.a[k].b或(a+k)—>b

15.a、b為同類型的結(jié)構(gòu)體變量

三、程序閱讀題(每行2分,共24分)

1.1B2.13.2.5

2C217.5

3D3217.5

4E43217.5

四、根據(jù)下列各編程題題意填空(每空2分,共24分)

1.(1)〃%d%d”,&m,&n

(2)gbs%n!=0

(3)m*n/gbs

(4)printf("%d%d\n/z,gbs,gys);

2.(l)intsum(intm)

(2)i=2

(3)m%i==0

(4)returns

3.(l)returnh

(2)pl—>next!=NULL

(3)n==pl—>num

(4)p2—>next=pl—>next

五、編程題(第1小題6分,其他小題各8分,共22分)

1.#include<stdio.h>

voidmain()

{inti,n;floatx,sl=0;s2=0;

scanf(°%d”,&n);

for(i=1;i<=n;i++){scanf("%fr,,&x);if(x>0)sl++;if(x<0)s2++;}

printf(〃%f%f\n",sl,s2,);

)

2.#include<stdio.h>

voidmain()

{floata[15],y;inti;

for(i=0;i<15;i++)scanf(r,%f”,a+i);

y=aL14];for(i=13;i>=0;i----)y=l+aLi]/(1+y);

printf(〃%f\n〃,y);

)

3.#include<stdio.h>

voidmain()

{charch;FILE*fpl,*fp2;

fpl=fopen(uxl.dat"r");fp2=fopen(,fx2.dat"w");

while(!feof(fpl)){

ch=fgetc(fpl);

if(ch!=')fputc(ch,fp2);

)

fclose(fpl);fclose(fp2);

全國2003年10月高等教育自學(xué)考試

高級(jí)語言程序設(shè)計(jì)(一)試題

課程代碼:00342

第一部分選擇題(共20分)

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

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

選均無分。

1.組成C語言程序的是()

A.過程B.函數(shù)

C.子程序D.主程序和子程序

2.編譯程序的功能是()

A.將匯編語言程序轉(zhuǎn)換為目標(biāo)程序

B.將匯編語言程序轉(zhuǎn)換為高級(jí)語言程序

C.將高級(jí)語言程序轉(zhuǎn)換為目標(biāo)程序

D.將高級(jí)語言程序轉(zhuǎn)換為匯編語言程序

3.C語言中定義某個(gè)內(nèi)部變量時(shí),如果省略了存儲(chǔ)類型符,則系統(tǒng)將默認(rèn)該變量是()

A.自動(dòng)型B.寄存器型

C.靜態(tài)型D.外部參照型

4.不用第三個(gè)變量,將變量a和b的值進(jìn)行互換的操作是()

A.a+=b;b-=a;a-=b;B.a+=b;b=a-b;a-=b;

C.b-=a;a-=b;a-=b;D.b-=a;a=b-a;a+=b;

5.自動(dòng)型變量分配在()

A.內(nèi)存的數(shù)據(jù)區(qū)中B.CPU的通用寄存器中

C.內(nèi)存的程序區(qū)中D.內(nèi)存的堆棧區(qū)中

6.下列程序段運(yùn)行后,x的值是()

a=l;b=2;x=0;

if(!(一a))x一;

if(!b)x=7;else++x;

A.OB.3

C.6D.7

7.對(duì)do-whie語言錯(cuò)送的說法是()

A.可構(gòu)成多重循環(huán)結(jié)構(gòu)B.循環(huán)次數(shù)不可能為0

C.循環(huán)次數(shù)可能為0D.先執(zhí)行后判斷

8.設(shè)intx=l,a=9,b=6,c=7,d=8;則執(zhí)行語句:

if(a>b)if(c>d)x=2;elsex=3;

后,X的值是()

A.lB.2

C.3D.不確定

9.設(shè)charstrl[10]="ABCDE",str2[10]="XYZ";則執(zhí)行語句:

printf("%d",strlen(strcpy(strl,str2)));

后的輸出是()

A.3B.5

C.8D.9

10.初始化一維數(shù)組a正確的語句是()

A.inta[10]=(0,0,0,0,0);B.inta[10]={};

C.inta[]={10};D.inta[10]={[10*l]};

11.語句int(*p)();的含義是()

A.p是一個(gè)指向函數(shù)的指針變量,該函數(shù)的返回值是一個(gè)整型數(shù)據(jù)

B.p是指針變量,指向一個(gè)整型數(shù)據(jù)

C.p是一個(gè)指向一維數(shù)據(jù)的指針變量

D.p是指針函數(shù)

12.設(shè)inta[10],*p=a;

則對(duì)數(shù)組元素的正確引用是()

A.a[p]B.p[a]

C.*(p+2)D.p+2

13.對(duì)于程序段floatfl(inta)

{intb;}

main()

{intm,n;

m-fl(n),)

charf2(intx,inty)

{inta;---}

變量m,n的作用范圍是()

A.整個(gè)程序段B.main函數(shù)

C.main函數(shù)和f2函數(shù)D.mian函數(shù)和fl函數(shù)

14.若函數(shù)中局部變量的值經(jīng)函數(shù)調(diào)用后仍保留,則該局部變量定義為()

A.自動(dòng)變量B.內(nèi)部變量

C.外部變量D.靜態(tài)變量

15.在下列運(yùn)算符中,優(yōu)先級(jí)最低的是()

A.!B.?

C.()D.U

16.對(duì)于如下定義的枚舉型

enumlistl

{xl,x2,x3,x4=6,x5,x6};

枚舉常數(shù)x2和x6的值分別是()

A.1,6B.1,8

C.2,6D.2,8

17.對(duì)于文件操作方式〃rb+〃,準(zhǔn)確的說法是()

A.可讀寫文本文件B.只讀二進(jìn)制文件

C.只讀文本文件D.可讀寫二進(jìn)制文件

18.數(shù)據(jù)-324在二進(jìn)制文件和文本文件中所占的字節(jié)數(shù)分別是()

A.2,2B.2,4

C.4,2D.4,4

19.設(shè)inta=l,b=2,c=4;

經(jīng)過表達(dá)式(c=a!=b)&&(a==b)&&(c=b)運(yùn)算后,a、b和c的值分別是(

A.1,2,0B.1,2,1

C.1,2,2D.1,2,3

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

#defineEVEN(x)x%2==0?1:0

main()

(

if(EVEN(9+l))printf(〃iseven");

elseprintf("isodd");

)

A.isevenB.出錯(cuò)

C.無結(jié)果D.isodd

第二部分非選擇題(共80分)

二、填空題(本大題共10小題,每小題2分,共20分)

請(qǐng)?jiān)诿啃☆}的空格中填上正確答案。錯(cuò)填、不填均無分。

21.設(shè)charab;則表達(dá)式a/b-zcf的值的類型為。

22.設(shè)intk=-L執(zhí)行printf("%u",k);后輸出的值是。

23.設(shè)for(k=0;kv0;k++)++k;則該循環(huán)共執(zhí)行次。

24.設(shè)inta=l,b=2;經(jīng)表達(dá)式a=a/\b,b=a/\b,a=a/\b運(yùn)算后a,b的值分別是.

25.表示空類型的保留字是o

26.已知程序段:

char*p=z/abcdefgh”;p+=4;

printf(n%c\n",*p++);

運(yùn)行結(jié)果為o

27.設(shè)

structstudent

{intno;charname[12];

charsex;floatscore[4];

}stul;

在程序執(zhí)行時(shí),系統(tǒng)為stul分配個(gè)字節(jié)的內(nèi)存空間。

28.寫出“n是小于整數(shù)m的偶數(shù)”的表達(dá)式0

29.字符串"ABCD\t\\\123"的長度是。

30.設(shè)union

{intb;chara[9];floatx;}un;

則變量un所占的字節(jié)數(shù)是o

三、程序分析題(本大題共5小題,每小題5分,共25分)

閱讀下列程序,將輸出結(jié)果寫到各題右側(cè)的空白處

31.sum(intn)

(

if(n==1)retum(l);

elsereturnn+sum(n-1);

)

main()

(

printf(''%d\nz,,sum(10));

)

32.設(shè)從鍵盤輸入282

sub(intn)

{ints=l;

do

{s*=n%10;n/=10;}

while(n);

returns;

}

main()

{intn;

scanf(,f%d",&n);

n=sub(n);

printf(,f%d\n',n);

)

33.#defineN7

#definePRINTfor(i=0;i<N;i++)printf(z,%5d”,a[i]);printf("\n");

main()

{inti,j,temp,a[N]={1,2,3,45,6,7};

PRINT

for(i=0,i<N/2,i++)

{j=N-l-i;temp=a[i];a[i]=a[j];a[j]=temp;}

PRINT

)

34.intx=30;y=50;

sub(x,y)

{y=x>y?x:y;

returny;

main()

{intx=100;

printf("%d\nz,,sub(x,y));

)

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

)

35.設(shè)文件filel.c的內(nèi)容為COMPUTER

#include“stdio.h"

main()

{FILE*fp;

charch;

if((fp=fopen(z,filel.c",〃r"))==NULL)

{print]“Cannotopenfile\n〃);

exit(O);

)

while(!feof(fp))

(

ch=fgetc(fp);if(ch>=zN&&ch<=zZ')fputc(ch+32,stdout);

)

fclose(fp);

)

四、程序填充題(本大題共3小題,每小題6分,共18分)

給出下列程序,將橫線處缺少的部分補(bǔ)上,使其能正確運(yùn)行。

36.將一個(gè)十進(jìn)制整數(shù)n轉(zhuǎn)變?yōu)槎M(jìn)制數(shù)。

main()

{inti=0,j,n,num[20];

scanf("%d",);/*第一空*/

while(n!=0)

{num[i++]=;/*第二空*/

n=;/*第三空*/

)

for(j=i-l;j>=0;j一一)printf(%dr,,num[j]);

)

37.一個(gè)一維數(shù)組和一個(gè)二維數(shù)組同處一個(gè)共用型,將數(shù)據(jù)輸入一維數(shù)組后,在二維數(shù)組中輸出。

main()

{uniondata

{inta[10];

intb;/*第?空*/

):

uniondataab;

inti,j;

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

scanf("%d",);/*第二空*/

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

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

printf(,z%5d",);/*第三空*/

)

38.用指針法輸出二維數(shù)組,每行三個(gè)數(shù)。

main()

{inti,j,a[3][3]={l,2,3,4,5,6,7,8,9},(*p)[3];

;/*第一空*/

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

(

fortj=0;j<3;j++)printf("%5d”,);/*第二空*/

;/*第三空*/

五、程序設(shè)計(jì)題(第39小題5分,第40、41小題各6分,共17分)

39.輸出100之內(nèi)所有個(gè)位數(shù)字為6且能被3整除的自然數(shù)。(如:36,66,96……)

40.鍵入一串字符(換行符結(jié)束),用循環(huán)語句將其中的大小寫英文字母互換后輸出。

41.設(shè)inta[3][4];先為數(shù)組輸滿數(shù)據(jù),再將該數(shù)組周邊的元素輸出(元素輸出次序不限)。

高級(jí)語言程序設(shè)計(jì)(一)答案2003年10月

2003年下半年高等教育自學(xué)考試全國統(tǒng)一命題考試

高級(jí)語言程序設(shè)計(jì)(一)試題參考答案及評(píng)分標(biāo)準(zhǔn)

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

1.B2.C3.A4.B5.D

6.A7.C8.C9.A10.C

11.A12.C13.B14.D15.A

16.B17.D18.B19.B20.D

二、填空題(本大題共10小題,每小題2分.共20分)

21.int或者int型或者整型22.65535

23.024.2和1

25.void26.e

27.3128.n<m&&n%2;=0

29.730.9

三、程序分析題(本大題共5小題,每小題5分,共25分)

31.55

32.32

33.1234567

7654321

34.100

30.50

35.computer

四、程序填充題(本大題共3小題,每小題6分,共18分)

36.第一0空:&n

第二空:n%2

第三空:n/2

37.第一空:或者[][5]

第二空:&ab.a[i]

第三空:ab.b[i][j]

38.第一空:p=a或者p=&a[0][0]或者p=a[0]

第二空,(p+i)+j)

第三空:printf(*\n*)

高級(jí)語言程序設(shè)計(jì)(一)試題參考答案及評(píng)分標(biāo)準(zhǔn)第1頁(共2頁)

五、程序設(shè)計(jì)題(第39小題5分,第40、41小題各6分,共17分)

下述答案僅供參考,若采用其它方法答題,只要正確實(shí)現(xiàn)題目要求,仍可狹滿分。某語句

不完全正確,可以酌情給分。

39.main()

I

inti;

for(i=1;i<=100;i++)

if(i%10==6&&i%3-=0)

printf("%Sd",i);

I

40.#include"stdio.h"

matn()

Icharch;

while((chsgetchar())!=1\n*)

{if(ch>=FA#&&ch<=*Zf)ch=ch?32;

elseif(ch>=raz&&ch<=ch=ch-32;

prinlf(*%c*sch);

I

printf(*\n*);

41.main()

Iintitj?a[3][4);

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

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

%d*?&a[i][j])?

w

for(j=0;j<4;j++)printf(*%5d%5d,a[O][j]fa[2][j]);

printf(*%5d%5d\n*,a[l][0],a[I](3]);

高級(jí)語言程序設(shè)計(jì)(一)試翹參考答案及評(píng)分標(biāo)準(zhǔn)第2頁(共2頁)

全國2005年10月高等教育自學(xué)考試

高級(jí)語言程序設(shè)計(jì)(一)試題

課程代碼:00342

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

在每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后的括號(hào)內(nèi)。錯(cuò)選、多選或未選均

無分。

1.下列不展于C語言保留字的是()

A.charB.while

C.typedefD.look

2.下

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論