二级C语言笔试-35

上传人:汽*** 文档编号:464786055 上传时间:2024-01-18 格式:DOC 页数:21 大小:228.50KB
返回 下载 相关 举报
二级C语言笔试-35_第1页
第1页 / 共21页
二级C语言笔试-35_第2页
第2页 / 共21页
二级C语言笔试-35_第3页
第3页 / 共21页
二级C语言笔试-35_第4页
第4页 / 共21页
二级C语言笔试-35_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《二级C语言笔试-35》由会员分享,可在线阅读,更多相关《二级C语言笔试-35(21页珍藏版)》请在金锄头文库上搜索。

1、二级 C 语言笔试 -35( 总分: 100.00 ,做题时间: 90 分钟 )一、 选择题 (总题数: 50,分数: 60.00)1. 下面对对象概念描述,不正确的是(分数: 1.00 )A. 任何对象都必须有继承性VB. 对象是属性和方法的封装体C. 对象间的通讯靠消息传递D. 操作是对象的动态属性解析: 解析有时为了保护某些特有的对象,可以通过定义其为私有属性达到不被继承的目的。2. 在结构化程序设计方法中,下面哪种内聚性最弱 ?(分数: 1.00 )A. 逻辑内聚B. 时间内聚C. 偶然内聚 VD. 过程内聚解析: 解析内聚有很多种类,其中内聚性由弱到强的顺序为:偶然内聚、逻辑内聚、时

2、间内聚、过程内 聚。3. 以下程序中函数 scmp 的功能是返回形参指针 s1 和 s2 所指字符串中较小字符串的首地址#include #include char *scmp(char *s1,char *s2)if(strcmp(s1,s2) 0)return(s1) ;else return(s2) ;main()int i;char string20,str320;for(i=0;i b) return(分数:1.00 )A. ;else return(B. ;&解析:解析主函数中首先定义了 4个整型变量x、y、z和r,并分别给x、y、z赋初值为3、8、6,接着 调用一个fun()函数

3、,并将返回值赋给变量 r。其中将fun(x,y)函数的返回值和2*z作为fun()函数的两 个参数。在内层fun(x,y)函数中,将x的值和y的值传给形参a和b,此时a和b的值分别为3和8,执 行if语句,由于if后面判断条件表达式“ ab”为假,所以执行 else后面的语句,返回值为 8。此时, 外层fun(x , y)函数两个参数为8和2*z=12,所以,的赋值语句相当于r=fun(8 ,12),同上分析可知fun(8 , 12)返回值为12,因此最后r的值为12。6. 有定义语句:int x,y ;若要通过scanf(%d,%do,&x,&y);语句使变量x得到数值11,变量y得到数值1

4、2,下面四组输入形式中,错误的是(分数:1.00 )A. 11 12 V回车VB. 11 ,12 V 回车C. 11 , 12V回车D. 11 ,V回车12 V回车解析: 解析 scanf() 函数有两个参数,第一个参数为输入格式字符申;第二个参数为输入变量地址列表, 在 scanf() 语句中非格式字符可以作为输入时数据的间隔,输入时必须原样输入,在本题中输入格式串 为%d %d其中“,”为非格式字符,所以输入时必须原样输入。7. 以下不能正确定义二维数组的选项是(分数: 1.00 )A. int a22=1,2;B. int a2=1,2,3,4;C. int a22=1,2,3;D. i

5、nta2=1,2,3,4; V解析: 解析 二维数组的定义和初始化在定义中如果对所有元素赋初值,其第一维的长度可以省略;二维 数组初始化也可以只对每行或前若干行的前若干个元素赋初值; 在二维数组定义时不能省略第二维的长度。8. 在关系数据库中,用来表示实体之间联系的是(分数: 1.00 )A. 树形结构B. 网状结构C. 线性表D. 二维表 V解析: 解析数据库中的关系模型是采用二维表来表示实体与实体之间的联系。9. 有以下程序main()int s=0,a=1,n;seanf(%d,&n) ;dos+=1;a=a-2;while(a!=n) ;printf(%d/n,s) ;若要使程序的输出

6、值为 2,则应该从键盘给 n 输入的值是(分数: 1.00 )A. -1B. -3 VC. -5D. 0解析: 解析根据题目要求,最后要使输出的 s 值为 2,在程序中改变。的值语句只有循环体中的s+=1;语句,而初始9的值为o,显然要使s的值变为2,该语句必须执行,两次,即do-while循环中的循环体要执行两次,而在do-while中,首先不进行条件而执行do后面的循环体语句,然后再判断while循环条件。所以说不管循环判断条件是否为真s+=1;语句至少执行一次,根据分析,只需要 while后面括号的循环判断表达式的值为真一次且只能为真一次, 将四个选项中的内容依次代入该程序中不难得到只有

7、 n=-3 刚 好使循环判断条件 a!=n 为真一次。10. 已定义c为字符型变量,则下列语句中正确的是(分数:1.00)A. C=97;B. C=97;C. c=97 ;VD. c=a;解析:解析用单引号括起来的一个字符称为字符常量,而选项B和选项D中用的是双引号,而用双引号括起来的字符为字符串常量。因为在c语言中,字符常量在存储时,并不是把该字符本身放到内存单元中去,而是将该字符的相应的ASCII代码放到存储单元中,所以C语言使字符型数据和整型数据之间可以通用。而选项A中,给字符型变量赋值时只能赋一个字符,而9, 7作为字符时为两个字符且必须分别用单引号括起来。11. 数据库系统可分为三级

8、模式,下列选项中不属于数据库三级模式的是(分数:1.00 )A. 抽象模式 VB. 外模式C. 概念模式D. 内模式解析:解析数据库的三级模式是指概念模式、内模式和外模式。其中外模式又叫子模式,内模式又叫物 理模式。12. 若已定义的函数有返回值,则以下关于该函数调用叙述中错误的是(分数:1.00 )A. 函数调用可以作为独立的语句存在B. 函数调用可以作为一个函数的实参C. 函数调用可以出现在表达式中D. 函数调用可以作为一个函数的形参V解析:解析在c语言中规定,无返回值的函数调用,可以作为表达式或表达式的一部分,也可以作为一条语句;而有返回值的函数调用只能作为一个函数的实参(即将其返回值传

9、给相应的形参 ),而不能作为形参(因为形参是在函数定义时说明的 )。13. 设有下列二叉树:对此二叉树先序遍历的结果是(分数:1.00 )A.B.C. VD.解析:解析二叉树的遍历分为先序、中序、后序三种不同方式。本题要求先序遍历,遍历顺序应该为: 访问根结点- 先序遍历左子树- 先序遍历右子树。按照定义,先序遍历序列是ABDCEF14. 有以下程序 main()int a33,*p,i p=&a00 ;for(i=0;i v 9;i+)pi=i+1;printf(%d/n,a12);程序运行后的输出结果是(分数: 1.00 )A. 3B. 6VC. 9D. 2解析: 解析主函数中首先定义了一

10、个 3 行3 列的二维数组,定义了一个整型变量指向它,直接通过 for 循环给数组的每一个元素赋值, 使得 a00=1 、a01=2 、a02=3 、a10=4 、a11=5 、a12=6 、 a20=7 、a21=8 、a2 2=9 。15. 有以下程序#include v stdio.h main() printf(%d/n,NULL);程序运行后的输出结果是(分数: 1.00 )A. 0 VB. 1C. -1D. NULL没定义,出错解析:解析在C语言中NULL的ASCII码值为0,而输出函数要求以整型格式输出,故最后的输出数为0。16. 设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是(分数: 1.00 )A. x=x*100+0.5/100.0;B. X=(x*100+0.5)/100.0;C. x=(int)(x*100+0.5)/100.0VD. X=(x/100+0.5)*100.0;解析:解析实型变量中小数点的位数,选项 A中0.5/100.0将保留小数点后六位,不满足题目要求;选 项 B 和选项 D 也将保留小数点后六位,不满足题目要求。17. 有以下程序struct sint x,y;data2=10,100,20,200;main()struct s*p=data ;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号