• 【C语言】创建一个函数,利用该函数将字符串中的小写字母转换为大写字母


    原理:

    这类题目主要通过ASCII(美国信息交换标准代码)码差值实现,A对应ASCII码十进制数字是65,a对应ASCII码十进制数字是97,即大小写字母之间ASCII码差值为32,想要将大写字母转换为小写字母可以将该字符ASCII码值+32,同理小写字母转换成大写字母只需将该字符ASCII码值-32

    代码1:

    #include<stdio.h>
    #include<assert.h>
    
    char * my_strlwr(char * str)   //定义一个my_strlwr函数
    {
        assert(str);         //str的非空性
        char *ret = str;       //定义一个ret保存最初的str
        while(*str != '')      //判断字符串是否结束
        {  
            if((*str >= 'a')&&(*str <= 'z'))//判断当前的字符是否是小写字母
            {
                *str = *str -32;     //将其转化为大写字母
                str++;
            }
            else
                str++;
        }
        return ret;       //返回该字符串数组的首地址
    }
    int main()
    {
        char str1[666];
        printf("请输入一段字母:
    ");
    scanf("%s",&str1);//输入字母字符串
    
        printf("%s
    ",my_strlwr(str1));  //调用该函数,并且输出新的字符串
    
        return 0;
    } 

     代码2:

    #include <stdio.h>
    char* fun(char a[100])
    {
        int i;
    for (i = 0; a[i] != ''; i++)
            if (a[i] >= 'a' && a[i] <= 'z')
                a[i] -= 32;
    return a;
    }
    int main()
    {
        char a[100];
        printf("请输入一段字母:
    ");
        gets_s(a);
        printf("结果为:%s",fun(a));
        return 0;
    }
  • 相关阅读:
    服务端渲染和客户端渲染
    node(基础)_node.js中的http服务以及模板引擎的渲染
    node基础(二)_模块以及处理乱码问题
    node(基础)_node中的javascript
    vue购物车和地址选配(三)
    nyoj 169 素数
    nyoj 205 求余数
    nyoj 65另一种阶乘问题
    nyoj 734奇数阶魔方
    nyoj64 鸡兔同笼
  • 原文地址:https://www.cnblogs.com/HGNET/p/11955521.html
Copyright © 2020-2023  润新知