21若有以下程序
则程序的输出结果是
A.abedB.ABEJC.abejD.ABCD
参考答案:C
参考解析:
若有以下程序:该题目首先初始化变量a和b,通过for循环语句使a取值为0、1、2、3,f函数的功能是将a*a+'a'的值返回给b,即b为a…b e j。最后通过字符输出函数putchar()将b输出。因此C选项正确。
22有以下程序
程序运行后的输出结果是
A.17B.19C.18D.20
参考答案:B
参考解析:本题通过语句P=&a[1]将指针变量P指向了存储单元a[1],即使得p[O]的值为4。然后通过3次for循环,x=0时,*(P+x)=* P=a[1]=4所以y=1+4=5;x=1时,*(P+x)=*(P+1)=a[2]=6,所以y=5+6=11;x=2 时,*(P+X)=*(P+2)=a[3]=8,所以y=11+8=19。因此B选项正确。
23有以下程序
则程序的输出结果是
A.3,5,5,3,5
B.3,5,3,5,5
C.5,3,5,3,5
D.5,3,3,5,5
参考答案:B
参考解析:在主函数中分别给整型变量i、j和指针型变量P,q赋初值,并声明指针变量r;调用f函数,并将实参变量P和q的值传递给形参变量s和t,并且f函数是指针型函数,即函数的返回值将是一个地址。在f函数中,如果条件成立,则将指针变量s和t互换,并且将指针s的地址返回主函数。最后输出i,j,*P,*q,*r的值,即3,5,3,5,5。因此B选项正确。
24以下针对全局变量的叙述错误的是
A.用extern说明符可以限制全局变量的作用域
B.全局变量是在函数外部任意位置上定义的变量
C.全局变量的作用域是从定义位置开始至源文件结束
D.全局变量的生存期贯穿于整个程序的运行期间
参考答案:A
参考解析:在不同编译单位内用extern说明符来扩展全局变量的作用域,extem可以将全局变量作用域扩展到其他文件,而不是限制全局变量的作用域,答案为A选项。
25以下叙述中正确的是
A.如果P是指针变量,则&p是不合法的表达式
B.如果P是指针变量,则*P表示变量P的地址值
C.在对指针进行加、减算术运算时,数字1表示1个存储单元的长度
D.如果P是指针变量,则* P+1和*(P+1)的效果是一样的
参考答案:C
参考解析:A选项中,如果P是指针变量,则&p表示变量P的地址;B选项中,如果P是指针变量,则*P表示变量P所指向的地址的值;D选项中,如果P是指针变量,*P+1表示将P所指的值加上1,而*(P+1)表示的是先将指针右移一位再取所指向变量的值。因此C选项正确。
26以下选项中错误的
A.a!=b与a=a!b等价
B.a^=b与a=a^b等价
C.a|=b与a=a|b等价
D.a&=b与a=a&b等价
参考答案:A
参考解析:A选项中,a!=b表示a不等于b时,运算结果为1,或者为0;而a=a!b是一种语法错误,!是非运算,且是单目运算符,只要求有一个操作数,故两者不等价,答案为A选项。
27有以下程序
程序的输出结果是
A.1 5 0B.3 5 7C.1 4 7D.3 6 9
参考答案:B
参考解析:程序首先初始化二维数组X[3][3],然后通过3次for循环,输出x[0][2]、x[1][1]和x[2][0]的值,即3、5、7。因此B选项正确。
28以下叙述中正确的是
A.只要适当地修改代码,就可以将do-while与while相互转换
B.对于“for(表达式1;表达式2;表达式3)循环体”首先要计算表达式2的值,以便决定是否开始循环
C.对于“for(表达式1;表达式2;表达式3)循环体”,只在个别情况下才能转换成while语句
D.如果根据算法需要使用无限循环(即通常所称的“死循环”),则只能使用while语句
参考答案:A
参考解析:B选项中,for语句中需要先求解先求解表达式1;C选项中,for语句使用最为灵活,它完全可以取代while语句;D选项中,对于死循环,也可以使用for语句。因此A选项正确。
29以下选项中函数形参不是指针的是
A.fun(int*A.i{…}
B.fun(int a[10]){…}
C.fun(int&p){…}
D.fun(int p[]){…}
参考答案:C
参考解析:B选项和D选项是将数组作为函数参数;A选项是将指针作为函数参数;因此C选项正确。
30若有定义和语句:int a,b;
scanf("%d,%d,",&a,&B.;
以下选项中的输入数据,不能把值3赋给变量a、5赋给变量b的是
A.3,5,4B.3,5C.3,5,D.3,5
参考答案:D
参考解析:scanf()的格式控制串可以使用其他非空白字符,如本题中的逗号,但在输入时必须输入这些字符,以保证匹配。所以在3和5之间必须输入逗号,不能有其他符号,才能保证a和b的正确赋值。所以选择D。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |