还剩2页未读,继续阅读
文本内容:
C语言基础测试题一选择题(每题2分)
1.C语言程序的基本单位是(A)A.函数B.过程C.语句D.子程序
2.对于语句,错误的说法是(C)oA.用条件限制循环体的执行次数B.循环体至少要执行一次C.循环体有可能一次也不执行D.循环体中可以包含若干条语句
3.定义语句3;则执行语句*a后,变量a的值是(C)A.3B.0C.9D.-
124.关于局部变量和全局变量的叙述中,错误的是(A)A.全局变量的重复赋值不会影响局部变量的运用B.主函数中定义的变量在整个程序中都是有效的C.形式参数也是局部变量D.不论是局部变量还是全局变量,都以最近的一次赋值为准
5.已知13;那么(〃%02d〃)结果是(A)oA.13B.013C.01D.
036.在函数中调用给变量a赋值的方法是错误的,缘由是()0*;;(〃a:〃);(〃,*P);A.*p表示的是指针变量p的地址B.*p表示的是变量a的值,而不是变量a的地址C.*p表示的是指针变量p的值D.*p只能用来说明p是一个指针变量
7.若有以下定义,贝IJ对a数组元素地址的正确引用是()A.5B.*1C.1D.
[0]
8.若4321;则k〈〈的值是()oA.4B.3C.2D.
19.关于数组,以下说法正确的是()oA.数组的下标可以是任何类型的表达式B.数组的下标只能是常量或者常量表达式C.二维数组必需完成初始化D.指针不行以操作数组里面元素的值
10.设H2;执行下述程序段后,变量a和b的值分别是(){;}A.1,3B.1,4C.2,3D.2,4(ab);二.填空题(每空3分)
1.写一个宏,这个宏输入两个参数并返回较小的一个
2.函数中(0;i3;){(〃〃);}输出结果是
3.设920;则(〃〃);的输出结果是
4.设a
[2]
[4]={{l,3,5,7},{2,4,6,8}};则**1的值为
5.定义一个指向含有十个数字的数组的指针
6.已知123;(a〉b);;;语句执行后的值是三.推断题(每题2分)
1.在C语言中,定义5;是错的,而5;是对的()
2.32;则表达式()的值为3()
3.若有定义a
[5]
[5],*p;则操作;是合法操作()
4.两个字符串所包含的字符个数相同时才能比较字符串大小()
5.宏定义可以实现嵌套定义()
6.若变量均为整型,且7,则计算表达式后的值为8()
7.若有100;则执行完语句
(0);;后1的值为11()
8.若有a
[3]
[4];则a
[3]
[4]是对二维数组的正确访问()
9.初始化值列表中的初始化值个数多于数组元素的个数是错误的()
10.假如在一个函数中的复合语句中定义了一个变量,则该变量在该函数中都有效()
11.用语句;可以交换两个变量的值()四.简答题
1.简述形参和实参的区分(3分)
2.回答和的异同点(2分)
3.简述指针的概念(2分)
4.请叙述你对面对对象和面对过程的理解(3分)五.编程题
1.已知一个数组,里面有五个数12,25,8,9,16;把数组里面的数依据从小到大的依次排列(15分)
2.写一个程序,可以输入若干个数,直到输入0时结束,然后实现求这些数的平均值(15分)。