![]() ![]() |
||||||||||||||||||||||||||||
06年9月计算机等级考试二级C语言考前密卷一 | ||||||||||||||||||||||||||||
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 14:36:05 文章录入:杜斌 责任编辑:杜斌 | ||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||
一、选择题 (1)有以下程序
程序运行后的输出结果是 A)16 B)10 C)8 D)6 (2)有以下程序
程序运行后的输出结果是 A)10 B)11 C)14 D)15 (3)有以下程序
程序运行后的输出结果是 A)1,2,3,4,5,6,7,8,9,10, B)1,2,7,6,3,4,5,8,9,10, C)1,2,7,6,5,4,3,8,9,10, D)1,2,9,8,7,6,5,4,3,10, (4)有以下程序
程序运行后的输出结果是 A)6 B)7 C)5 D)8 (5)有以下程序
程序运行后的输出结果是 A)3 5 5 3 B)5 3 3 5 C)3 5 3 5 D)5 3 5 3
(6)算法的时间复杂度是指 A)执行算法程序所需要的时间 B)算法程序的长度 C)算法执行过程中所需要的基本运算次数 D)算法程序中的指令条数 (7)软件生命周期中所花费用最多的阶段是 A)详细设计 B)软件编码 C)软件测试 D)软件维护 (8)数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为 A)C B)Basic C)DDL D)DML (9)下列有关数据库的描述,正确的是 A)数据库是一个DBF文件 B)数据库是一个关系 C)数据库是一个结构化的数据集合 D)数据库是一组文件 (10)下列有关数据库的描述,正确的是 A)数据处理是将信息转化为数据的过程 B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变 C)关系中的每一列称为元组,一个元组就是一个字段 D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字
(6)算法的时间复杂度是指 A)执行算法程序所需要的时间 B)算法程序的长度 C)算法执行过程中所需要的基本运算次数 D)算法程序中的指令条数 (7)软件生命周期中所花费用最多的阶段是 A)详细设计 B)软件编码 C)软件测试 D)软件维护 (8)数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为 A)C B)Basic C)DDL D)DML (9)下列有关数据库的描述,正确的是 A)数据库是一个DBF文件 B)数据库是一个关系 C)数据库是一个结构化的数据集合 D)数据库是一组文件 (10)下列有关数据库的描述,正确的是 A)数据处理是将信息转化为数据的过程 B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变 C)关系中的每一列称为元组,一个元组就是一个字段 D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字
(16)C语言中运算对象必须是整型的运算符是 A)%= B)/ C)= D)<= (17)若变量a,i已正确定义,且i已正确赋值,合法的语句是 A)a= =1 B)++i; C)a=a++=5; D)a=int(i); (18)已知 int t=0; while (t=1) {...} 则以下叙述正确的是 A)循环控制表达式的值为0 B)循环控制表达式的值为1 C)循环控制表达式不合法 D)以上说法都不对 (19)若变量已正确说明为float型,要通过语句scanf("%f%f%f",&a,&b,&c);给a赋予10.0,b赋予22.0,c赋予33.0,下列不正确的输入形式是 A)10<回车>22<回车>33<回车> B)10.0,22.0,33.0<回车> C)10.0<回车>22.033.0<回车> D)10 22<回车>33<回车> (20)有如下程序:
该程序的输出结果是 A)a=2,b=1 B)a=1,b=1 C)a=1,b=0 D)a=2,b=2 (21)有以下程序
执行后输出结果是 A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 (22)有如下程序
该程序的输出结果是 A)0.000000 B)0.250000 C)0.500000 D)1.000000 (23)有如下程序:
该程序的输出结果是 A)987 B)876 C)8765 D)9876 (24)在下列选项中,没有构成死循环的是 A)int i=100; while(1) {i=i%100+1; if(i>100)break; } B)for(;;); C)int k=10000; do{k++;}while(k>10000); D)int s=36; while(s)--s; (25)设int x=1,y=1;表达式(!x||y--)的值是 A)0 B)1 C)2 D)-1
(26)若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是 A)函数调用可以作为独立的语句存在 B)函数调用可以作为一个函数的实参 C)函数调用可以出现在表达式中 D)函数调用可以作为一个函数的形参 (27)有以下程序
程序运行后的输出结果是 A)编译出错 B)9 C)21 D)9.0 (28)若有以下调用语句,则不正确的fun函数的首部是
A)void fun(int m, int x[]) B)void fun(int s, int h[41]) C)void fun(int p, int *s) D)void fun(int n, int a) (29)fseek函数的正确调用形式是 A)fseek(文件指针,起始点,位移量) B)fseek(文件指针,位移量,起始点) C)fseek(位移量,起始点,文件指针) D)fseek(起始点,位移量,文件指针) (30)若fp是指向某文件的指针,且已读到文件末尾,则函数feof(fp)的返回值是 A)EOF B)-1 C)1 D)NULL
(26)若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是 A)函数调用可以作为独立的语句存在 B)函数调用可以作为一个函数的实参 C)函数调用可以出现在表达式中 D)函数调用可以作为一个函数的形参 (27)有以下程序
程序运行后的输出结果是 A)编译出错 B)9 C)21 D)9.0 (28)若有以下调用语句,则不正确的fun函数的首部是
A)void fun(int m, int x[]) B)void fun(int s, int h[41]) C)void fun(int p, int *s) D)void fun(int n, int a) (29)fseek函数的正确调用形式是 A)fseek(文件指针,起始点,位移量) B)fseek(文件指针,位移量,起始点) C)fseek(位移量,起始点,文件指针) D)fseek(起始点,位移量,文件指针) (30)若fp是指向某文件的指针,且已读到文件末尾,则函数feof(fp)的返回值是 A)EOF B)-1 C)1 D)NULL
(36)以下说法正确的是 A)C语言程序总是从第一个的函数开始执行 B)在C语言程序中,要调用函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分 (37)表达式0x13^0x17的值是 A)0x04 B)0x13 C)0xE8 D)0x17 (38)有以下程序
程序运行后的输出结果是 A)12 B)15 C)16 D)20 (39)下列程序执行后的输出结果是
A)6 B)7 C)8 D)9 (40)若有下面的程序段: char s[]="china";char *p; p=s; 则下列叙述正确的是 A)s和p完全相同 B)数组s中的内容和指针变量p中的内容相等 C)s数组长度和p所指向的字符串长度相等 D)*p与s[0]相等
(41) 以下程序中函数sort的功能是对a数组中的数据进行由大到小的排序
程序运行后的输出结果是 A)1,2,3,4,5,6,7,8,9,10, B)10,9,8,7,6,5,4,3,2,1, C)1,2,3,8,7,6,5,4,9,10, D)1,2,10,9,8,7,6,5,4,3, (42) 以下程序的运行结果是
A)6 B)8 C)10 D)12 (43)若有语句int *point,a=4;和 point=&a;下面均代表地址的一组选项是 A)a,point,*&a B)&*a,&a,*point C)*&point,*point,&a D)&a,&*point,point (44)在调用函数时,如果实参是简单的变量,它与对应形参之间的数据传递方式是 A)地址传递 B)单向值传递 C)由实参传形参,再由形参传实参 D)传递方式由用户指定 (45)已定义以下函数
函数的功能是 A)将p1所指字符串复制到p2所指内存空间 B)将p1所指字符串的地址赋给指针p2 C)对p1和p2两个指针所指字符串进行比较 D)检查p1和p2两个指针所指字符串中是否有'\0'
(41) 以下程序中函数sort的功能是对a数组中的数据进行由大到小的排序
程序运行后的输出结果是 A)1,2,3,4,5,6,7,8,9,10, B)10,9,8,7,6,5,4,3,2,1, C)1,2,3,8,7,6,5,4,9,10, D)1,2,10,9,8,7,6,5,4,3, (42) 以下程序的运行结果是
A)6 B)8 C)10 D)12 (43)若有语句int *point,a=4;和 point=&a;下面均代表地址的一组选项是 A)a,point,*&a B)&*a,&a,*point C)*&point,*point,&a D)&a,&*point,point (44)在调用函数时,如果实参是简单的变量,它与对应形参之间的数据传递方式是 A)地址传递 B)单向值传递 C)由实参传形参,再由形参传实参 D)传递方式由用户指定 (45)已定义以下函数
函数的功能是 A)将p1所指字符串复制到p2所指内存空间 B)将p1所指字符串的地址赋给指针p2 C)对p1和p2两个指针所指字符串进行比较 D)检查p1和p2两个指针所指字符串中是否有'\0'
(11) 用高级语言编写的程序称为【11】程序,它可以通过解释程序翻译一句执行一句的方式执行,也可以通过编译程序一次翻译产生目标程序,然后执行。 解析: 用高级语言编写的程序称为源程序,源程序不能在计算机上直接运行,运行源程序有两种方式:一种是通过解释程序,对源程序逐句解释执行;另一种是先让编译程序将源程序一次翻译产生目标程序(目标程序是计算机可直接执行的机器语言程序,它是一种二进制代码程序),然后执行目标程序。 (12) 以下程序的输出结果是【12】。
解析: 赋值表达式的值就是所赋值变量的值,本题中a+=8相当于a=a+8,对表达式逐步进行求解: a+=(a=8)此时,a的值由于赋值为8,而不是0 a+=8 a=a+8 a=16 (13)函数
解析: C语言中实参变量和形参变量的数据传递是单向的“值传递”方式。指针变量作函数也要遵循这一规则。调用函数不可能改变实参指针变量的值,但可以改变实参指针变量所指变量的值。 (14)函数fun的功能是:根据以下公式求p的值,结果由函数值返回。m与n为两个正数且要求m>n。 例如:m=12,n=8时,运行结果应该是495.000000。请在题目的空白处填写适当的程序语句,将该程序补充完整。
解析:本题中,欲求p的值,需要先求m,n,m-n的阶乘值,可用循环语句实现。 (15)该程序运行的结果是【17】。
解析: 解答本题的关键是要读懂程序,试题要找出能被7或11整除的所有整数,注意数学中的“或”和C语言中的“或”的区别,但在此处,if条件语句中用了“||”运算符,若要找能同时被7和11整除的所有整数则在if()中应用“&&”运算符。 当然,如果m的值输入50,即表达式fun(10,aa,&n);为fun(50,aa,&n);时输入结果为:7 11 14 21 22 28 33 35 42 44 49。 (16)下列程序的功能是:求出ss所指字符串中指定字符的个数,并返回此值。 例如,若输入字符串123412132,输入字符1,则输出3,请填空。
解析: 从字符串ss中找出子字符串的方法是:从第1个字符开始,对字符串进行遍历;若ss串的当前字符等于t串的第1个字符,两字符串的指针自动加1,继续比较下一个字符;若比较至字符串的结尾,则跳出循环;若ss串的字符和c串的字符对应不同,继续对ss串的下一个字符进行处理。本程序是采用逐一比较的方式找出出现的次数。循环的作用是在串中从左到右逐一走动,if()的作用是进行判断是否相同,若与c相同则表示又出现一次。 (17)下面程序把从终端读入的文本(用@作为文本结束标志)输出到一个名为bi.dat的新文件中,请填空。
解析: 该题考查两个知识点: (1)用一个指定的标识符(即名字)来代表一个字符串,它的一般形式为#define 标识符 字符串 (2)在MYSWAP宏定义中,利用中间变量z来交换x和y的值,所以要实现a和b的交换,只需通过中间变量即可,所以,此处应填c。
答案 选择题 01-05 C D B D D |
||||||||||||||||||||||||||||
![]() ![]() |