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 页、