| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3168 人关注过本帖
标题:做一个判断函数, 判断一个字符串正反读都一样
只看楼主 加入收藏
yuantkong
Rank: 2
等 级:论坛游民
威 望:3
帖 子:82
专家分:86
注 册:2016-5-17
收藏
得分:0 
回复 9楼 grmmylbs
也试了加括号.

但还是不对. 也看了地址, 就是对不上
2016-06-01 11:24
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
收藏
得分:12 
回复 11楼 yuantkong
确定吗?我试过了是可以的
2016-06-01 11:36
yuantkong
Rank: 2
等 级:论坛游民
威 望:3
帖 子:82
专家分:86
注 册:2016-5-17
收藏
得分:0 
回复 12楼 grmmylbs

// VS 编译器。 程序要求是 字符串以"."为结束符号,正反读相同YES.不同 NO。

#include "stdafx.h"
#include "string.h"
#define size 20


int panduan(char *p, int len)
{
   
    int i = 0;
    char *q;
    q=p + len-1;
   
    while (i < len/2)
    {
        if (*(p + i) !=*( q - i))
        {
            printf("%d,%d\n",*(p+i), *(q-i));

            return -1;

        }i++;

    }
    return 1;
}

int main()
{
    char a[size] = "\0";
    int i = 0;
    int k;
    int len;
    printf("please input a enilish string:");
    do
    {
        scanf_s("%c", &a[i]);
        i++;
    } while (a[i-1] != '.');
   
    printf("the yingyu juzi is:");
    puts(a);

    len = strlen(a);
    k=panduan(a,len);
   
    if (k > 0)
        printf("yes,the same\n");
    else
        printf("no, it isn't\n");
    return 0;
}

编译结果是都是输出 -1
2016-06-01 18:25
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
收藏
得分:1 
处理字符输入错误,导致字符串后面总有一个“.”符号,在字符输入的循环后加句a[i-1]=0;即可:
    do
    {
        scanf_s("%c", &a[i]);
        i++;
    } while (a[i-1] != '.');
    a[i-1]=0;

能编个毛线衣吗?
2016-06-01 20:42
yuantkong
Rank: 2
等 级:论坛游民
威 望:3
帖 子:82
专家分:86
注 册:2016-5-17
收藏
得分:0 
回复 10楼 wmf2014

才看到.
另外的想法, 谢谢了!
2016-06-03 11:32
快速回复:做一个判断函数, 判断一个字符串正反读都一样
数据加载中...
 
   



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

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