2005年全国计算机等级考试二级C语言模拟题
公共基础知识
一、选择题
(1)下列关于栈的叙述正确的是
a)栈是非线性结构 b)栈是一种树状结构
c)栈具有先进先出的特征 d)栈具有后进先出的特征
(2)结构化程序设计所规定的三种基本控制结构是
a)输入、处理、输出 b)树形、网形、环形
c)顺序、选择、循环 d)主程序、子程序、函数
(3)结构化程序设计的一种基本方法是
a)筛选法 b)递归法 c)归纳法 d)逐步求精法
(4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运算关系是:a)选择 b)投影 c)连接 d)并
二、填空题
1.对于输入为n个数进行快速排序算法的平均时间复杂度是( )
2.在面向对象方法学中,直接反映了用户对目标系统的要求的模型是( )
3.软件测试方法中,黑盒测试个白盒测试法是常用的方法,其中黑盒测试法主要是用于测试( )
4.关系型数据库管理系统中存储与管理数据的基本形式是( )
c语言程序设计
一、选择题
(1)以下程序的输入结果是
main( )
{ int i=010,j=10,k=x10;
printf('%d,%d,%d ',i,j,k);
}
a)8,10,16 b)8,10,10 c)10,10,10 d)10,10,16
(2)指针s所指字符串的长度
char *s=' 'name address ';
a)说法不合法 b)19 c)18 d)15
(3)c语言中最简单的数据类型包括
a)整型、实型、逻辑型 b)整型、实型、字符型
c)整型、字符型、逻辑型 d)整型、实型、逻辑型、字符型
(4)为表示关系x大于等于y大于等于z,应使用c语言表达式
a)(x>=y)&&(y>=z) b)(x>=y)and(y>=z) c)(x>=y>=z) d)(x>=y)&(y>=z)
(5)下列对c语言字符数组的描述中错误的是
a)字符数组可以存放字符串 b)字符数组中的字符串可以整体输入、输出
c)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 d)不可以用关系运算符对字符数组中的字符串进行比较
(6)以下说法中正确的是
a)c语言程序总是从第一个定义的函数开始执行 b)在c语言程序中,要调用的函数必须在main()函数中定义
c)c语言程序总是从main()函数开始执行 d)c语言程序中的main()函数必须放在程序的开始部分
(7)以下程序段的输出结果是
int x=3;
do
{ printf('%3d',x-=2); }
while(!(- -x));
a)1 b)30 c)1 -2 d)死循环
(8)设有如下定义:
char *aa[2]={'abcd','abcd'};
则以下说法中正确的是
a)aa数组元素的值分别是'abcd'和'abcd'
b)aa是指针变量,它指向含有两个数组元素的字符型一维数组
c)aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
d)aa数组的两个元素中各自存放了字符'a'和'a'的地址
(9)设有以下定义:
int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};
int (*prt)[3]=a, * p=a[0];
则下列能够正确表示数组元素a[1][2]的表达式是
a)*((* prt + 1)[2]) b)*(*(p+5)) c)(* prt + 1)+2 d)*(*(a+1)+2)
(10)以下程序的输出结果是
fut( int * *s,int p[2][3])
{ * *s=p[1][1]; }
main( )
{ int a[2][3]={1,3,5,7,9,11},*p;
p=(int * )malloc(sizeof(int));
fut(&p,a);
print('% ',*p);
}
a)1 b)7 c)9 d)11
二、填空题
(1)表示条件:10
(2)下列程序的输出结果是( )
#include
main( )
{ char b[ ]='abcdefg';
char *chp=&b[7];
while(- -chp>&b[0])
putchar(*chp);
putchar(' ');
}
(3)下列程序的输出结果是( )
int ast( int x,int y,int * cp,int * dp)
{ * cp=x+y;
* dp=x-y;
}
main( )