最近开始学遇到的一个小问题
先上代码:
#include <stdio.h>
#include <string.h>
int main()
{
char s[100];
gets(s);
int i,j;
for (i = 0, j = strlen(s)-1; i < strlen(s), j >= 0; i++, j--)
{
if (s[i] != s[j])
break;
}
if (i == strlen(s)) {
printf_s("yes");
}
else {
printf_s("no");
}
return 0;
}
这段程序的功能是判断一个字符串是否为回文字符串。具体来说,程序使用了 gets 函数读入一个字符串,然后使用双指针法遍历该字符串。
具体来说,指针i指向字符串头部,j指向尾部。依次比较 i 和 j 指向的字符,如果相等,则继续进行下一轮比较;如果不相等,则输出 "no" 并退出循环。如果全部比较结束,都没有出现不相等的情况,则输出 "yes" 表示该字符串是回文字符串。
需要注意的是,程序需要在比较过程中同时检查指针i和j的位置关系,即当i>=j时,比较结束。
C语言实现回文字符串检测,
这段代码演示了一个C语言程序,用于判断输入的字符串是否为回文。它利用gets函数获取字符串,然后通过双指针技术,一个从头开始,一个从尾部结束,逐个比较字符。如果所有对应位置的字符都相等,则输出yes,否则输出
o。
1482

被折叠的 条评论
为什么被折叠?



