输入一个字符,判断它是否是大写字母。

来源:互联网 发布:php mysql 查询 实例 编辑:程序博客网 时间:2024/05/17 03:05

输入一个字符,判断它是否是大写字母。如果是,将它转换成小写字母;如果不是,不转换。然后输出最后得到的字符。


代码如下:

#include<stdio.h>int main(){    char ch;    scanf("%c",&ch);    ch=(ch>='A'&&ch<='Z')?(ch+32):ch;    printf("%c\n",ch);    return 0;}


分析:此程序中运用了条件表达式来处理选择结构,,在此程序中,"ch=(ch>='A'&&ch<='Z')?(ch+32):ch"是一个”条件表达式“,它是这样执行的:如果字符变量ch的值为大写字母(位于字母A和Z之间,则表达式的值为(ch+32),即相应的小写字母,32为小写字母与相对应的大写字母ASCII码的差值;如果ch的值不是大写字母,则条件表达式的值保持不变,还输出ch的值。

       条件表达式的一般形式为

                                   表达式1?表达式2:表达式3

       其中的“?"和”:“是条件运算符。条件运算符要求有3个运算对象,称为三目(元)运算符。它是C语言中唯一的一个三目运算符。条件表达式也是一个选择结构,它与if语句不同之处在于它不能执行任意的内嵌语句,而是使表达式取不同的值。

  • 条件表达式的执行顺序:先求解表达式1,若非0(真)则求解表达式2的值,此时表达式2的值就是整个表达式的值;若表达式1的值为0(假),则求解表达式3,表达式3的值就是整个表达式的值。
  • 条件运算符的优先级高于赋值运算符,但低于关系运算符和算术运算符。
  • 条件运算符的结合方向自左向右。
  • 表达式2和表达式3不仅可以是数值表达式,还可以是赋值表达式或函数表达式。
  • 条件表达式中,表达式1的类型可以与表达式2和表达式3不同,表达式2和表达式3的类型也可以不同,此时表达式的值的类型为二者中较高的类型。

0 0
原创粉丝点击