| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 922 人关注过本帖
标题:判断回文的函数段
只看楼主 加入收藏
appleflower
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-12-9
收藏
 问题点数:0 回复次数:1 
判断回文的函数段
//以@为结束符输入一字符串,判断其是否为回文
char shezhi()
{
 char ch[];
 cout<<"请输入要判断的字符串,以@符号结束:";
 while ([email=ch!=]ch!='@'[/email])
  cin>>ch;
 return ch[];
}
//方法一
int huiwen(char ch[] )
{
 int n = strlen(ch);
 Seqstack *s;
 char x;
 s=Init_Seqstack();//栈的初始化
 for(int i=0;i<n/2;i++)
  Push_Seqstack(s,ch[i]);//将半数元素入栈
 if(n%2)
  i++;
 while(i<n)
  Pop_Seqstack(s,*x);//出栈
 if(ch[i]!=x)
  return 0;
  i++;
}
//方法二
//将字符串同时入栈和队列,再退栈和出队,若两者出来的顺序相同,则是回文,否则不是
int huiwen(char ch[])
{
 Seqstack *s;
 LQueue *q;
 int n=strlen(ch);
 s=Init_Seqstack();//栈的初始化
 q=Init_LQueue();//队列的初始化
 for(int i=0;i<n;i++)
 {
  Push_Seqstack(s,ch[i]);//入栈
  In_LQueue(q,ch[i]);//入队列
 }
 
 for (i=0;i<n;i++)
 {
  char x=Top_Seqstack(s);//取栈顶元素
  char y=q->front->data;//取队头元素
  if(x!=y)
   return 0;
  Pop_Seqstack(s);
  Out_LQueue(q);
 }
 if(i==n)
  return 1;
}
搜索更多相关主题的帖子: 回文 判断 
2007-12-09 11:57
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
不用这么复杂吧.

倚天照海花无数,流水高山心自知。
2007-12-09 14:10
快速回复:判断回文的函数段
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.084544 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved