第一部分C基础部分及顺序结构参考答案及解析
1、【答案】A
【解析】C语言被称为“高级语言”是因为它用接近英语国家的自然语言和数学语言作为表达形式,使人们学习和操作起来感到十分方便,相对于其他的高级语言来说,C语言有它自身的优缺点,但却是用的最广泛的语言。由于它可以直接控制计算机硬件,因此其编写的程序运行效率较高。用C语言编写的程序称作C语言源程序,C源程序不能直接执行。C语言的每条可执行语句最终将被转换成只有0和1的二进制的机器指令。
2、【答案】A
【解析】用C语言编写的程序称作C语言源程序,C源程序不能直接执行。C语言的每条可执行语句必须通过相关编译、链接程序、编译并链接成可执行程序(只有0和1的二进制的机器指令),才能在计算机上执行。故选A。C语言有3种基本结构组成:顺序结构,选择结构,循环结构。这3种结构可以完成任何符合结构化的任务,每个任务设计到1-3种结构不等。C语言算法有5个基本特征之一:有穷性,指的是算法必须在执行有限个步骤之后终止,并未限制具体步数。
3、【答案】D
【解析】k=m*n=1错误,m*n是表达式,=左边只能出现单个变量,不可以为常量或表达式。
k=int(m+n)错误,类型名int出现表达式中表示强制类型转换,须加括号,改为k=(int)(m+n)
k=-m-n错误,C语言语句需以分号结尾。
k=(m==n)合法,先运算m==n关系运算,结果为0或1,再将结果赋值给k
4、【答案】C
【解析】(A)int i=1; do{ i+=2;} while(i!=10);为无限循环,i的初始值为1,累加2多次后i值均为奇数,控制表达式i!=10永远为真。B,int i=5; do{ i+=1;} while(i>0);为无限循环,控制表达式i>0永远为真。D,int i=6; do{ i-=2;} while(i!=1);为无限循环,i值累减之后为偶数,控制表达式i!=1永远为真。C,int i=10; do{ i=i+1;} while(i<0);循环体只执行一次后,i为11<0为假,循环结束。
5、【答案】B
【解析】C语言标识符可以由字母数字下划线3种字符组成,只能以字母或者下划线开头。标识符是表示名字的有效字符序列,出现的位置需符合语法,不可以是随意位置。
6、【答案】B
【解析】题目中出现的均是由赋值表达式连成的逗号表达式,而逗号表达式的执行规则是从左至右依次运算执行。a=b, b=c, c=d, d=1;中由于bcd均没有初始值,无法正常执行a=b, b=c, c=d,而报错。
7、【答案】A
【解析】C语言有3种基本结构组成:顺序结构,选择结构,循环结构。这3种结构可以完成任何符合结构化的任务, C语言的每条可执行语句必须通过相关编译、链接程序、编译并链接成可执行程序(只有0和1的二进制的机器指令),才能在计算机上执行。N-S图包括顺序、选择和循环三种基本结构。N-S图是一种在流程图中完全去掉流程线,全部算法写在一个矩形阵内,在框内还可以包含其他框的流程图形式。即由一些基本的框组成一个大的框。
8、【答案】C
【解析】C语言有3种基本结构组成:顺序结构,选择结构,循环结构。这3种结构可以完成任何符合结构化的任务
9、【答案】
【解析】C程序需经过编译、链接之后才能运行,语法错误会在编译阶段报错。
结构化程序,是以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块。按照结构化程序设计的观点,任何算法功能都可以通过由程序模块组成的三种基本程序结构的组合: 顺序结构、选择结构和循环结构来实现。任何一个C程序有且仅有一个main函数。
10、【答案】A
【解析】(n-n/10*10)*10+n/10中,n/10是将n中十位上数字取出作为个位数,(n-n/10*10)*10是将n中个位数取出变为十位数。
11、【答案】C
【解析】0x9是16进制数字,转换为10进制为9,比字符'A’ASCII码值大9的是字符'J
12、【答案】A
【解析】指数型实数的语法规则为:E前E后必有数,E后必为整数。
13、【答案】D
【解析】标识符只能有三种字符构成,字母、数字、下划线。$、#、@均不属于这三种字符。
14、【答案】B
【解析】a++表达式的值为a自加之前的值2。
15、【答案】A
【解析】题目中程序为3个C语言语句,C语言书写合适自由,语句可以从任意一列开始书写,一行内可以写多个语句。C语言是按照语句出现的顺序逐条执行。将前两个分号改为逗号则是将原来的程序变为逗号表达式语句,逗号表达式是从左至右依次执行的。
16、【答案】D
【解析】模块化程序设计的优点:(1)控制了程序设计的复杂性。(2)提高了代码的重用性。(3)易于维护和功能扩充。(4)有利于团队开发,提高开发效率。将一个较大的程序按照功能分割成一些小模块,各模块相对独立、功能单一、结构清晰、接口简单。程序模块化并不能提高程序的执行速度。
17、【答案】A
【解析】m*100+0.5是将m小数点后第三位小数加0.5,若第三位小数大于等于0.5,则第二位小数加1,若小于0.5,则第二位小数不变。m*100+0.5的值为实性数据,n为整型变量,在赋值的过程系统会自动将实型数据转换为整型,舍去小数部分。之后则是m=n/100.0是将之前扩大100的数字恢复原来大小。B项应该改为m=(int)(m*100+0.5)/100.0。
18、【答案】B
【解析】C语言有3种基本结构组成:顺序结构,选择结构,循环结构。这3种结构可以完成任何符合结构化的任务。三种结构可以根据任务需要进行嵌套使用。
19、【答案】A
【解析】C程序不可以直接执行,需要经过编译链接生成可执行文件才可执行。C语言有3种基本结构组成:顺序结构,选择结构,循环结构。这3种结构可以完成任何符合结构化的任务。三种结构可以根据任务需要进行嵌套使用。C语言算法有5个基本特征之一:有穷性,指的是算法必须在执行有限个步骤之后终止,并未限制具体步数。
20、【答案】A
【解析】(A)'cd'考察字符常量,普通字符常量为单引号里面的单个字符,不能出现两个或多个字符。A错。(B)1.234e04 为指数形式(C)'\a'为字符串。(D)'\011'为八进制转义字符。
21、【答案】D
【解析】模块化程序设计将一个较大的程序按照功能分割成一些小模块,各模块相对独立、功能单一、结构清晰、接口简单。每个c语言函数均可单独放在一个文件中编译,但不可独立运行。
22、【答案】C
【解析】图a是while循环流程图,图b为di-while循环流程图。当表达式1和表达式2均为逻辑真时,两个语句均未执行,两者功能等价,但当表达式1和表达式2均为逻辑假时,图a中语句1不执行,而语句2至少执行一次。
23、【答案】C
【解析】该程序未if选择结构,x
24、【答案】A
【解析】x++;为自加表达式,变量的值会自加1,为2.5。而x++表达