《C语言程序设计》期末考试(卷A卷B附答案).pdf
文本预览下载声明
《C 语言程序设计》期末考试(卷 A/ 卷 B/ 附答案)
《C语言程序设计》期末考试 卷 A (附答案)
一、 单项选择题
1. 指针 s 所指字符串的长度为
char *s=\\Name\\Address\n;
A) 19 B) 15 C) 18 D)说明不合法
2. 若有下面的程序片段 :
int a[12]={0}, *p[3], **pp, i;
for(i=0; i3; i++)
p[i]=a[i*4];
pp=p;
则对数组元素的错误引用是
A) pp[0][1] B) a[10] C) p[3][1] D) *(*(p+2)+2)
3. 若要求在 if 后一对圆括号中表示 a 不等于 0 的关系 ,则能正确表示这一关系的表达式为
A) a0 B) !a C) a=0 D) a
4. 若已定义 :
int a[ ]={0,1,2,3,4,5,6,7,8,9], *p=a,i;
其中 0 ≤i≤9, 则对 a 数组元素不正确的引用上
A) a[p-a] B) *(a[i]) C) p[i] D) a[10]
5. 以下程序的输出结果是
main( )
{ int x=10 ,y=10 ,I ;
for(i=0 ;x8 ;y=++i)
printf(%d ,%d ,x-- ,y) ;
}
A) 10 1 9 2 B) 9 8 7 6 C) 10 9 9 0 D) 10 10 9 1
6. 下面程序的输出是
void prtv(int *x)
printf(%d\n, ++*x);}
main()
{ int a=25;
prtv(a);}
A) 23 B) 24 C) 25 D) 26
7. 下面能正确进行字符串赋值操作的语句是
A)char s[5]={ABCDE}; B)char s[5]={A 、 B、C 、D 、 E};
C) char *s;s=ABCDEF; D)char *s; scanf(%s ,s);
8. 设 x,y,z,t 均为 int 型变量 ,则执行以下语句后 ,t 的值为
x=y=z=1;t=++x||++y++z;
A) 不定值 B)2 C)1 D)0
9. 设 p1 和 p2 是指向同一个 int 型一维数组的指针变量 ,k 为 int 型变量 ,则不能正确执行的语
句是
A)k=*p1+*p2; B)p2=k;
C)p1=p2; D)k=*p1 *(*p2);
10. 请读程序 :
#includestdio.h
#define SUB(X,Y) (X)*Y
main()
{ int a=3, b=4;
printf(%d, SUB(a++, b++));
}
上面程序的输出结果是
A) 12 B) 15
C) 16 D) 20
11. sizeof(float) 是:
A ) int B ) float C ) double D ) 不确定
12. 若执行下面的程序时从键盘上输入 3 和 4 ,则输出是
main()
{ int a,b,s;
scanf(%d %d,a,b);
s=
显示全部