1998ikun0802 @ 2022-07-31 18:20:19
在输入时只能输第一个n,后面的字符串都输不进去就会直接出结果,输出什么都没有。。。
#include<iostream>
using namespace std;
char ch[55];
int main()
{
int len=1,n,i;
scanf("%d",&n);
while((ch[len]=getchar())!='\n') len++;
len--;
for(i=1;i<=len;i++)
{
ch[i]=ch[i]+n;
if(ch[i]>'z')
cout<<ch[i]-26;
else cout<<ch[i];
}
return 0;
}
谢谢帮助!!!
by JustinXiaoJunyang @ 2022-07-31 18:24:08
@1998ikun0802
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s;
int n;
cin >> n;
cin >> s;
for (int i = 0; i < s.size(); i++)
{
for (int j = 1; j <= n; j++)
{
if (s[i] >= 'z')
{
s[i] = 'a';
}
else
{
s[i]++;
}
}
}
cout << s << endl;
return 0;
}
求关注~
by tombs @ 2022-07-31 18:24:21
把
scanf("%d",&n);
改成
scanf("%d\n",&n);
by JustinXiaoJunyang @ 2022-07-31 18:24:56
@1998ikun0802 可能是没读进去
by tombs @ 2022-07-31 18:28:10
@1998ikun0802 你第一行末尾的换行符没有读入,就会导致第二行无法读入
by JustinXiaoJunyang @ 2022-07-31 18:33:24
把换行符吃掉了。。。
by 1998ikun0802 @ 2022-07-31 18:57:21
@JustinXiaoJunyang 改完之后就是5个RE。。。