elong123 @ 2023-11-29 21:50:21
#include<string.h>
int main(){
int n;
char str[1001];
memset(str,0,sizeof(str));
scanf("%d",&n);
scanf("%s",&str);
int len = strlen(str);
for(int i =0; i < len; i++){
if(n == 26){
printf("%s",str);
break;
}
else if(n <26)
printf("%c",str[i]+ n);
else
printf("%c",str[i] + n % 26);
}
// printf("%s",str);
return 0;
}
wrong answer
by zhouyiran_2011 @ 2023-11-29 22:02:07
注意特判,n<26时,如果大于z,要减去26
#include<bits/stdc++.h>
int main(){
int n;
char str[1001];
memset(str,0,sizeof(str));
scanf("%d",&n);
scanf("%s",&str);
int len = strlen(str);
for(int i =0; i < len; i++){
if(n == 26){
printf("%s",str);
break;
}
else if(n <26){
if(str[i]+ n > 'z')
printf("%c",str[i]+ n - 26);
else
printf("%c",str[i]+ n);
}
else
printf("%c",str[i] + n % 26);
}
// printf("%s",str);
return 0;
}
by elong123 @ 2023-11-29 22:16:54
@zhouyiran_2011 感谢大佬小于26里边还有个特判我没有想到