怎么样实现这个代码呢

img


这个奇偶位要怎么实现,并返回修改后的整个字符串,我一直只能返回修改过的字符

就是字符串遍历啊,第1个字符就是奇位字符。
你代码贴出来看看

#include <iostream>
#include <string>

using namespace std;

string func(string str){
    string ret = str;
    for(int i = 0; i < str.length(); i++){
        char c = str.at(i);
        if((i+1) % 2 == 0 && c >= 'A' && c <= 'Z'){ //even
            c += 32;
        }else if((i+1) % 2 == 1 && c >= '0' && c <= '9'){ //odd
            if(c == '9'){
                c = '0';
            }else {
                c += 1;
            }
        }
        ret[i] = c;
    }
    return ret;
}

int main(int argc, char *argv[])
{
    string line_0;
    getline(cin >> ws, line_0);
    line_0 = func(line_0);
    cout << line_0 << endl;

    return 0;
}