猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
请教下关于子函数和描述函数foo的基本路径
麻烦看看编写函数foo,实现“判断字符串是否为回文,若是,则函数返回1,主函数输出 YES,否则返回0,主函数中输出
森栏
浏览 212
回答 3
3回答
侃侃尔雅
#include <stdio.h> int foo(char *str) { char *p=str;while(*p) p++;p--;while(str<p){if(*p!=*str) return 0;p--;str++;}return 1;}main() { char s[80] ; printf("Enter a string: ") ; gets(s) ; printf("\n\n") ; puts(s) ; if(foo(s)) printf("YES\n") ; else printf("NO\n") ; }
0
0
0
收到一只叮咚
#include<stdio.h>//如果是回文,返回1,否则返回0int foo(const char *pch){const char *pEnd=pch; //pEnd指向字符串头while(*pEnd !='\0') //将pEnd指针后移,直到字符串尾,即\0字符pEnd++;pEnd--; //回退一个,不比较字符'\0'while(pch<pEnd)if (*pch++ != *pEnd--) //头指针后移,尾指针前移,逐个比较,直到pch>=pend,也就是两个指针相交了,比较完了return 0; //如果有两个不等,说明不是回文,返回0return 1;}int main(){char *str1 = "abcdefgfedcba";char *str2 = "abcdefgfedcbax";if (1 == foo(str1)){printf("YES\r\n");}elseprintf("NO\r\n");if (1 == foo(str2)){printf("YES\r\n");}elseprintf("NO\r\n");return 0;}
0
0
0
慕勒3428872
int foo(char *str) {char* start = str;char* end = str + strlen(str);while(start < end){if(*start != *end)return 0;start++;end--;} return 1;}
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
Java
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续