已知char ch='C';则以下表达式的值是 ch=(ch>='A′ && ch<='Z′)
已知charch='C';则以下表达式的值是ch=(ch>='A′&&ch<='Z′)?(ch+32):ch;A)AB)aC)ZD)c题目什么意思啊能不能详解一下啊...
已知char ch='C';则以下表达式的值是
ch=(ch>='A′ && ch<='Z′)?(ch+32):ch;
A)A
B)a
C)Z
D)c
题目什么意思啊能不能详解一下啊 展开
题目什么意思啊能不能详解一下啊 展开
展开全部
ch=(ch>='A′ && ch<='Z′)?(ch+32):ch;
首先 这个char ch='C'; 也可以看做是 一个范围一个字节的整数变量
然后
就是这个三目运算了
(ch>='A′ && ch<='Z′)?(ch+32):ch;
等价于
if (ch>='A′ && ch<='Z′)
{
ch = ch+32;
}else
{
ch = ch
}
这样就很清晰了 因为ch是大写C 所以if是为真 因此 ch =ch+32
小写a97 大写A65 差值32 这个32 就是
大小写的差值 也就是把大写C转为小写c了
因此选D
展开全部
假如ch的值ascii码大于A 并且小于Z的码,咋输出ch+32,也就是ch的值对应的小写字母。否则输出ch本身。
这个操作符书上有讲解,你仔细找找看看。
这个操作符书上有讲解,你仔细找找看看。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char ch='C'; // ASCII => 'C' = 67, 'A' = 65, 'Z' = 90
ch=(ch>='A′ && ch<='Z′)?(ch+32):ch; // 三目运算符。先判断条件 ch>='A′ && ch<='Z′,代入ch的原值'C'后得到的结果是 true。在true的情况下,取:前的值ch+32 = 'C' + 32 = 67 +32 = 99 = 'c'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询