初学者指针问题求救!
输入一个字符串,判断是否为回文.请写出具体的解题思路与代码,本人今天学的指针,上课的时候什么都没听懂,感觉脑子快爆炸了. 搜索更多相关的解决方案:
指针
----------------解决方案--------------------------------------------------------
倒!
我们今天也才教了怎样对字符串进行处理。其中就有一个是判断是否为回文!
也要正加深加深理解!
学习学习~~~~~~~~~~~~~
----------------解决方案--------------------------------------------------------
没有哪位好心人愿意救助一个在C的路途上迷途的羔羊吗,痛苦ing...
----------------解决方案--------------------------------------------------------
#include<stdio.h>
#include<string.h>
void main()
{ char ch[10],*p;
int flag=1,len=0;
gets(ch);
p=ch;
while(ch[len]!='\0') len++ ;
for(int i=len-1;i>len/2;i--,p++)
{ if(*p==ch[i]) continue;
else { flag=0;break;}
}
if(flag)printf("yes");
else printf("No");
}
----------------解决方案--------------------------------------------------------
建议楼主多看看书.
很好地研究一下.
----------------解决方案--------------------------------------------------------
[quote]#include<string.h>抱歉,这个头文件是起什么作用的,我还没学过[/quote]
后面的基本看懂了 ----------------解决方案--------------------------------------------------------
string.h头文件包含了一些对字符串操作的函数的声明如:strcpy strcat
----------------解决方案--------------------------------------------------------
[bo]以下是引用 [un]neverTheSame[/un] 在 2008-4-30 00:37 的发言:[/bo]
string.h头文件包含了一些对字符串操作的函数的声明如:strcpy strcat
string.h头文件包含了一些对字符串操作的函数的声明如:strcpy strcat
谢谢,我今天已经看了好几遍视频教程,还是觉得没理出个头绪来,
----------------解决方案--------------------------------------------------------
感谢您的感慨相助!
[bo]以下是引用 [un]beyond0702[/un] 在 2008-4-30 00:14 的发言:[/bo]
#include
#include
void main()
{ char ch[10],*p;
int flag=1,len=0;
gets(ch);
p=ch;
while(ch[len]!='\0') len++ ;
for(int i=len-1;i>len/2;i--,p++)
{ if(*p==ch) continue;
els ...
#include
#include
void main()
{ char ch[10],*p;
int flag=1,len=0;
gets(ch);
p=ch;
while(ch[len]!='\0') len++ ;
for(int i=len-1;i>len/2;i--,p++)
{ if(*p==ch) continue;
els ...
再次感谢!
----------------解决方案--------------------------------------------------------
这是我编写的:使用了SeqStack.h堆栈,SCQueue.h队列
#include<stdio.h>
#include<conio.h>
#define MaxStackSize 100
#define MaxQueueSize 100
typedef char DataType;
#include"SeqStack.h"
#include"SCQueue.h"
void HuiWen(char []);
void main(void)
{
char string[]="aca";
clrscr();
HuiWen(string);
getch();
}
void HuiWen(char string[])
{
SeqStack myStack;
SeqCQueue myQueue;
int i,length=strlen(string);
char x,y;
StackInitiate(&myStack);
QueueInitiate(&myQueue);
for(i=0;i<length;i++)
{
StackPush(&myStack,string[i]);
QueueAppend(&myQueue,string[i]);
}
while(QueueNotEmpty(myQueue)*StackNotEmpty(myStack))
{
if(QueueDelete(&myQueue,&x)
&& StackPop(&myStack,&y)
&& x!=y)
{
printf("%s is not HuiWen\n",string);
return ;
}
}
if(QueueNotEmpty(myQueue)||
StackNotEmpty(myStack))
printf("%s is not HuiWen\n",string);
else
printf("%s is HuiWen\n",string);
}
----------------解决方案--------------------------------------------------------