《C語(yǔ)言測(cè)試卷A卷》由會(huì)員分享,可在線閱讀,更多相關(guān)《C語(yǔ)言測(cè)試卷A卷(4頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、C語(yǔ)言A卷
一、選擇題(每小題3分,共42分)。
1、下列各函數(shù)的首部中,符合C語(yǔ)言要求的是( )
A) void play(var a; integer, var b:integer)
B) void play( int A, B)
C) void play( int A, int B)
D) sub play( A as integer, B as integer )
2、t 為 int 類(lèi)型,進(jìn)入下面的循環(huán)之前, t 的值為 0 。
while( t=1)
{
……
}
則以下敘述中正確的是( )
A) 循環(huán)控制表達(dá)式的值為0
2、
B) 循環(huán)控制表達(dá)式的值為1
C) 循環(huán)控制表達(dá)式不合法
D) 以上說(shuō)法都不對(duì)
3、假定 int 類(lèi)型變量占用二個(gè)字節(jié),若有定義:int x[ 5 ]={3 , 6 , 9 }; ,則數(shù)組x 在內(nèi)存中所占的字節(jié)數(shù)是( )
A)3 B)6 C)10 D)20
4、以下程序的輸出結(jié)果是( )
main()
{ int i , A[10];
for(i=9; i>=0; i-- )
A[ i ]=10-i;
printf( “%d%d%d”,A[2], A[5], A[8]);
}
A)258 B)741
3、 C)852 D)369
5、以下程序的輸出結(jié)果是( )
main()
{ int A=3;
printf(“%d\n”,(A+=A-=A*A));
}
A)-6 B)12 C)0 D)-12
6、以下合法的賦值語(yǔ)句是( )
A)x=y=100; B)D--; C)9,2 D)10,2
7、以下程序的輸出結(jié)果是( )
union myun
{ struct { int x, y, z ; } u ;
int k ;
} A;
main()
{ A.u.x=4;
A.u.
4、y=5;
A.u.z=6;
A.k=0;
printf (“%d\n”,A.u.x);
}
A)4 B)5 C)6 D)0
8、以下選項(xiàng)中合法的字符常量是( )
A)“B” B)‘\010’ C)68 D)D
9、若有定義 double x,y ; 則表達(dá)式x=2,y=x+3/2的值是( )
A)3.5000000 B)3 C)2.000000 D)3.000000
10、若有定義 int x,y,z; 則執(zhí)行語(yǔ)句:x=y=3; t=++x||++y;后,y
5、的值為( )
A)不定值 B)4 C)3 D)1
11、設(shè)有以下說(shuō)明語(yǔ)句
struct ex{
int x;
float y;
char z;
}example;
則下面的敘述中不正確的是( )
A) struct 是結(jié)構(gòu)體類(lèi)型的關(guān)鍵字
B) example是結(jié)構(gòu)體類(lèi)型名
C) x,y,z都是結(jié)構(gòu)體成員名
D) struct ex是結(jié)構(gòu)體類(lèi)型
12、若執(zhí)行以下程序時(shí)從鍵盤(pán)上輸入9,則輸出的結(jié)果是( )
main()
{ int n;
scanf(“%d”,&n);
if (n++<10)
6、printf(“%d\n”,n);
else
printf(“%d\n”,n--);
}
A)11 B)10 C)9 D)8
13、有以下程序段( )
int k=0;
while ( k=1 ) k++;
while 循環(huán)執(zhí)行的次數(shù)是( )
A)無(wú)限次 B)有語(yǔ)法錯(cuò)誤 C)一次也不執(zhí)行 D)執(zhí)行1次
14、如果要打開(kāi)一個(gè)已經(jīng)存在的非空文件“FILE”進(jìn)行只讀數(shù)據(jù),正確的打開(kāi)語(yǔ)句是( )
A) fp=fopen(“FILE”, “r”);
B) fp=fopen(“FILE”, “ab+”);
C
7、) fp=fopen(“FILE”, “w+”);
D) fp=fopen(“FILE”, “r+”);
二、程序閱讀理解。(每小題6分,共24分。)
1、有以下程序
void main()
{ int a=1,b=3,c=5;
if (c==a+b) printf("yes\n");
else printf("no\n");
}
執(zhí)行以上程序后,輸出結(jié)果是:
2、有以下程序
void main( )
{ char m;
m=F+32;
printf("%c\n",m);
}
程序運(yùn)行后的輸出結(jié)果是:
3、有以下程序
void main( )
8、
{ struct cmplx
{ int x; int y;}cnum[2]={1,3,2,7};
printf("%d\n",cnum[0].y*cnum[0].x+cnum[1].x);
}
程序執(zhí)行后輸出的結(jié)果是:
4、有以下程序
int fun(int x,int y)
{ int m=3;
return(x*y-m);
}
void main()
{ int m=13; int a=7,b=5;
printf("%d\n",fun(a,b)/m);
}
程序運(yùn)行后的輸出結(jié)果是:
三、程序填空題(每空題3分,共12分)
1、下面的程序它輸入一個(gè)
9、字符,然后判別輸入的字符是否是大寫(xiě)字母,若是大寫(xiě)字母則輸出“YES”,否則輸出“NO” ,請(qǐng)?zhí)羁铡?
#include “stdio.h”
main()
{
char ch;
scanf(_____________________);
if (_________________________________)
printf(“YES\n”);
else
printf(“NO\n”);
}
2、輸出1到20每個(gè)整數(shù)的立方。
main( )
{
int k;
for(_____________________)
printf(_____________________);
}
四、程序設(shè)計(jì)(第1題10分,第2題12分,共22分)
1、 編寫(xiě)一個(gè)程序,它從鍵盤(pán)上輸入5個(gè)整數(shù),然后輸出它們的積。
2、 編寫(xiě)一個(gè)函數(shù),它判斷一個(gè)字符串ss[80]是否為“回文”。(即順讀和倒讀都一樣的字符串,如:“abcba”)是則輸出“YES”,否則輸出“NO”。