【十二题解】 | #字符串加解密#

字符串加解密

http://www.nowcoder.com/practice/2aa32b378a024755a3f251e75cbf233a

c的模运算有负数

#include<stdio.h>

char encode(char a){

if(a>='a' && a<='z'){
    a=(a+1-'a'+26)%26+'A';
}
else if(a>='A' && a<='Z'){
    a=(a+1-'A'+26)%26+'a';
}
else if(a>='0' && a<='9'){
    a=(a+1-'0'+10)%10+'0';
}
return a;

}

char decode(char a){

if(a>='a' && a<='z'){
    int aa = a-1-'a';
    int bb = (a-1-'a')%26;
    a=(a-1-'a'+26)%26+'A';
}
else if(a>='A' && a<='Z'){
    a=(a-1-'A'+26)%26+'a';
}
else if(a>='0' && a<='9'){
    a=(a-1-'0'+10)%10+'0';
}
return a;

}

int main(){

char data[1000]={0};
char data2[1000]={0};
while(scanf("%s", data) != EOF){
    for(int i=0; data[i]!='\0'; i++){
    printf("%c", encode(data[i]));
    }
    printf("\n");
    scanf("%s", data2);
    for(int i=0; data2[i]!='\0'; i++){
    printf("%c", decode(data2[i]));
    }
    printf("\n");
}

}

全部评论

相关推荐

我见java多妩媚:大外包
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务