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