网站用品推广网页,中国各大网站名称,嵌入式软件开发工程师证书,软件开发报什么专业7-2 凯撒密码 (20分) 为了防止信息被别人轻易窃取#xff0c;需要把电码明文通过加密方式变换成为密文。输入一个以回车符为结束标志的字符串#xff08;少于80个字符#xff09;#xff0c;再输入一个整数offset#xff0c;用凯撒密码将其加密后输出。恺撒密码是一种简单…7-2 凯撒密码 (20分) 为了防止信息被别人轻易窃取需要把电码明文通过加密方式变换成为密文。输入一个以回车符为结束标志的字符串少于80个字符再输入一个整数offset用凯撒密码将其加密后输出。恺撒密码是一种简单的替换加密技术将明文中的所有字母都在字母表上偏移offset位后被替换成密文当offset大于零时表示向后偏移当offset小于零时表示向前偏移。
输入格式: 输入第一行给出一个以回车结束的非空字符串少于80个字符第二行输入一个整数offset。
输出格式: 输出加密后的结果字符串。
输入样例1: Hello Hangzhou 2 输出样例1: Jgnnq Jcpibjqw 输入样例2: axy -1 输出样例2: zwx /*本题测试点总结①输入的n值需要对26取模因为n的值有可能在26的绝对值之外;②n值为负数或正数时需要判断一下如果小于0则加上26如果大于零不要加上额外的26;
*/
#includestdio.h
#includestring.h
int main()
{int n,m,i,k;char ch1[100]{0};gets(ch1);scanf(%d,n);n n%26; int len1 strlen(ch1);for(i0;ilen1;i){if(ch1[i]ach1[i]z){if(n0) ch1[i] ((ch1[i]-a) n)%26a;else if(n0) ch1[i] ((ch1[i]-a) n26)%26a;}else if(ch1[i]Ach1[i]Z){if(n0) ch1[i] ((ch1[i]-A) n)%26A;else if(n0) ch1[i] ((ch1[i]-A) n26)%26A;}}ch1[i] \0;printf(%s,ch1); return 0;
}