题目描述
本题要求编写程序,对一个以“#”号结束的字符串,将其小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其他字符不变输出。
为什么这段代码运行出来的结果中大写字母没有转换,而只有小写字母转换了
但如果我像如下所示,将第二个if变成else if问题就解决了
这是为什么?困扰我好久了,求指点
题目描述
本题要求编写程序,对一个以“#”号结束的字符串,将其小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其他字符不变输出。
这是为什么?困扰我好久了,求指点
首先,代码的执行从int main() { 开始 },顺序是从上往下,一句一句的执行。循环里,两个if () 是并列的,第一个if (条件一) 执行完,把大写的字符转换为小写。然后第二个if (条件二) 必会执行,如果刚好条件满足,又把小写转换为大写。 if(条件一) else if (条件二) , 这写法判断是二选一,一次只有其中一条 if(条件满足) 会被执行。