问题标题: 1090 字符游戏我哪错了?

0
1
已解决
王梓澳
王梓澳
中级光能
中级光能
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main ()
{
    char a[105];
    gets(a);
    for (int i=0;i<=strlen(a);i++)
    {
        if (a[i]>='a'&&a[i]<='z')
        {
            if (a[i]=='z'||a[i]=='Z') a[i]=a[i]-25;
            else a[i]++;
        }
    }
    puts(a);
    return 0;
}

我是这么做的,各位大神,请帮忙看一下我那错了?

http://judge.codingtang.com/problem/1090/


2
已采纳
张睿杰
张睿杰
初级天翼
初级天翼
if (a[i]>='a'&&a[i]<='y'||a[i]>='A'&&a[i]<='Y') a[i]++;
else if (a[i]=='z'||a[i]=='Z') a[i]=a[i]-25;

这是核心

0
0
张睿杰
张睿杰
初级天翼
初级天翼

if (a[i]>='a'&&a[i]<='z')

是小于z,不是《=z

-1
黄昊轩
黄昊轩
新手守护
新手守护

错了,小于z,并不是《=Z;

 

-1
张睿杰
张睿杰
初级天翼
初级天翼
if (a[i]>='a'&&a[i]<='y'||a[i]>='A'&&a[i]<='Y')
        {
            a[i]+=1;
        }
        else if (a[i]=='z'||a[i]=='Z') a[i]=a[i]-25;
        cout<<a[i];

如果是大写呢

我要回答