c++60分 求助 悬赏一关注!!!

P1914 小书童——凯撒密码

xydengke @ 2023-07-19 12:39:58


using namespace std;
int main(){
    int n,j;
    cin>>n;
    char ssh[1000];
    cin>>ssh;
    for(int i=0;i<=strlen(ssh)-1;i++){
        if(ssh[i]+n<=122){
            cout<<char(ssh[i]+n);
        }
        else {j=ssh[i]+n-122;
        cout<<char(97+j);}
    }

    return 0;
} 

by 残阳如血 @ 2023-07-19 12:44:16

@xydengke 头文件不加???


by 残阳如血 @ 2023-07-19 12:46:20

而且ASCII码尽量不要直接打出来,容易遗忘,建议直接打字母。


by xydengke @ 2023-07-19 12:47:36


@[BHPM](/user/726139) 没复制进去
#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,j;
    cin>>n;
    char ssh[1000];
    cin>>ssh;
    for(int i=0;i<=strlen(ssh)-1;i++){
        if(ssh[i]+n<=122){
            cout<<char(ssh[i]+n);
        }
        else {j=ssh[i]+n-122;
        cout<<char(97+j);}
    }

    return 0;
} 

by xydengke @ 2023-07-19 12:48:37

@BHPM 我不太会


by 残阳如血 @ 2023-07-19 12:52:41

对于字符,最好不要(记忆力超强者除外)直接写数字,可以写 a,b,...z,因为字符和数字是可以互相转化的


by 残阳如血 @ 2023-07-19 12:54:06

@xydengke char的上限是127,如果 n 太大,char可能会溢出


by xydengke @ 2023-07-19 12:54:43

@BHPM 嗯好 我试着改一下


by IRIDESCENTqwq @ 2023-07-19 12:57:16

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,j;
    cin>>n;
    char ssh[1000];
    cin>>ssh;
    for(int i=0;i<=strlen(ssh)-1;i++){
        if(ssh[i]+n<=122){
            cout<<char(ssh[i]+n);
        }
        else cout << char(ssh[i] + n - 26);
    }

    return 0;
} 

by 残阳如血 @ 2023-07-19 12:59:53

这其实可以边读边输出


by xydengke @ 2023-07-19 14:33:00

@YiLino 谢谢大佬 以关


| 下一页