C语言字符串替换:大小写字母反转转换

本文提供一个C语言程序,实现将输入字符串中的大写字母按照'A'->'Z', 'B'->'Y', ..., 'Z'->'A'的规则进行替换,并在CodeBlocks环境下编译运行。

程序功能:

  1. 接收用户输入的一行字符串(最大长度不超过79个字符)。2. 将字符串中的大写字母按照上述规则进行反转替换,其他字符保持不变。3. 输出替换后的结果字符串。

**代码示例:**c#include <stdio.h>#include <string.h>

int main() { char str[80];

printf('请输入一个以回车结束的字符串(少于80个字符):');    fgets(str, sizeof(str), stdin);    str[strcspn(str, '

')] = '�'; // 去除fgets读取的换行符

// 替换大写字母    for (int i = 0; i < strlen(str); i++) {        if (str[i] >= 'A' && str[i] <= 'Z') {            str[i] = 'Z' - (str[i] - 'A');        }    }

// 输出结果    printf('替换后的字符串为:%s

', str);

return 0;}

代码解释:

  1. #include <stdio.h>#include <string.h> 引入了C语言标准输入输出库和字符串处理库。2. char str[80]; 定义一个字符数组 str 用于存储输入的字符串,最大可容纳80个字符(包括结尾的空字符)。3. fgets(str, sizeof(str), stdin); 从标准输入读取一行字符串到 str 中,最多读取 sizeof(str)-1 个字符,并在末尾添加空字符。4. str[strcspn(str, ' ')] = '�'; 找到字符串中第一个换行符 的位置,并将其替换为空字符 ,用于去除 fgets 函数读取字符串时可能包含的换行符。5. 使用 for 循环遍历字符串中的每个字符: - if (str[i] >= 'A' && str[i] <= 'Z') 判断当前字符是否为大写字母。 - 如果是,则使用 str[i] = 'Z' - (str[i] - 'A'); 进行替换,将当前大写字母转换为对应的反转字母。6. 最后使用 printf('替换后的字符串为:%s ', str); 输出替换后的字符串。

在CodeBlocks中运行程序:

  1. 打开CodeBlocks并创建一个新的C语言控制台应用程序项目。2. 将上述代码复制到 main.c 文件中。3. 点击“编译并运行”按钮。4. 程序运行后,输入一个字符串并按下回车键,程序会输出替换后的字符串。

示例:

输入: HelloWorld

输出: SvoolDliow

C语言字符串替换:大小写字母反转转换

原文地址: https://www.cveoy.top/t/topic/I7H 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录