zoukankan      html  css  js  c++  java
  • 编写一个程序,可以一直接收键盘字符

    如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出。

    在ASCII码表中 ,'A'到'Z'的值为97到122。'a'到'z'的值为65到90。每个字母都有对应的数字,想将字母的大小写互换,就需要相加减他们之间的差值32,也就是‘a’与‘A’相减值为32.

     1 #include<stdio.h>
     2 int main()
     3 {
     4     char str;
     5     printf("请输入字符!:");
     6     scanf("%c",&str);
     7     int str1 = 'a';
     8     int str2 = 'A';
     9     if (str >= 97 && str <= 122)
    10     {
    11         int str1 = str - 32;
    12         printf("%c
    ",str1);
    13     }
    14     else if (str >= 65 && str <= 90)
    15     {
    16         int str2 = str + 32;
    17         printf("%c
    ",str2);
    18     }
    19 
    20     return 0;
    21 }


    还可以将上面的代码进行简化,如果你不确定'a'与'A'之间的差值时,可以直接对他两相减。将代码的准确度提高。

     1 #include<stdio.h>
     2 int main()
     3 {
     4     char str;
     5     printf("请输入字符:
    ");
     6     scanf("%c",&str);
     7     if ('A' <= str && str <= 'Z')
     8     {
     9         printf("%c
    ",str+('a'-'A'));
    10     }
    11     else if('a' <= str && str <= 'z')
    12     {
    13         printf("%c
    ",str-('a'-'A'));
    14     }
    15 
    16     return 0;
    17 }
  • 相关阅读:
    HDU 5744
    HDU 5815
    POJ 1269
    HDU 5742
    HDU 4609
    fzu 1150 Farmer Bill's Problem
    fzu 1002 HangOver
    fzu 1001 Duplicate Pair
    fzu 1150 Farmer Bill's Problem
    fzu 1182 Argus 优先队列
  • 原文地址:https://www.cnblogs.com/cuckoo-/p/10316018.html
Copyright © 2011-2022 走看看