网站大量收购独家精品文档,联系QQ:2885784924

二级C选择题错题(二).docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
二级C选择题错题(二)

二级C语言程序设计基本概念用C语言编写的代码程序(???)。答案:BA)可立即执行?B)是一个源程序C)经过编译即可执行?D)经过编译解释即可执行结构化程序由三种基本结构组成,三种基本的结构组成的算法(???)。A)可以完成任何复杂的任务B)只能完成部分复杂的任务C)只能完成符合结构化的任务D)只能完成一些简单的任务算机能直接执行的程序是(???)。答案:DA)源程序B)目标程序C)汇编程序D)可执行程序本题答案为:D题目解析:本题考查的是C程序的基本概念。C语言是一种高级语言,C语言源程序经过C语言编译程序编译之后,生成一个后缀为.obj的二进制文件(称为目标程序),最后还要由称为“连接程序”(Link)的软件,把此.obj文件与C语言提供的各种库函数连接在一起,生成一个后缀.exe的可执行程序。显然C语言源程序不能立即执行,故选项A)错误。根据以上定义,选项B)和选项C)错误。故本题应该选择D)。C语言设计的初步知识有以下程序:?main(?)?{int?x=102,?y=012;?printf(%2d,%2d\n,x,y);?}?执行后输出结果是(???)。A)10,01B)02,12C)102,10D)02,10本题答案为:C题目解析:本题考核的知识点是输出函数printf()的应用。本题中,printf(%2d,%2d\n,x,y)表示输出形式是十进制整数,域宽是2,而在C语言中规定:当域宽小于实际宽度时域宽不起作用,按实际宽度输出,因此最后的输出值为102和10,所以选项C)符合题意。以下4个选项中,不能看成一条语句的是(???)。答案:DA);B)a=5,b=2.5,c=3.6;C)if(a5);D)if(b!=5)x=2;?y=6;本题答案为:D题目解析:选项D)为两条语句有以下程序段:?int?j;float?y;char?name[50];?scanf(%2d%f%s,j,y,name);?当执行上述程序段,从键盘上输入55566?7777123?后,y?的值为(???)。A)5B)566.0C)7777.0D)566777.0本题答案为:B题目解析:本题考查通过scanf?函数输入数据时的格式控制问题。变量j?的格式控制为“%2d”,即只接收输入数据的前两位,从第三位开始直到空格之间的输入都会被保存到变量y?中,因为y?为浮点型数据,所以输出结果为选项B)。以下程序的输出结果是(???)。?main(?)?{int?a=666,b=888;?printf(%d\n,(a,b));?}答案:CA)错误信息B)666C)888D)666,888选择结构有以下程序:?#include?stdio.h?main(?)?{int?x=1,?y=0,?a=0,?b=0;?switch?(x)?{????case?1:?switch?(y)?{?????case?0:?a++;?break;?case?1:?b++;?break;?}?case?2:?a++;?b++;?break;?case?3:?a++;?b++;?}?printf(a=%d,b=%d\n,?a,?b);?}?程序的运行结果是(???)。A)a=1,?b=0B)a=2,?b=2C)a=1,?b=1D)a=2,?b=1本题答案为:D题目解析:本题主要考查的是switch语句的嵌套。首先看外层switch,因为x初始时为1,进入外层case?1分支,这里又是一个switch语句。因为y初始时为0,进入内层case?0分支,执行a++;?break;,因为遇到break,所以此时应该跳出内层switch语句,跳出来后由于没有碰到break;语句,所以应执行外层case?2分支,a++;?b++;?break;,此时又遇到break;所以跳出外层switch语句。由此可见,整个switch语句中,a被增1两次,b增1一次,所以执行最后一条printf语句输出a=2,b=1。有以下程序:?#include?stdio.h?main(?)?{int?x=1,?y=2,?z=3;?if?(xy)?if?(yz)printf(%d,?++z);?else?printf(%d,?++y);?printf(%d\n,?x++);?}?程序的运行结果是(???)。答案:DA)331B)41C)2D)1本题答案为:D题目解析:本题考查的是if…else语句。C语言规定else总是与最近的if搭配,因此程序中else与第二个if搭配。程序首先判断(xy),为假,所以跳过后面的整个if…else语句。执行到输出语句时,x的值仍为1,x++返回x增1之前的结果1,故应该选择D)。若有定义float?x=1.5;int?a=1,b=3,c=2;,则正确的switch?语句是(??

文档评论(0)

000 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档