2024/10/16日工作日志

zhanglijian / 2024-10-21 / 原文

复习英语单词80个;
背写单词36个;
完善栈地回文代码:

include

include

using namespace std;

int main() {
int length;
cin >> length;
cin.ignore(); // 忽略长度输入后的换行符

string str;

// 逐个字符输入字符串
char ch;
bool hasSpace = false;
for (int i = 0; i < length; ++i) {
    ch = getchar(); // 逐个字符读取
    if (ch == '\n') break; // 遇到换行符结束输入
    if (ch == ' ') hasSpace = true; // 检查是否有空格
    str += ch; // 将字符添加到字符串中
}

// 判断字符串是否包含空格
if (hasSpace) {
    cout << "入栈不成功" << endl;
    return 0; // 退出程序
}

// 判断是否为回文
int n = str.length();
bool isPalindrome = true;
for (int i = 0; i < n / 2; ++i) {
    if (str[i] != str[n - i - 1]) {
        isPalindrome = false;
        break;
    }
}

// 输出结果
if (isPalindrome) {
    cout << "此字符串是回文串" << endl;
} else {
    cout << "此字符串不是回文串" << endl;
}

return 0;

}