C语言编程回文串

C语言编程回文串,第1张

#include <stdio.h>

main()

{ int n,n1,x,y=0,m=0,i,j,k,tong

char *a,b[27],ch,dan=0

printf("n=")

scanf("%d",&n)

a=(char *)malloc(sizeof(char)*n+1)

a[n]=0

b[0]=0

scanf("%s",a)

for(i=0,k=0i<ni++)

{

tong=0

for(j=0b[j]!=0j++)

if(a[i]==b[j])tong=1

if(tong==0)

{

for(j=i+1,x=1j<nj++)

if(a[i]==a[j])x++

if(x%2==1)

{

dan=a[i]

y++

}

if(y==2)

{

printf("Impossible\n\n")

exit(0)

}

b[k]=a[i]

b[k+1]=0

k++

}

}

for(i=0i<n/2i++)

{

if(dan!=0)

if(a[i]==dan)

{

ch=a[i]

a[i]=a[i+1]

a[i+1]=ch

m++

}

for(j=n-1-ij>ij--)

if(a[i]==a[j])

{

break

}

for(k=jk<n-1-ik++)

{

ch=a[k]

a[k]=a[k+1]

a[k+1]=ch

m++

}

}

printf("%s\n %d\n\n",a,m)

getch()

}

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

2、定义两个数组,保存输入的字符串和最长回文

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

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

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

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

#include<stdio.h>

int main()

{char s[200],*p=s,*q=s

gets(s)

for(*qq++)

for(q--p<q&&棚喊辩*p++==*q--)

if(p>=q)printf("yes\n")

 链缺else printf("no\n"渗埋)

getch()

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12393827.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存