2(40分)下面程序的功能是:判断字符串是否为回文串

2020-12-30 17:20:31 字数 5377 阅读 6361

1楼:董俊锟

【1】#include "string.h"

#include "stdio.h"

void main()

【2】#include

void main()

c语言编程:判定一个字符是否是回文串(回文串是指从开头读和从末尾读均为相同字符的字符串,例如:abcba

2楼:yesyes科

1、首先,在c语言软件中,定义多个整型变量,保存程序中所需操作的数值。

2、定义两

版个数组,保存输入的权字符串和最长回文。

3、输入字符串,保存在变量a中。计算字符串的长度,设置变量k和max的初值。

4、接着,用循环语句实现查找回文,以及最长回文的判断。

5、用if语句判断回文是否偶数,如果条件成立执行以下语句。

6、最后运行程序,输入任一连续字符串,电脑就会判断其中的最长回文,并输出。

3楼:南瓜苹果

采用链栈实现算法,**如下:

#include"stdio.h"

#include"stdlib.h"

typedef char elemtype;

typedef struct stnode

stnode, *linkstack;

int huiwen(char str)

i = 0;

while (sl != null)

return 1;

}void main()

扩展资料

栈的特点是先进后出,而链表中的头插法正好满足我们的需求,因为头插法后面插入的节点位于链表的开头,所以我们可以使用头插法来插入节点,在弹出节点的时候弹出链表的第一个节点即可,而第一个节点是很容易找出来的,所以可以很轻松地实现栈的压入和弹出操作。

栈是一种是一种实现数据“先进后出”的存储结构,分为静态栈和动态栈,静态栈就是以数组的方式存储数据,动态栈是以链表的方式存储数据;对栈的操作算法,常用的就是压栈和出。

栈的创建:

在创建一个数据结构之前,必须知道这种数据结构由哪些参数组成,栈的本质既然是个链表,它必然由很多节点组成;为了实现“先进后出”这种数据结构,我们需要引进两个参数,一个是栈顶指针(ptop),始终指向栈顶元素。一个参数是栈底指针(pbottom),始终指向栈底元素。

我们知道为了方便描述链表的各种操作,引进了头节点的概念,即为每个链表前面加一个头节点,但并存放有效数据;同样,为了实现栈的操作,我们同样需要一个不存放任何有效数据的节点,并且栈底指针始终指向该节点。

4楼:匿名用户

c语言编程:判定一个字符是否是回文串(回文串是指从开头读和从末尾读均为相同字回

符的字符串,例答如:abcba

我来答有奖励

love154139

lv.6 2018-04-05聊聊

#include

#include

void main()

a[i]='\0';

if(!strcmp(s,a))

printf("这是回文串!\n");

else

printf("这不是回文串!\n");}

5楼:匿名用户

bool symm(unsigned n)return m==n;

}int main()

{ int val;

cin>>val;//输入目标数字

bool res=symm(val);

cout<反向读专

取数字判断属

6楼:匿名用户

#include

#include

void main()

a[i]='\0';

if(!strcmp(s,a))

printf("这是回

版文串!权\n");

else

printf("这不是回文串!\n");}

7楼:匿名用户

#include

#include

void main()

i++;

ilen--;

}printf("这是

回文串!\n");

return ;}

编写程序,判断给定字符串是否为回文。(回文是指正读和逆读 都一样的字符串) 不知道错在**了〒_〒

8楼:匿名用户

你的bai结构有问题,建议设定du一个标记变量int j=1,zhi0表示非回文,dao1表示回文,在内for循环中一旦首尾不匹配就容将j值改为0,break跳出,否则继续;循环结束后判断是否为0,j=0,不是回文,j=1,是回文

9楼:匿名用户

/*请输入字符

串:12021

12021:是.

请输入字

版符串:1

1:是权.

请输入字符串:12

12:不是.

请输入字符串:1233

1233:不是.

请输入字符串:12211221

12211221:是.

请输入字符串:^z

press any key to continue*/#include

#include

intmain()

return0;}

编写程序,判断给定字符串是否为回文(回文是指正读和逆读都一样的字符串)

10楼:物理公司的

#include

#include

intmain()

判断输入的一个字符串是否为回文串,若是输出“yes”,否则输出“no”。

11楼:匿名用户

错误原因:

1)c语言中变量的定义属于声明,需要写在一个函数的开始部分。

2)把一个字符串中的字符逆序取出赋值给另一个字符数组时,记得末尾加上空字符。

参考**如下,希望能帮到您!

#include

#include

int main(void)

}*/for(i=length-1; i>=0; --i)str1[a]=0;

if(strcmp(str,str1)==0)else

printf("no\n");

return 0;}

12楼:匿名用户

楼主你忘记加字符串类函数的头文件#include ,所以strlen,strcmp都是无法使用的,

而且**也有些问题,无法得出正确的结果,我帮你修改了一下,你好好看看理解一下:

#include

#include

#include

intmain(void)

str1[length]='\0';

if(strcmp(str,str1)==0)elseprintf("no");

return0;}

13楼:匿名用户

献上**

#include

using namespace std;

string a;

int len=0, t=1, i=0;

int main()

if(t) cout<<"yes";

else cout<<"no";

return 0;}

用c++编写程序,判断给定字符串是否为回文(回文指正读和逆读都一样的字符串

14楼:匿名用户

/****************************************

*函数名:f

*类属 :全局函数

*参数 :s 以0结束的字符串

*返回值:1,0

*功能 :如果s是对称的回访串,返回1,不是则返回0******************************************/

int f(char* s)

else}}

15楼:匿名用户

printf("请输入一个字符串");

char in;

int len = sizeof (in);

gets(in);

for(int i=0;i历并

且头尾比较 ,不相等

printf("输入的字符串不是回文");}

16楼:匿名用户

把字符串拆分两部分 比如7个字符 分4组比较 第一个和最后一个 第二个和倒数第二个

17楼:白痴弟弟

#include

#include

#include

void main()

while(*test)

// printf("test:%c\n", *test);

// printf("modify:%c\n", *modify);

test++;

}printf("modify:%s\n", p***);

} 貌似有个指针问题的,记不得了

18楼:匿名用户

是说回族文字吧?如果是这样的话,你的这个判断标准应该是有问题,需要查询各种字符集的范围,根据这个字符集的范围来做出判断才是正确的做法。

如果你的说的判断方法是正确的话,是写个简单的函数检查输入字符串是否满足你的要求就可以了。

编写函数fun(char *p)判断一个字符串是否是回文字符串(提示:回文字符串是指正读和反读都

19楼:匿名用户

调试了一下,改作如下**,供参考:

#include

char p[200]=; //数组必须定义明确或用初始化来定义长度

void fun(char *p)

void main()

vc6下编译通过,并正常执行。

编写一个程序,判断一个字符串是否为回文,回文就是顺读和逆读都相同,如字符串“abcba”就是回文

20楼:匿名用户

#include

#include

int strcmp_self(char *a)思路:从bai两端开始比较dua[0]和a[length-1],a[1]和倒数第二zhi个;只要出现了不相等的情dao况,就不是回文,至于i

c++中怎么判断string类型的字符串变量是否为数字

1楼 庄政警 遍历每个字符copy,判断是否bai在 0 9 就好 include include using namespace std bool strisnum string s return true int main c 中怎么判断一个string类型的字符串变量是否为数字? 2楼 匿名用...