创建ConvertString函数时出现问题

时间:2015-10-15 23:11:16

标签: c++

以下是我迄今为止所做的代码:

int mod_int;
int i=0;
if (isalpha(input_string[i]))
{
    int start = 65;

    if (islower(input_string[i]))

        int start = 97;

return ConvertString(input_string, mod_int=(((int)input_string[i] - start + mod_int) % 26) + start);

        else cout << input_string[i];

            string ConvertString(string input_string, int mod_int) {
                for (char& c : input_string) {
                    if (std::isupper(c)) {
                        c = 'A' + (c - 'A' + mod_int) % 26;
                    }
                    else if (std::islower(c)) {
                        c = 'a' + (c - 'a' + mod_int) % 26;
                    }
                }
                return input_string;

我继续收到消息&#34;预期不合格的身份&#34;在第三行。为什么我继续收到这条消息?这是什么意思?

此外,我应该编写一个ConvertString函数,并且我无法知道如何创建该函数。描述如下:

编写一个修改输入字符串input_string的函数(ConvertString) 用字符替换每个字母字符,这是mod_int在字母表中的位置。例如,给定mod_int = 1,'a'用'b'代替,'b'用'c'代替,依此类推,直到'z'被'a'代替。因此,应返回使用input_string =“abcd”和mod_int = 1调用ConvertString “BCDE”。其他字符(例如%,*,&amp;,...)保持不变。该函数返回转换后的字符串。

所以基本上,当时 input_string = Hello
和 int_mod = 4
int_string = Lipps

提前感谢您的帮助!

0 个答案:

没有答案