标题:判断所输入的字符串是否是回文串。请问我这种方法错在哪?求大神指教。
只看楼主
涧边幽草
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2015-11-4
结帖率:88.89%
 问题点数:0 回复次数:13 
判断所输入的字符串是否是回文串。请问我这种方法错在哪?求大神指教。
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int i,j,k=0;
    char s[80];
    for(i=0;(s[i]=getchar())!='\n';i++)
    {
        s[i]=getchar();
    }
    for(j=0;j<i+1;j++)
    {
        if(s[j]==s[i-j]) k++;
    }
    if(k==i) printf("Y\n");
    else printf("N\n");
    return 0;
}
搜索更多相关主题的帖子: include 字符串 
2015-11-04 23:11
涧边幽草
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2015-11-4
得分:0 
回复 2楼 边小白
可是去掉一个getchar之后,发现输入遇到回车键还是没法结束
2015-11-04 23:30
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
你說有錯,又不說錯誤現象,誰知道指教你什麽。

授人以渔,不授人以鱼。
2015-11-05 00:06
涧边幽草
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2015-11-4
得分:0 
回复 4楼 TonyDeng
就是每次输入字符串,输出的都是N,但是我又觉得这个想法是对的
2015-11-05 00:17
涧边幽草
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2015-11-4
得分:0 
回复 4楼 TonyDeng
不管输入aba,还是abc,输出的都是N
2015-11-05 00:18
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
你輸入abc,先檢測一下s[]字符串是不是真的"abc"啊。

授人以渔,不授人以鱼。
2015-11-05 00:29
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
你代碼中要出現Y,條件是第二個循環之後k==i,那麽就在第二個循環中一直打印k、i的値,看它們是怎麽變化的,自然知道爲什麽到最後k==i總不成立。

授人以渔,不授人以鱼。
2015-11-05 00:34
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
學會倒過來追,從現象出發,依據程序的邏輯,反向查尋原因。

授人以渔,不授人以鱼。
2015-11-05 00:35
涧边幽草
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2015-11-4
得分:0 
谢谢
2015-11-05 00:38
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
提醒一下:找到原因是一回事,如何把程序寫好又是另一回事哦。

授人以渔,不授人以鱼。
2015-11-05 00:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-458893-1-1.html




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

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