C语言--每日五道选择题--Day19
最佳答案 问答题库778位专家为你答疑解惑
第一题
1. 为了避免在嵌套的条件语句if-else中产生二义性,C语言规定else子句总是与( )配对。
A:缩排位置相同的if
B:之前最近的未匹配的if配对
C:其之后最近的if
D:同一行上的if
答案及解析 B
else语句是跟最近的未匹配的if语句配对
第二题
2. 若有定义语句: int year=1009 , *p=&year ;以下不能使变量 year 增至 1010 的语句是
A:*p+=1;
B:(*p)++;
C:++(*p)
D:*p++A
答案及解析 D
A:*p += 1 等价于 *p = *p + 1;
B:(*p)++ 先解引用获得year的值再++
C:跟B同理,只不过是前置++和后置++
D:*p++ 这里++的优先级是高于*的,所以这里p++之后,到往后跳了1个整型的距离,再解引用肯定不是year,是一未知的数字;
第三题
3. 已定义ch为字符型变量,以下赋值语句中错误的是()
A:ch='\';
B:ch=62+3;
C:ch=NULL;
D:ch='\xaa';
答案及解析 A
A:错误,\把后面的'转义了,所以错误
B:正确,由于字符型变量有ASCII值,所以62+3 = 65 也就是 A字符
C:正确,NULL是由#define定义的宏,为0,是'\0'这个字符
D:正确,\xaa是一个字符,是16进制字符的表示方法,所以正确
第四题
4. 已知:char str1[8],str2[8]={"good"};,则在程序中不能将字符数组str2赋值给str1的语句是
A:str1=str2;
B:strcpy(str1,str2);
C:strncpy(str1,str2,6);
D:memcpy(str1,str2,5);
答案及解析 A
A:数组名是地址常量,不可以更改,所以不能做赋值运算符的左值,因为赋值运算符的左值必须是变量;
B:strcpy是拷贝函数,遇到\0停止,所以可以完成拷贝。
C:strncpy是我们让他拷贝几个字符就拷贝几个,题中给6个,完全够用。
D:memcpy是按照字节拷贝,char类型是一个字节,所以题中给5个字节完全够用
第五题(错了)
5. 以下程序的输出结果是:
#include<stdio.h>
int main()
{int x = 0, y = 5, z = 3;while(z-->0 && ++x<5){y= y - 1;}printf("%d, %d, %d\n", x, y, z);return 0;
}
A:2,2,0
B:3,2,-1
C:4,3,-1
D:5,-2,-5
答案及解析 B
这里需要注意的一点就是
后置--/++ 返回的是变化之前的值,这个值是变量的临时拷贝,但是变量本身是变化了。
前置--/++返回的就是变化后的变量的值。
在最后一次z == 0的时候,进入循环,虽然不满足条件,但是z--已经运算了,所以是-1
99%的人还看了
相似问题
- MeterSphere | 接口测试请求体中,int类型的入参实现动态化变量
- 【Vue】Node.js的安装与环境变量的配置
- C#中抽象类、抽象方法和接口暨内联临时变量的精彩表达
- ODBC配置数据源及相关问题(“找不到工程和库”“实时错误91对象变量或with块变量未设置”等)
- OpenLayers实战,WebGL图层根据Feature要素的变量动态渲染多种颜色的三角形,适用于大量三角形渲染不同颜色
- 全网最全jmeter接口测试/接口自动化测试看这篇文章就够了:跨线程组传递jmeter变量及cookie的处理
- Go——二、变量和数据类型
- 华为云cce中环境变量的使用
- Kotlin学习——hello kotlin 函数function 变量 类 + 泛型 + 继承
- ⑩⑤【DB】详解MySQL存储过程:变量、游标、存储函数、循环,判断语句、参数传递..
猜你感兴趣
版权申明
本文"C语言--每日五道选择题--Day19":http://eshow365.cn/6-40597-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: 有趣的按钮分享
- 下一篇: 16.Oracle的数据字典和动态性能视图