以下程序段的输出结果是( )。 int a=15; System.out.println(~a); A:11 B:-21 C:-16 D:-15

以下程序段的输出结果是( )。 int a=15; System.out.println(~a); A:11 B:-21 C:-16 D:-15,第1张

-16

~a意思是反 *** 作

负数计算法则就是取反后+1

所以(~a)=-(15+1)=-16

结果是C

for循环实际就是1~5求和,再加上初值1,所以结果就是-16了。

扩展资料:

for循环小括号里第一个“”号前为一个为不参与循环的单次表达式,其可作为某一变量的初始化赋值语句, 用来给循环控制变量赋初值; 也可用来计算其它与for循环无关但先于循环部分处理的一个表达式。

“”号之间的条件表达式是一个关系表达式,其为循环的正式开端,当条件表达式成立时执行中间循环体。

参考资料来源:百度百科-for循环

s="abcdefg"

*p = "ABC"

strcpy(s+2,p)

既 从s[2]~s[4] 赋值成 p 的内容

s[5]='\0' 从索引6开始,s种的内容没有改变。所以是 g

在c 语言中,字符串以 0 结尾,当printf(%s) 遇到0 则认为字符串结束,之后的内容不会再输出。strcpy 也只是 覆盖 目标字符串的值,之后以0 结尾,不会对字符串后面的值做改变

答案应该是 B

x-- 是先返回 x 的值,这里是23 ,即为输出的值,再让 x 的值减 1 ,x 的值就变为 22

while 里的 !x ,因为 x 为 22 ,所有非 0 值都为真,所以 !x 的值为假,即这里 while 的条件不满足,应该跳出循环,

这样就结束了~~


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11019559.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存