yiwanni @ 2024-05-16 00:52:43
#include <bits/stdc++.h>
using namespace std;
string s;
int n;
int main()
{
cin>>n;
getline(cin,s);
//string a=s+s+s;
int l=s.size();
for(int i=i+1;i<l+l;i++){
if(s[i]!='z') s[i]=s[i]+n;
else s[i]=s[i]-26+n;
cout<<s[i];
}
return 0;
}
by Justin_love_coding @ 2024-05-16 08:55:33
乱写
by yiwanni @ 2024-05-19 23:07:48
6 , 所以怎么改呢
by mairuisheng @ 2024-05-24 19:18:34
最好用字符数组做。
by yiwanni @ 2024-05-26 08:38:33
@mairuisheng 谢谢,我试试
by mairuisheng @ 2024-05-26 20:35:10
#include <bits/stdc++.h>
using namespace std;
char s[55];//字符数组s[55]。
int n,i,t;
int main()
{
cin>>n;
cin>>s;
int l=strlen(s);//strlen函数求s长度。
for(int i=0;i<l;i++)
{
t=s[i];//将字符赋值给整型数组,返回ASCII码值。
if((t+n)>122)//根据ASCII码,z是122,而再大就是其他字符了。
{
s[i]-=26;//因为n最大26,所以只需减一个26(小写字母有26个)
}
s[i]+=n;//字符+整型返回字符
cout<<s[i];//输出
}
return 0;
}
by mairuisheng @ 2024-05-26 20:38:54
附上ASCII码表一份: *来自百度
by chenzhongmugu @ 2024-08-01 14:38:06
怎样贴代码呢?