编写一个程序来判断一个字符串是否是回文,可以使用以下步骤:
输入字符串:
首先,从用户那里获取一个字符串。
判断回文:
编写一个函数来判断该字符串是否是回文。
输出结果:
根据判断结果输出“yes!”或“no!”。
下面是一个简单的C语言实现示例:
```c
include include include // 函数声明 bool isPalindrome(char *str); int main() { char str; printf("请输入一个字符串: "); scanf("%s", str); if (isPalindrome(str)) { printf("是回文字符串\n"); } else { printf("不是回文字符串\n"); } return 0; } // 函数定义 bool isPalindrome(char *str) { int left = 0; // 左指针 int right = strlen(str) - 1; // 右指针 while (left < right) { if (str[left] != str[right]) { return false; // 不相等,不是回文字符串 } left++; right--; } return true; // 通过循环,指针交叉或重合,是回文字符串 } ``` 解释 使用 `scanf` 函数从用户那里获取一个字符串并存储在 `str` 数组中。 定义一个 `isPalindrome` 函数,该函数接受一个字符串指针作为参数。函数内部使用两个指针,一个指向字符串的首字符,一个指向字符串的尾字符。通过循环,依次比较首尾字符是否相等,如果相等则继续比较下一对字符,如果不相等则返回 `false`。当指针交叉或者重合时,表示已经比较完全部字符,且所有字符都相等,则返回 `true`。 根据 `isPalindrome` 函数的返回值,输出“yes!”或“no!”。 这个程序可以判断一个字符串是否是回文,并且代码简洁易懂。如果需要进一步处理或优化,可以根据具体需求进行修改。输入字符串:
判断回文:
输出结果: