21若有以下程序
则程序的输出结果是
A.4,5,6,7,
B.4,7,10,13,
C.4,6,8,10,
D.3,5,7,9,
参考答案:C
参考解析:主函数中变量k作为for语句的循环变量,取值0、1、2、3,同时也作为实参通过调用函数f传递给形参变量m。南于变量a是全局变量,变量n是static静态变量,因此k=0时,f函数中,语句return n+m+a;即l+0+3=4;k=1时,f函数中,语句retum n+m+8;即2+1+3=6;k;2时,f函数中,语句returnn+m+a;即3+2+3=8;k=3时,f函数中,语句return n+m+a;即4+3+3=10。因此C选项正确。
22若有以下程序
执行时若输入:(其中表示回车符)
Fig flower is red.
则输出结果是
A.wet is red.Fig Co is blue.
B.wet is red.Fig flo
C.wet is red.The sky is blue.
D.Fig flower is red.The sky is blue.
参考答案:A
参考解析:程序首先初始化字符数组b[],执行for循环语句。循环变量i的取值范围从0到6。在for循环语句中通过scanf函数将从键盘上输入的数据输入到b[]中,即b的值为Fig Co is blue.。退出for循环语句,执行语句gets(A.;,gets()函数的调用形式为:gets(str_adr),其中str_adr是存放输入字符串的起始地址,可以是字符数组名。字符数组元素的地址或字符指针变量。gets函数用来从终端键盘读入字符串(包括空格符),直到读入一个换行符为止,即a的值为wflr is red.。因此A选项正确。
23以下叙述中正确的是
A.数组下标的下限是1
B.数组下标的下限由数组中第一个非零元素的位置决定
C.数组下标的下限由数组中第一个被赋值元素的位置决定
D.char el,c2,*c3,c4[40];是合法的变量定义语句
参考答案:D
参考解析:
数组下标的下限是0。因此D选项正确。
24对于while(!E)s;,若要执行循环体s,则E的取值应为:
A.E等于1B.E不等于0C.E不等于1D.E等于0
参考答案:D
参考解析:while语句的一般形式为:while(表达式)语句;其中表达式是循环条件,语句为循环体。while语句的语义是:计算表达式的值,当值为真(非0)时,执行循环体语句。该题中如要执行语句s,则!E应为真,因此E应等于0,D选项正确。
25以下叙述中正确的是
A.局部变量不能被说明为static
B.只有全局变量才有自己的作用域,函数中的局部变量没有作用域
C.只有在函数内部定义的变量才是局部变量
D.只要是用户定义的标识符,都有一个有效的作用域
参考答案:D
参考解析:本题考查局部变量和全局变量作用域,B选项中局部变量也有作用域,C选项中,函数内部定义的也可能是全局变量,A选项错误,因为可以定义个静态局部变量。
26有以下程序
程序的输出结果是
A.693825B.69825C.63825D.6385
参考答案:D
参考解析:本题的意图在于将C中两个字符串的偶数位置的数字组成一个新数,找到的四个数字分别为6、3、8、5,组成的数为6385,所以答案为D选项。
27有如下程序段
则循环结束后i的值为
A.6B.5C.9D.10
参考答案:A
我的答案:D
参考解析:if(i>5)break;表示判断i值,如果i大于5,执行break语句,结束循环程序,这里当i=6,循环结束。因此答案为A选项。第27题 笔记记录我的笔记(0) | 精选笔记(1)选择笔记标签:试题内容(1)答案解析(0)
28以下叙述中正确的是
A.只能在循环体内和switch语句体内使用break语句
B.当break出现在循环体中的switch语句体内时,其作用是跳出该switch语句体,并中止循环体的执行
C.continue语句的作用是:在执行完本次循环体中剩余语句后,中止循环
D.在while语句和do-while语句中无法使用continue语句
参考答案:A
参考解析:break语句通常用在循环语句和开关语句中。
当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;当break语句用于do…while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句,即满足条件时便跳出循环。continue语句的作用是跳过循环体中剩余的语句而强行执行下一次循环。B选项中break只跳出该switch语句,并不能终止循环,因此B错。C选项continue语句结束本次循环,至于大循环的终止与否与其无关,因此C错。D项中while和do…while语句都可以使用,continue语句跳出本次循环,因此D错误。因此A进项正确。
29有以下程序
程序运行后的输出结果是
A.2 6B.2 3C.4 3D.4 6
参考答案:B
参考解析:本题主要考查指针与数组。观察题目,可以发现,*P=&aa[0][0]语句实际是将数组”的首地址赋给了指针变量P。将i的值带入for循环中,i=0时,aa[0][1]=3,*P=2;*P输出的是指针所指向的数组值,此时P所指向的是aa[O][0],输出2,而i=1时执行了++P操作使指针向后移动指向了aa[0][1],所以在输出*P时应为3。因此B选项正确。
30以下叙述中正确的是
A.if语句只能嵌套一层
B.if子句和else子句中可以是任意的合法的c语句
C.不能在else子句中再嵌套if语句
D.改变if-else语句的缩进格式,会改变程序的执行流程
参考答案:B
参考解析:A选项中,if语句的嵌套没有规定层数;C选项中,可以在else予句中再嵌套if语句;D选项中,改变if—else语句的缩进格式,不会改变程序的执行流程,需要注意if和else的配对问题。因此B选项正确。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |