?高級(jí)語(yǔ)言程序設(shè)計(jì)(一)2010年10月真題
摘要:高級(jí)語(yǔ)言程序設(shè)計(jì)(一)2010年10月真題及答案,該試卷為高級(jí)語(yǔ)言程序設(shè)計(jì)(一)自考?xì)v年真題試卷,包含答案及詳細(xì)解析。
高級(jí)語(yǔ)言程序設(shè)計(jì)(一)2010年10月真題及答案解析
高級(jí)語(yǔ)言程序設(shè)計(jì)(一)2010年10月真題及答案,該試卷為高級(jí)語(yǔ)言程序設(shè)計(jì)(一)自考?xì)v年真題試卷,包含答案及詳細(xì)解析。
一、單項(xiàng)選擇題(本大題共15小題,每小題2分,共30分)在每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目要求的,請(qǐng)將其代碼填寫(xiě)在題后的括號(hào)內(nèi)。錯(cuò)選、多選或未選均無(wú)分。
1.用戶(hù)自定義標(biāo)識(shí)符正確的是( )
A.3ab
B.int
C.fa2_a
D.sin(x)
2.關(guān)于C語(yǔ)言程序描述正確的是( )
A.函數(shù)必須要有return語(yǔ)句
B.主函數(shù)必須位于程序的開(kāi)頭
C.程序中每行只能寫(xiě)一條語(yǔ)句
D.一個(gè)程序中只能有一個(gè)主函數(shù)
3.設(shè)int i=8,a,b; double x=1.42,y=5.2;,正確的表達(dá)式是( )
A.a+=(b=4)*(a=3)
B.a=a*3=2
C.x%(-3)+y* *3
D.y=float(i)
4.設(shè)int a[][2]={1,2,3,4,5,6,7};,其中缺省的行長(zhǎng)度的最小值是( )
A.2
B.3
C.4
D.5
5.設(shè)char c=′A′; int i=1,j;,執(zhí)行語(yǔ)句j=!c&&i++;后,i和j的值分別是( )
A.0和1
B.1和0
C.1和65
D.2和66
6.設(shè)typedef char STRING[255]; STRING *s;,則s是( )
A.字符數(shù)組
B.字符變量
C.字符指針數(shù)組
D.字符指針變量
7.設(shè)int x=6;,執(zhí)行語(yǔ)句x+=x-=x*x;后,x的值是( )
A.-60
B.0
C.6
D.36
8.設(shè)int i=3,j=3;,表達(dá)式i+++j的值是( )
A.6
B.7
C.8
D.9
9.下列為C語(yǔ)言保留字的是( )
A.real
B.long
C.pointer
D.integer
10.設(shè)int a=2,b=6,c=8;,表達(dá)式(a,b),(c,10)的值是( )
A.2
B.6
C.8
D.10
11.變量定義并初始化正確的是( )
A.int a=1,*p=a;
B.int a=2,p=*a;
C.int a=3,p=&a;
D.int a=4,*p=&a;
12.使用遞歸函數(shù)計(jì)算n!(n=0,1,2,3,....)的是( )
A.fac(int n)
{ int i,f=-1;
if(n==0) return 1;
else for(i=1 ; i<=n; i++) f*=i;
return f;
}
B.fac(int n)
{
if(n==0‖n==1) return 1;
else return n*fac(n-1);
}
C.fac(int n)
{ int i=1,f=1;
if(n==0) return 1;
else while(i<=n) f*=i++;
return f;
}
D.fac(int n)
{ int i=1,f=1;
if(n==0) return 1;
else do { f*=i; }while (i++ <n
return f;
}
13.設(shè)struct{ int age; int num; }stu *p=&stu;對(duì)結(jié)構(gòu)型變量stu的成員age引用錯(cuò)誤的是( )
A.stu.age
B.p->age
C.*p.age
D.(*p).age
14.設(shè)int a[2]={1,2},*p=a;,則*p是( )
A.元素a[0]的值
B.元素a[0]的地址
C.元素a[1]的值
D.元素a[1]的地址
15.設(shè)int a[10];,對(duì)數(shù)組元素引用正確的是( )
A.a[10]
B.a[′0′]
C.a(6)
D.a[10-10]
二、填空題(本大題共10小題,每小題2分,共20分)請(qǐng)?jiān)诿啃☆}的空格中填上正確答案。錯(cuò)填、不填均無(wú)分。
11.執(zhí)行語(yǔ)句printf("%d ", strlen("a x41"));后,輸出結(jié)果是_______。
12.設(shè)int a,b,c;,表達(dá)式a=2,b=5,b++,a+b的值是_______。
13.設(shè)int a=1,b=2,m=2,n=2;,執(zhí)行表達(dá)式(m=a<b)||++n后,n的值是_______。
14.設(shè)int x=4,y=2;,表達(dá)式x<y?y:x++的值是_______。
15.執(zhí)行下列程序段后,輸出結(jié)果是_______。int x=3;do{ ptintf("%5d",x-=2); }while(!(--x));
16.執(zhí)行語(yǔ)句for(i=10; i>0; i--,);后,變量i的值是_______。
17.設(shè)int x,y;,循環(huán)語(yǔ)句for(x=0,y=0; (y!=10)&&(x<5); x++);執(zhí)行的次數(shù)是_______。
18.若函數(shù)內(nèi)定義變量的存儲(chǔ)類(lèi)別是static,該變量被稱(chēng)為_(kāi)______靜態(tài)變量。
19.設(shè)int x=3;,執(zhí)行語(yǔ)句printf((x%2)?("**%d "):("##%d "),x);后,輸出結(jié)果是_______。
110.設(shè)char s[3]="AB", *p=s;,則*(p+2)的值是_______。
三、程序分析題(本大題共4小題,每小題4分,共16分)閱讀下列程序,將輸出結(jié)果寫(xiě)到各題右側(cè)的空白處。
21.void main( ){ int i=0, j =0, k=0; while (i< 10) i++; while (j++<10); while (++k<10); printf ("i=%d,j=%d,k=%d ", i,j,k);}
22.int a;fun(int i){ a+=2*i; return a;}void main( ){ int a=10; printf("%d,%d ",fun(a),a);}
23.void main( ){ int a=0, b=0, d=0; char *s="xcbc3abcd"; for(; *s!= ′