首页 > 试题广场 >

完成下列各程序中的函数定义

[问答题]
完成下列各程序中的函数定义(请勿修改主函数main中的语句)

请编写函数int fun(char  *str)的定义,该函数的功能是判断字符串是否为回文,若是则函数返回1,主函数中输出YES;否则返回0,主函数输出NO。回文是指顺读和倒读都一样的字符串。

例如:字符串LEVEL是回文,二字符串123312就不是回文。

#include<stdio.h>
#define   N  80
int  fun(char  *str);
void  main(  )
{
    char  s[N];
    printf(“Enter  a  string:\n”);
    gets(s);
    printf(“\n”);
    puts(s);
    if(fun(s))
        printf(“YES\n”);
    else 
        printf(“NO\n”);
}

int  fun(char  *str){
    char *p;int a;a=strlen(str);
    p=&str[a-1];
    while(str<p){
        if(*str==*p)
        {str++;p--;
        }
        else break;
    }
    if(str>=p)return 1;
    else return 0;
}
发表于 2020-03-30 19:29:16 回复(0)
int fun(char  *str){
    int len=strlen(str); 
    if(len%2==0){
        for(int i=0;i<=len/2-1;i++){
            if(str[i]!=str[len-1-i]){
                return 0;
                }
        }
    }    
    if(len%2==1){
            for(int i=0;i<=len/2;i++){
            if(str[i]!=str[len-1-i]){
                return 0;
            }
        }
    }
    return 1;
}
发表于 2022-08-16 18:25:55 回复(0)
123
发表于 2020-10-25 21:21:19 回复(0)