C语言判断字符串是否为回文

回文指正反读均相同的字符序列,例如'abba'和'abdba'均是回文,但'good'不是回文。本篇文章将使用C语言代码实现判断给定字符串是否为回文的算法。

代码实现

#include <stdio.h>
#include <string.h>

int main() {
    char str[100];
    scanf("%s", str);
    int len = strlen(str);
    int i, flag = 1;
    for (i = 0; i < len / 2; i++) {
        if (str[i] != str[len - i - 1]) {
            flag = 0;
            break;
        }
    }
    if (flag) {
        printf("回文\n");
    } else {
        printf("不是回文\n");
    }
    return 0;
}

代码说明

  1. 使用scanf函数获取用户输入的字符串。
  2. 使用strlen函数获取字符串长度。
  3. 使用循环遍历字符串的前半部分,并比较对应位置的字符是否相同。
  4. 如果所有字符都相同,则输出'回文',否则输出'不是回文'。

测试用例

输入样例1:

aabcba

输出样例1:

不是回文

输入样例2:

abba

输出样例2:

回文


原文地址: https://www.cveoy.top/t/topic/eEtV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录