| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 709 人关注过本帖
标题:判断输入的字符串是否是回文!!是如何修改的很急!拜托了
只看楼主 加入收藏
阿贞小朋友
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2014-3-16
结帖率:100%
收藏
 问题点数:0 回复次数:5 
判断输入的字符串是否是回文!!是如何修改的很急!拜托了
#include <stdio.h>
#include <ctype.h>
#define SIZE 81
int main (void)
{
    int i=0,j;//循环变量
    char original[SIZE] ;
    char *p ;
    char ch ;
    printf("Enter a massage :");
    p = original ;
    while((ch = getchar())!='\n')
    {
        
        if(isalpha(ch) != 0)
        {
            ch = tolower(ch);//大写转小写
            *p = ch;
            original[i] = ch;
            i ++ ;
            p++;
        }
        else
            continue;

    }

    for(j=0,p--;p >= &original[0];j++,p--)
    {
        if(original[j] == p )
             continue;
        else
            break ;
    }

   

    if(p<&original[0])
    {
        printf(" Palindrome.\n");   
    }
   
        else
   
            printf(" Not alindrome.\n");
        

    return 0 ;
}


这个代码的编译时通过的,但是判断出来的又问题,所以不知道该怎么修改!

He lived as a devil, eh?  输入句应该打印出 Palindrome.
Madam, i am Adam .        输入句应该打印出NOT Palindrome 。
搜索更多相关主题的帖子: continue original include 字符串 Enter 
2014-04-28 22:20
pycansi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:5
帖 子:418
专家分:1060
注 册:2012-7-26
收藏
得分:0 
original[j] == p ...


莫问前尘有愧,但求今生无悔
2014-04-28 23:25
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
程序代码:
#include <stdio.h>

bool s(char* source)
{
    char* pb=source;
    while(*source!='\0') source++;
    char* pe=--source;
    while(pb<=pe)
    {
        if(*pb!=*pe) return false;
        pb++;
        pe--;
    }
    return true;
}

int main()
{
    char* s1="ab5cde6edc5ba";
    char* s2="3eru900jsiop";
    bool f;
    f=s(s1);
    if(f==true) printf("%s  是一个回文字符串\n",s1); else  printf("%s  不是一个回文字符串\n",s1);
    f=s(s2);
    if(f) printf("%s  是一个回文字符串\n",s1); else  printf("%s  不是一个回文字符串\n",s2);
    return 0;
}

DO IT YOURSELF !
2014-04-29 09:20
kwxx
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:309
专家分:913
注 册:2009-5-11
收藏
得分:0 
程序代码:
#include <stdio.h>
int main (void)
{
    int flag=0;
    char a[100]="He lived as a devil, eh?",c,*i,*j ;

    //gets(a);

    for(i=j=a;c=*i;i++)            //将小写转大写,并去掉“英文字母和空格”以外的字符
    {
        if(c>='a'&&c<='z' )
        {
            *j++=*i-32;
        }
        else if(c>='A'&&c<='Z')
        {
            *j++=*i;
        }
    }
    *j--='\0';


    for(i=a;i<j;i++,j--)   //类似于逆序,比较是否为回文
        if(*i!=*j)
        {
            flag=1;
            break;
        }

    if(flag==0)
        printf(" Palindrome.\n");  
    else
        printf(" Not alindrome.\n");
    return 0 ;
}
2014-04-29 10:09
fjy2shy
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-4-29
收藏
得分:0 
#include<stdio.h>
int main(){
    int a,b,c,e,i,j,k;
    int d[120];
    printf("Enter a number:\n");
    scanf("%d",&a);
    e=a;
    for(i=0;;i++)
    { c=a%10;
      b=a/10;
      a=b;
      d[i]=c;
      if(b==0)
       break;
    }
    k=i;
    for(j=0;j<=k;j++,i--)
    { if(d[j]!=d[i])
        break;
      else
       continue;
    }
    if(j>k)
        printf("%d是回文数\n",e);
    else
        printf("%d不是回文数\n",e);
    return 0;
}
2014-04-29 10:26
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
以下是引用fjy2shy在2014-4-29 10:26:59的发言:

#include<stdio.h>
int main(){
    int a,b,c,e,i,j,k;
    int d[120];
    printf("Enter a number:\n");
    scanf("%d",&a);
    e=a;
    for(i=0;;i++)
    { c=a%10;
      b=a/10;
      a=b;
      d=c;
      if(b==0)
       break;
    }
    k=i;
    for(j=0;j<=k;j++,i--)
    { if(d[j]!=d)
        break;
      else
       continue;
    }
    if(j>k)
        printf("%d是回文数\n",e);
    else
        printf("%d不是回文数\n",e);
    return 0;
}


严重跑题

DO IT YOURSELF !
2014-04-29 10:27
快速回复:判断输入的字符串是否是回文!!是如何修改的很急!拜托了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018578 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved