为什么是0分??为什么输出是数字??救救我!!

P1914 小书童——凯撒密码

wangshuheng3541 @ 2017-06-23 20:58:58

#include<iostream>
#include <string.h>
using namespace std;
const int maxn=10001;
int n,len;
char a[maxn];
int main()
{
    cin>>n;
    cin>>a;
    len=strlen(a);
    for(int i=0;i<len;i++)
    {
        if(a[i]+n<='z')
            cout<<a[i]+n<<endl;
        else
            cout<<(a[i]+n)%122+96<<endl;
    }
    return 0;
}
//快来教教我!!!!

by Captain_Paul @ 2017-07-07 19:06:48

转成char输出


by BiuBiu_Miku @ 2017-10-28 21:44:03

这个嘛,这题最好用string定义,要有for转小写了,在当然写法就不能"char(int(a)-n)"写成"char(int(a[i])-n)",还有你要考虑加上n后会不会超过24个字母,所以先磨24再加。


by BiuBiu_Miku @ 2017-10-28 21:44:54

写错了是26个,不好意思


|