Closed. This question needs to be more focused。它当前不接受答案。
想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
2年前关闭。
我正在尝试创建一个运行某些命令的程序(例如,Pali()是command),当用户键入Pali(bob)时,程序将检查()中的单词是否是回文。同样,必须像这样精确键入命令Pali(),否则会出现错误消息。
我计划使用strtok来解析字符串,但不太确定如何才能仅检查字符“ Palin()”而忽略括号内的内容。另外,如何将内容从括号中拉出,以便可以测试其回文率?
输出:
想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
2年前关闭。
我正在尝试创建一个运行某些命令的程序(例如,Pali()是command),当用户键入Pali(bob)时,程序将检查()中的单词是否是回文。同样,必须像这样精确键入命令Pali(),否则会出现错误消息。
我计划使用strtok来解析字符串,但不太确定如何才能仅检查字符“ Palin()”而忽略括号内的内容。另外,如何将内容从括号中拉出,以便可以测试其回文率?
最佳答案
您将需要带有strncmp
标头的string.h
函数来比较(检查)是否已输入字符Palin(或使用堆栈中的KMP / Needle算法来匹配字符串。
要从数组中的()
中取出Palin()
中的内容,请说destination[]
:
#include<stdio.h>
#include<string.h>
#define MAX 100
int main()
{
char source[]="palin(hello)";
int len=strlen(src);
char destination[MAX];
memset(destination,0,MAX);
//READ ONLINE ABOUT STRNCPY
strncpy(destination,source+6,len-7);
printf("%s\n",destination);
return 0;
}
输出:
Hello
07-24 09:46