鱼C论坛

 找回密码
 立即注册
查看: 3448|回复: 1

求助啊,谁能帮我写一个程序,这个我想了好几天都没有想明白

[复制链接]
发表于 2012-9-14 08:32:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
这个问题我好几天都没有想明白了,希望各位鱼友帮我一下
问题:回文串
回文串就是从左往右读与从右往左读是一样的,判断输入的是不是回文串。。。
要求,先输入数字N,,判断N是否《=8000,然后输入长度为N的字符串,看字符串能不能变成回文串,能,输出回文串,不能输出impossible。。。
变化的过程是这样的,,只能将相邻的两个字母变化位置
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-9-14 09:45:56 | 显示全部楼层
本帖最后由 伟伟while 于 2012-9-14 09:49 编辑
  1. /*回文数*/
  2. #include<stdio.h>
  3. main()
  4. {
  5.         int a,tmp_a=0;
  6.         int shang;
  7.         printf("please a number:\n");
  8.         scanf("%d",&a);
  9.         shang=a;
  10.         while(shang)
  11.         {
  12.                 tmp_a=(tmp_a+shang%10)*10;
  13.                 shang/=10;

  14.         }
  15.         tmp_a/=10;
  16.         if(tmp_a==a)
  17.         {
  18.                 printf("%d  is \n",a);

  19.         }
  20.         else
  21.         {

  22.                 printf("%d  is not\n",a);
  23.         }
  24. }
复制代码
  1. /*判断是否为回文字符串*/
  2. #include<stdio.h>
  3. #include<stdio.h>
  4. #include<string.h>

  5. main()
  6. {
  7.         char a[1000]="";
  8.         char *p;
  9.         int i,k,flag;
  10.         

  11.         p=a;
  12.         printf("please input a string:\n");
  13.         scanf("%s",a);
  14.         
  15.         printf("%s\n",a);

  16.         
  17.         k=strlen(a);        
  18.         printf("k=%d",k);
  19.         for(i=0;i<k/2;i++)
  20.         {
  21.                 if(a[i]!=a[k-1-i])
  22.                 {
  23.                         flag=0;
  24.                         
  25.                         break;
  26.                 }
  27.                 flag=1;
  28.                
  29.         }
  30.         printf("flag=%d\n",flag);
  31.         printf("==========================\n");
  32.         if(flag==0)
  33.         {
  34.                 printf("%s  is not\n",a);
  35.         }
  36.         else
  37.         {
  38.                 printf("%s  is \n",a);
  39.         
  40.         }

  41.         printf("==========================\n");
  42. }
复制代码
希望对你有帮助!虽然不知道楼主在说什么
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-15 03:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表