【PTA】凯撒密码 (20 分)

【PTA】凯撒密码 (20 分)_第1张图片
【PTA】凯撒密码 (20 分)_第2张图片

注意输入的n可能是-10000之类的数字,要善用%。
直接对大小写进行ASCII码的判断即可,没必要打表。

#include
using namespace std;
int main()
{
	string a;
	getline(cin,a);
	int n;
	cin>>n;
	n=n%26;
	for(int i=0;a[i];i++)
	{
		if(isupper(a[i]))
		{
			int temp=a[i]-'A';
			a[i]=(temp+n+26)%26+'A';
		}
		if(islower(a[i]))
		{
			int temp=a[i]-'a';
			a[i]=(temp+n+26)%26+'a';
		}
		
	}
	cout<<a;
	
}

你可能感兴趣的:(我的ACM之路,c++)