| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4477 人关注过本帖
标题:[ACM题]判断一个英文字符串是否是回文
只看楼主 加入收藏
七夜天泪
Rank: 2
等 级:论坛游民
帖 子:23
专家分:16
注 册:2016-8-16
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:12 
[ACM题]判断一个英文字符串是否是回文
Input:整数n,接下来有n个字符串,每串1行
Output:Y或N
图片附件: 游客没有浏览图片的权限,请 登录注册
这是题目,附上代码
#include <stdio.h>
#include<string.h>
int main( ) {
    char a[100];
    int i;
    int n;
    scanf("%d",&n);
    while(scanf("%s",a)!=EOF,n--) {
        for(i=0; i<=strlen(a)/2; i++)
            if(a[i]==a[strlen(a)-1]) {
                printf("Y\n");
                break;
            } else {

                printf("N\n");
                break;
            }
    }
    return 0;
}
帮忙解决下,这个错误烦恼一天了,以前从未出现过
搜索更多相关主题的帖子: include return 字符串 英文 
2016-08-25 19:16
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
这算什么题目?描述是“如题”,你倒是把题目发上来啊。虽然我猜出来这是检测是不是回文串,但不带你这么问问题的。

重剑无锋,大巧不工
2016-08-25 19:24
七夜天泪
Rank: 2
等 级:论坛游民
帖 子:23
专家分:16
注 册:2016-8-16
收藏
得分:0 
回复 2楼 beyondyf
原题就是我的截图,ACM的,没办法
2016-08-25 19:26
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
华中科技大学的OJ吧,把这题的地址发上来

重剑无锋,大巧不工
2016-08-25 19:31
七夜天泪
Rank: 2
等 级:论坛游民
帖 子:23
专家分:16
注 册:2016-8-16
收藏
得分:0 
回复 4楼 beyondyf
奈何你登不上去,这是我们学校的内网才可以上的,我给你截图的是一个完整的
2016-08-25 19:32
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
题目名称呢?

重剑无锋,大巧不工
2016-08-25 19:34
七夜天泪
Rank: 2
等 级:论坛游民
帖 子:23
专家分:16
注 册:2016-8-16
收藏
得分:0 
回复 6楼 beyondyf
图片附件: 游客没有浏览图片的权限,请 登录注册

我主要是帮我修改代码
2016-08-25 19:36
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:0 
笑得我停不下来,只发正文,但正文内容是“如题”
2016-08-25 19:43
七夜天泪
Rank: 2
等 级:论坛游民
帖 子:23
专家分:16
注 册:2016-8-16
收藏
得分:0 
回复 8楼 rjsp
怪我喽
2016-08-25 19:48
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:20 
这才对,没有“判断一个英文字符串是否是回文”你觉得有多少人明白你在问什么?

这题也不严谨,每行字符串的上限是多少也没提。

你的代码。。。scanf("%s",a)!=EOF是画蛇添足,算法部分你只比对首尾字符就break out了。

正确的玩法是这样的。
程序代码:
#include<stdio.h>
#include<string.h>
int main()
{
    char a[128];
    int n, i, j;
    for(scanf("%d\n", &n); n--; puts(i > j ? "N" : "Y"))
    for(i = strlen(gets(a)) - 1, j = 0; i > j && a[i] == a[j]; i--, j++);
    return 0;
}
收到的鲜花

重剑无锋,大巧不工
2016-08-25 19:49
快速回复:[ACM题]判断一个英文字符串是否是回文
数据加载中...
 
   



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

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