回覆列表
  • 1 # lanfengz1

    #include <stdio.h>

    #include <windows.h>

    #include <iostream>

    #include <cstdio>

    #include <string.h>

    using namespace std;

    int palindrome(char *s) {

    int result = 1;

    int i = 0;

    int begin = 0;

    int end = 0;

    while (true) {

    if (s[i] == "\0")

    break;

    if (s[i] != " ") {

    if (begin <= 0 )

    begin = i;

    end = i;

    }

    i++;

    }

    //找到字串中第一個不是空格和最後一個不是空格的位置,

    //分別用begin和end表示

    for (int j = begin; j < end;j++, end--)

    if (s[j] != s[end])

    result = 0;

    //判斷迴文,如果

    return result;

    }

    int main()

    {

    char s[70];

    printf("Input a string : ");

    gets_s(s);

    if (palindrome(s))

    printf("字串%s是迴文!\n",s);

    else

    printf("字串%s不是迴文!\n",s);

    gets_s(s);

    }

    我是用java的,C的庫函式不是很熟,所以裡面有些方法可能有點累贅,但是測試過功能是正確的~

  • 中秋節和大豐收的關聯?
  • 什麼是名詞動詞形容詞?