C语言期末试卷A
一、单项选择题(每空2分,共50分) (请将各小题正确答案的字母序号填到相应小题的下划线上) 1. C语言的运算符按运算对象的数目可以分为 o A) 单目运算一种B)单目和双目运算符 C)单目、双目和三目运算符D)单目、双目、三目运算和四目运算符 2. C语言表达式2/5*10的值是 o A) 0.04B)4Q4.0D)0 3. 已知变量f和i的类型说明如下: float f=12.34; int i; 则以下符合C语言语法的表达式是 o A) i=(int)f%5B) i=int(f)%5 C) i=f%5D) i=(int f)%5 4. 能正确表示数学式1 WxW5的C语言表达式是 。 A)1 y ) printf ( “ %d “ , x ); if ( x >y ) printf ( “ %d “ , x );printf ( “ %d “ , y ); if ( x >y ); printf ( “ %d “ , x ); else printf ( “ %d “ , y ); if ( x >y ) printf ( “ %d “ , x ); else printf ( “ %d “ , y ); 15. 对以下程序段描述正确的是 o x=10; while(x) x=x/4; A)不执行循环体B)循环体执行一次C)循环体执行二次D)死循环 16. 在C语言中,引用数组元素时,对数组下标的数据类型以下说法错误的 是 O A)数组下标可以用整型常量B)数组下标可以用整型变量 C)数组下标可以用任意类型的表达式D)数组下标可以用整型表达式 17. 以下C函数的功能是 o int fun(int x,int y) ( int z=0; z=x>y?x:y; return z; } A)求x和y二者中的最大值 B)求x和y二者中的最小值 C)返回一个不确定的值 D)返回函数值为“0” 18. 定义数组:int s[10];则数组元素下标的取值 。 A)最小值为1,最大值为10 B)最小值为0,最大值为10 C)最小值为0,最大值为9 D)最小值为1,最大值为9 19. 已知int i,s[4][5];不能表示数组第3行第3列元素值的是。 A) * ( * ( x))+ 3B) x[3][3] C) * ( * ( x + 3 ) + 3 )D) * ( x [ 3 ] + 3 ) 20. 以下C函数的类型是 o fun (float f ) { printf(“%f\n“, f) ; } A) int B) float C) void D)无法确定 21. 设 char *sl, s2[255]— programing”;以下操作正确的是 。 A) *sl = “function”;B) s2=“function”; sl=s2; C) si = “function”; s2=sl; D) *s2= P‘; si =s2 ; 22. 设有说明语句: struct student ( int num,age; }; struct student stu[3]=((6001,20),(6003,21),(6005,19}); struct student *p=stu; 则下面的C语言表达式中,值为6003的是 o A) ++(p->num)B) (p++)->num C) (*p++).numD) (*++p).num 23. 已有定义int ( * p )();则指针p可以 o A)代表函数的返回值B)指向函数的入口地址 C)代表函数的类型D)代表函数返回值的类型 24. 若用下列语句输出26个大写英文字母: (1 )for(a= A ;a= A ;a—) printf(“%c“,a); ⑶ for(a= A ;a<= Z ;) printf(“%c“,a++); (4)for(a= A ;a++<= Z ;) printf(“%c“,a); 以下说法正确的是 。 A)全都能输出B)只有前三个语句可以输出 C)只有前两个语句可以输出D)只有第一