1 条题解

  • 0
    @ 2025-9-16 0:07:04

    C

    说明

    本题要求对输入的5位字符串进行加密,规则是每个字母用其后第4个字母代替(基于ASCII码运算)。需先读取输入的字符串,再对每个字符进行处理:

    1. 读取输入的5位字符串(存储在字符数组中);
    2. 遍历每个字符,将其ASCII码值加4(实现“后移4位”);
    3. 输出处理后的字符串。

    由于题目保证“字母后第4个字符存在”,无需处理越界情况,时间复杂度为O(1)(固定处理5个字符)。

    代码

    #include <stdio.h>
    
    int main() {
        char s[6];  // 定义字符数组,容纳5个字符+结束符'\0'
        scanf("%s", s);  // 读取输入的5位字符串
        
        // 对每个字符进行加密:ASCII码+4
        for (int i = 0; i < 5; i++) {
            s[i] += 4;
        }
        
        printf("%s\n", s);  // 输出加密结果
        return 0;
    }
    

    C++

    说明

    本题逻辑与C语言一致,通过读取输入字符串,对每个字符的ASCII码加4实现加密。C++使用string类型更方便处理字符串,遍历每个字符并修改后直接输出。

    代码

    #include <iostream>
    #include <string>
    using namespace std;
    
    int main() {
        string s;
        cin >> s;  // 读取输入的5位字符串
        
        // 遍历每个字符,后移4位(ASCII码+4)
        for (int i = 0; i < 5; i++) {
            s[i] += 4;
        }
        
        cout << s << endl;  // 输出加密结果
        return 0;
    }
    

    Python

    说明

    Python中通过input()读取输入字符串,利用ord()获取字符的ASCII码,加4后用chr()转回字符,最后拼接所有加密后的字符并输出。代码简洁,直接处理输入的5位字符串。

    代码

    # 读取输入的5位字符串
    s = input().strip()
    
    # 对每个字符加密:后移4位(ASCII码+4),拼接结果
    encrypted = ''.join(chr(ord(c) + 4) for c in s)
    
    # 输出加密后的字符串
    print(encrypted)
    
    • 1

    信息

    ID
    402
    时间
    1000ms
    内存
    64MiB
    难度
    5
    标签
    递交数
    33
    已通过
    14
    上传者