今天考计算机二级C语言,遇到的程序设计题就是判断回文字符串。(我做错了,特此在这记录一下)
回文字符串:是一个正读和反读都一样的字符串,例如 level,123321等。
代码如下:
int fun(char *str)
{
int i,n=0,fg=1; //fg 是标志位
char *p = str;
// 统计str中元素的数量
while(*p)
{
n++; // 计数操作
p++;
}
for(i=0;i<n/2;i++) // 注意判断 字符串长度的一半即可。
{
if(str[i] == str[n-1-i]) // 判断是否相同
fg = 1;
else{
fg = 0;
break;
}
}
return fg;
}