C语言模拟试卷2(1)

C程序设计模拟试卷2

一、单项选择题

1 、C语言中用于结构化程序设计的三种基本结构是( A )。 A 、顺序结构、选择结构、循环结构 B、 if、switch、break C、 for、while、do-while D、 if、for、continue

2、C语言源程序文件的扩展名是( D )。

A、.exe B、.obj C、.txt D、.c

3、在C语言中,语句和数据定义是用 ( C )作为结束标记的

A、句号 B、逗号 C、分号 D、括号

4、设float x=11.0,y=12.0; 下列语句中发生错误的是:( B ) A、++x B、 y=(x%2)/10 C、 y*=x+1 D、y=x+y--

5、当调用函数时,实参是一个数组名,则向函数传送的是( B )。 A、数组的长度 B、数组的首地址

C、数组每一个元素的地址 D、数组每个元素中的值

6、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是( B )。

A、INPUT x、y、z; B、scanf(\,&x,&y,&z); C、scanf(\,x,y,z); D、read(\,&x,&y,&z);

7、设x,y,z和k都是int 型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值( C )。 A、4 B、16 C、32 D、52

8、设 int a=12,则执行完语句 a+=a-=a*a后,a的值是( D )。 A、 552 B、 264 C、 144 D、 -264

9、设有int a[ ]={10,11,12},*p=&a[0];则执行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是 ( C )。

A、10,11,12 B、11,12,12

第 1 页 共 7 页、

C、10,12,12 D、11,11,12

10、以下程序的输出结果是( D )

A、ABCDEFGHI B、aceg

C、acegi D、abcdefghi int main( )

{ int i;

for(i='A';i<='I';i++) printf(\,i+32);}

11、下面哪个是非法的C语言转义字符。( B )

A、 ‘\\t' B、 ‘\\08' C、 ‘\\f' D、 ‘\\\\'

12、以下选项中合法的字符常量是( B ) A、“B” B、'\\010' C、-268 D、D

13、下列描述中不正确的是( C ) A、字符型数组中可以存放字符串

B、可以对字符型数组进行整体输入、输出 C、可以对整型数组进行整体输入、输出

D、不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值

14、若w=1,x=2,y=3,z=4;则条件表达式w>x?w:y

15、putchar函数可以向终端输出一个( D )

A、整型变量表达式值 B、实型变量值

C、字符串 D、字符或字符型变量值

16、printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式( B )

A、从左起输出该字符串,右补空格 B、按原字符串长从左向右全部输出 C、右对齐输出该字符串,左补空格 D、输出错误信息

17、判断变量ch中的字符是否为数字字符,最简单的正确表达式是( D )。 A、ch>=0&&ch<=9 B、’0’<=ch<=’9’ C、ch>=’0’||ch<=’9’ D、ch>=’0’&&ch<=’9’

18、以下叙述正确的是( D )

A、do-while语句构成的循环不能用其它语句构成的循环代替。 B、do-while语句构成的循环只能用break语句退出。

C、用do-while语句构成的循环,在while后的表达式为非零时结束循环。 D、用do-while语句构成的循环,在while后的表达式为零时结束循环。

第 2 页 共 7 页、

19、以下叙述不正确的是( D )

A、在C程序中所用的变量必须先定义后使用; B、在程序中,APH和aph是两个不同的变量;

C、若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变;

D、当输入数值型数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值;

20、使条件表达式(year%4==0&&year0!=0)||(year@0==0)结果为假的值是( A )

A、1950 B、2000 C、1996 D、2004

二、判断题

1、数学公式“|x2+y|”改写成C语言表达式为“|x*x+y|”(×) 2、全局变量可以和局部变量重名,且局部变量优先。(√) 3、C程序的基本组成单位是函数。(√)

4、在程序运行过程中,系统分配给实参和形参的内存单元是相同的。(×) 5、一个函数利用return不可能同时返回多个值。(√) 6、静态局部变量所占的存储单元在函数调用结束后释放。(×) 7、指针变量中只能存放地址。(√)

8、共用体变量的地址和它的各成员的地址都是同一地址。(√) 9、每一个枚举元素都代表一个整数。(√) 10、两个实数相除的结果是单精度实数。(×)

三、填空题 1、下面程序是计算1!+2!+3!,请把程序填充完整。 int Main( ) {int i,s=0,t=1;

for(i=1;i<4;i++){ t=t*i;s=s+t;} printf(“%d”, s);}

2、以下函数fun的功能是用冒泡排序法对数组的数据按从大到小的顺序排列。 void fun(int a[ ],int n)

第 3 页 共 7 页、

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4