jianghongz 发表于 7 天前

倒序排列

#include <bits/stdc++.h>
#include <iomanip>
#include <cstring>
using namespace std;
int main()
{
        char c;
        cin.getline(c,100);
        int len = strlen(c);
        for (int i=len;i>=0;i--)
        {
                cout<<c;
        }
                       

        return 0;
}

FishC 发表于 7 天前

您的代码中存在一些问题,以下是纠正后的完整代码,包括实现字符串的倒序输出:


#include <iostream>
#include <cstring>
using namespace std;

int main()
{
    char c; // 为字符串分配足够的空间
    cin.getline(c, 100); // 使用 c 数组存储输入内容
    int len = strlen(c); // 获取字符串的长度
    for (int i = len - 1; i >= 0; i--) // 倒序遍历字符串,注意索引应从 len - 1 开始
    {
      cout << c; // 输出每个字符
    }
    cout << endl; // 换行
    return 0;
}


修改要点:

[*]cin.getline(c, 100) 中 c 应是一个数组,而不是单个字符。
[*]strlen 返回的长度从 1 开始,所以倒序的索引范围应为 len - 1 到 0。
[*]补充了程序的边界处理,确保正常运行。


试试现在的代码吧!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 倒序排列