c语言答题题库 9.这题怎么算

2017年9月计算机二级C语言程序设计习題及答案

  2017年马上就要开始了你准备好了吗?下面是小编为大家带来的计算机二级程序设计习题,欢迎阅读

  1[单选题] 设有定义:int x,Yz;,且各变量已赋正整数值则以下能正确表示代数式‘

  的C语言表达式是( )。

  参考解析:代数表达式1/(X?Y?z)是小数转为cf语言的表达式必须是小数。A选项由于l.0为浮点数计算结1果自动转换为浮点数,故A选项正确选项B,CD的表达式均为0。答案为A选项

  2[单选题] 以下叙述中正确的是(  )

  A.用户自己定义的函数只能调用库函数

  B.实用的C语言源程序总是由一个或多个函数组成

  C.不同函数的形式参数不能使用相同名称的标识符

  D.在C语言的函数内部,可以定义局部嵌套函数

  参考解析:A选项中”用户自己定义的函数只能调用库函数”描述是不正确的,也可以调用自定义函数;C选项中对于不同函数的形式参数可以使用相同名称的标识符;D选项中,关于函数的定义不可以嵌套但函数的调用可以嵌套。因此B选项正确

  3[单选题] 以下关于C语言数据类型使用的叙述中错误的是( )。

  A.若要处理如“人员信息”等含有不同类型的相关数据应自定义结构体类型

  B.若要保存带有多位小数的数据,可使用双精度类型

  C.若只处理“真”和“假”两種逻辑值应使用逻辑类型

  D.整数类型表示的自然数是准确无误差的

  参考解析:C语言中没有逻辑类型,所以c错误若要保存带有多位小数的数据,可以用单精度类型也可以用双精度类型处理包含不同类型的相关数据可以定义为结构体类型。整数类型可以无误差的表礻自然数

  4[单选题] 下面选项中关于编译预处理的叙述正确的是

  A.预处理命令行必须使用分号结尾

  B.凡是以#号开头的行,都被称为編译预处理命令行

  C.预处理命令行不能出现在程序的最后一行

  D.预处理命令行的作用域是到最近的函数结束处

  参考解析:本题考查预编译的预编译处理命令行预处理命令行不能以分号结尾,所以A选项错误预处理命令行可以出现在程序的最后一行,预处理命令行莋用域是整个文件

  5[单选题] 有以下程序

  2016年计算机二级《C语言》基础练习题及答案(10)

  6[单选题] 设--X树共有150个结点,其中度为l的结点有l0個则该---X树中的叶子结点数为( )。

  参考解析:在树结构中一个结点所拥有的后件个数称为该结点的度,所有结点中最大的度称为树的喥对任何一棵二叉树,度为0的结点总是比度为2的结点多一个如果有一棵二叉树,结点总数为l50假设度为0的结点个数为n,则有n+10+n一1=150n=70.5,由於结点个数必须是整数所以不可能有题目中这样的二叉树。故选择D选项

  7[单选题] 有以下程序:

  程序运行后的输出结果是( )。

  參考解析:在f(int+Pint 4 q)函数中,执行P=P+1是将P所对应的地址加1而0 q=+q+1是将q所指向的n的地址所对应的值加1,所以m的得知所对应的值没有变而n的值则为3了。因此B选项正确

  8[单选题] 以下选项中,能用作用户标识符的是( )

  参考解析:C语言中标识符由字母、下划线、数字组成,且开头必須是字母或下划线另外,关键字不能作为标识符8中以数字8开头,所以错误c与D中用的是关键字void与unsigned,所以错误

  9[单选题] 以下叙述正確的是( )。

  B.文件指针的值是一个整数它的值一定小于文件字节数

  C.文件指针的值是所指文件的当前读取位置

  D.使用fscanf函数可以向任意类型的文件中写入任意数量的字符

  slzeof(FILE})=4,因为file?为指针指针的大小4,sizeof(int?)=4理由同前面。文件指针的值是地址是一个16进制的数,它的徝不一定小于文件字节数因此选项8错误。文件指针是所指文件的当前读取位置而不是文件指针的值因此选项C错误。mgscanf(FILE-streamconstchar}format,[argument…]fmanf函数可以向任意类型的文件写入任意数量不能超过系统的缓冲区,写文件先写入缓冲区最后一起写入文件,因此选项D错误答案为A选项。

  10[简答题]下列给定程序中函数fun的功能是:将tt所指字符串中的小写字母全部改为对应的大写字母其他字符不变。

  例如若输入“Ab,cD”则輸出“AB,CD”

  请改正程序中的错误,使它能得出正确的结果

  注意:部分源程序在文件MODIl.C中,不得增行或删行也不得更改程序的結构!

  1[单选题] 有以下程序:

  2016年计算机二级《C语言》基础练习题及答案(11)

  以上程序执行后abc.dat文件的内容是( )。

  参考解析:本题考查攵件操作函数fwrite和rewind函数,题目中先是将s2字符串写入adc.dat中然后将写指针回到文件开头,然后写入sl字符串那么sl字符串就将前5个字符覆盖,所鉯最终结果为Chinan9选项B正确。

  2[单选题] 如果定义

  则以下叙述中正确的是

  参考解析:B选项中表达式a+1不是非法的;C选项中,*(a+1)即指a[1];D选项Φ*&a[1]不是非法的。因此A选项正确

  3[单选题] 有以下程序(strcpy为字符串复制函数,streat为字符串连接函数)

  2016年计算机二级《C语言》基础练习题及答案(11)

  程序运行后的.输出结果是

  参考解析:本题考查字符串处理函数strcpy和streat执行完strcpy(a+1,b+2);后a变为a2,执行完strcat(ac+1)后,a变为a2yz所以答案为C选项。第3题 笔记记录我的笔记(0) | 精选笔记(3)选择笔记标签:试题内容(2)答案解析(1)

  4[单选题] 以下叙述中正确的是(  )

  B."a"表示一个字符常量

  C.表达式:'a'>'b'的结果是”假”

  D.'"'是非法的

  参考解析:A选项中'\0'表示结束;B选项中,字符常量是用单引号括起来的一个字符;D选项中'"'是双引号符。因此C选项正确

  5[单选题] 有以下程序

  2016年计算机二级《C语言》基础练习题及答案(11)

  程序运行后的输出结果是

  参考解析:本题主要考查do…while语句,执行fun函数后a数组里面的元素变为35745,输出后四个字符所以结果为5745。选项B正确

  6[单选题]若有以下程序

  2016年计算机②级《C语言》基础练习题及答案(11)

  则程序的输出结果是

  参考解析:若有以下程序

  该题目首先初始化变量a和b,通过for循环语句使a取徝为0、1、2、3f函数的功能是将a*a+'a'的值返回给b,即b为a…b e j最后通过字符输出函数put)将b输出。因此C选项正确

  7[单选题] 下列关于数据库设计的叙述中,正确的是( )

  A.在需求分析阶段建立数据字典

  B.在概念设计阶段建立数据字典

  C.在逻辑设计阶段建立数据字典

  D.在物理设计階段建立数据字典

  参考解析:数据字典是在需求分析阶段建立,在数据库设计过程中不断修改、充实和完善的

  8[单选题] 软件设计Φ划分模块的一个准则是( )。

  A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦台

  参考解析:一般较优秀的软件设计应尽量做箌高内聚,低耦合即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性

  9[单选题] 有以下程序:

  2016年计算机②级《C语言》基础练习题及答案(11)

  程序运行后的输出结果是( )。

  参考解析:本题考查结构体的相关操作以及传值、传址的区别该题Φ调用f函数后,会生成参数C的一个副本而不会改变c的值,所以c值维持原值选项D正确。

  10[单选题] 在一个C源程序文件中所定义的全局变量其作用域为( )。

  A.由具体定义位置和extem说明来决定范围

  B.所在程序的全部范围

  C.所在函数的全部范围

  D.所在文件的全部范围

  參考解析:全局变量的作用域是从声明处到文件的结束所以选择A)。

  11[单选题] 有以下程序:

  2016年计算机二级《C语言》基础练习题及答案(11)

  参考解析:第一次执行外循环i的值为3,第一次执行内循环j的值为1j<=2条件成立,打印i+j的值即4;第二次执行内循环J的值为2,j<=2条件成立打印i+j的值,即5;再判断条件不成立打印回车换行符,跳出内循环第二次执行外循环,i的值为2内循环的执行同第一次一样,所以打印3囷4打印回车换行,结束内循环第三次执行外循环i的值为1,同理内循环中打印2和3打印回车换行符,结束内循环

  12[单选题] 有以下程序段:

  2016年计算机二级《C语言》基础练习题及答案(11)

  程序运行后的输出结果是( )。

  参考解析:本题中a>b的条件不满足所以不执行逗號表达式a=b,b=c;的操作而是执行c=a操作,即c的值勾10

  13[单选题] 若有C语言表达式2+3*4+7/3,以下选项中叙述正确的执行顺序是

  参考解析:首先在c語言中,乘除法优先级要高于加减法其次,除法运算符"/"两边参加运算对象都是整数运算结果要取整,故排除BD选项;C语言中。因为“*”囷“/”都满足从左到右的运算规则故应先计算3*4=12。因此c排除答案为A选项。

  2016年计算机二级《C语言》基础练习题及答案(11)

  程序运行后嘚输出结果是( )

  参考解析:题意统计字符s中阿拉伯数字的个数。char s[]=’012xy\08s34f4w2’;元素是字符型~0=48;而’\0’=0;因此可以计算出’、0’之前阿拉伯数字嘚个数,由字符串s可知有3个阿拉伯数字。答案为C选项

  15[单选题] 以下叙述中正确的是( )。

  A.c语言规定必须用main作为主函数名程序将从此开始执行

  B.可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

  C.c语言程序将从源程序中第一个函数开始执行、

  D.main的各种大小写拼写形式都可以作为主函数名如MAIN,Main等

  参考解析:C语言中的主函数只能是main()函数不能任意指定,所以B选项错误C語言从主函数main()开始,到主函数main()结束所以C选项错误。主函数必须写成小写的main不能混淆大小写,所以D选项错误

  16[单选题] 设变量已正确萣义并赋值,以下正确的表达式是( )

  参考解析:B与D选项中取模运算符%的左右两个操作数均应为整数,所以B、D错误c选项中不能将X+Y的值賦给表达式Y*5,所以c错误

  17[单选题] 设文件指针fp已定义,执行语句fp=fopen(”61e””W”);后,以下针对文本文件file操作叙述的选项中正确的是( )

  B.写操作结束后可以从头开始读

  C.可以在原有内容后追加写

  D.可以随意读和写

  参考解析:考查文件操作函数fopen的基础知识, 以”W”方式咑开文件只能写不能读。选项A正确

  18[单选题] 有以下程序:

  2016年计算机二级《C语言》基础练习题及答案(11)

  程序执行后的输出结果昰( )。

  参考解析:执行Y一一直到值为0由于Y一一是先用再减,所以退出循环时y的值为一l。

  19[单选题] 设Z.X树中 共有31个结点其中的结点徝互不相同。如果该二叉树的后序序列与中序序列相同该二叉树的深度为( )。

  参考解析:二叉树遍历可以分为3种:黄序遍历(访问根结點在访问左子树和访问右子树之前)、中序童历(访问根结点在访问左子树和访问右子树两者之问)、后序童历(访问根结点在访问左子树和访问祐子树之后)由结点售互不相同而后序序列与中序序列相同,可知该二叉树所有的结点都没有右子树所以31个结点的二叉树深度为31:故选A選项。

  20[简答题]学生记录由学号和成绩组成N名学生的数据已放入主函数中的结构体数组中,请编写函数fun其功能是:把分数最低的学苼数据放入b所指的数组中,注意:分数最低的学生可能不止一个函数返回分数最低的学生人数:

  注意:部分源程序在文件PROGl.C中。

  請勿改动主函数main和其他函数中的任何内容仅在函数flm的花括号中填入你编写的若干语句。

  2016年计算机二级《C语言》基础练习题及答案(11)

  2016年计算机二级《C语言》基础练习题及答案(11)

  本题考查:查找结构体数组中的最小数据需要通过for循环语句和if条件语句来完成。

  本題中第一个循环语句的作用是遍历数组求出最低分数第二个循环语句的作用是将数组中的元素与最低分比较,查找是否存在与最低分相等的成绩

【2017年9月计算机二级C语言程序设计习题及答案】相关文章:

每次func调用结束后

注意局部变量m和k傳值到func后就洗洗睡了func里的m和i是函数自己定义的静态变量,和它们没有任何关系

i为什么等于0+1+2 m的值不应该是1吗 为什么是0
已经很明确地说明这個m是静态变量初始值为0。自己再看看代码func内外两个m是不同的

你对这个回答的评价是?

我要回帖

更多关于 c语言答题题库 的文章

 

随机推荐