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

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

1b888468496116082c06ea8d0fe05a0d.png

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

cc0fe0d400650ae9b0144970609ea2f2.png

参考答案:B

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

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

332b9311cb923b6a0b5c30b25f5a3808.png

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

A.a=10 b=50 C=30

B.a=10 b=50 c=10

C.a=10 b=30 c=10

D.a=50 b=30 c:50

参考答案:B

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

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

A.先执行3*4得12,再执行2+12得14,再执行7/3得2,最后执行14+2得16

B.先执行3*4得12,再执行7/3得2.5,最后执行2+12+2.5得16.5

C.先执行7/3得2,再执行3*4得12,再执行12+2得l4,最后执行2+14得l6

D.先执行2+3得5,再执行5*4得20,再执行20+7得27,最后执行27/3得9

参考答案:A

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

14[单选题]

5ac82f6514e584723e4aa1178d91a2d5.png

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

A.7B.0C.3D.8

参考答案:C

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

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

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

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

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

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

参考答案:A

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

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

A.X=Y+z+5,++YB.int(15.8%5)C.X=Y*5=X+ZD.X=25%5.0

参考答案:A

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

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

A.只能写不能读

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

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

D.可以随意读和写

参考答案:A

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

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

a23c4623eef321578076545fa177060e.png

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

A.y=OS)y=一1B.0C.y=1D.while构成无限循环

参考答案:B

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

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

A.31B.16C.17D.5

参考答案:A

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

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

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

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

e1cf73a6d228e733cd87f77eae152cbd.png

参考解析:

0924e6e6c18c9b7aab50b3ce9abfb664.png

【考点分析】

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

【解题思路】

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

相关推荐:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值