题目描述
在给定程序中,将大写字母转换为对应小写字母之后的第
5个字母。例如,若是字母A,则转换为小写字母f;若是字母W,则转换为小写字母b。请完成程序中的填空,使它能得出正确的结果。
分析
1.若是大写字母,才进行转换。转换规则为:
(1) 先加上32变成小写字母;
(2-1) 然后,如果是a~u之间的字符,则再加5,可以将大写字母转换为对应小写字母之后的第5个字母;
(2-2) 如果是v~z之间的字符,则加5之后,还需要再减去26才是其之后的第5个字符。
2.若不是大写字母,则提示输入错误的信息。
测试案例
测试样例1:
Input a upper letter: A
The letter A change to f
测试样例2:
Input a upper letter: V
The letter V change to a
测试样例3:
Input a upper letter: a
Input error!
代码实现
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
char c1, c2;
printf("Input a upper letter: ");
scanf("%c1", &c1);
if (c1 >= 'A' && c1 <= 'Z')
{
c2 = c1 + 32;
if (c2 >= 'a' && c2 <= 'u')
c2 = c2 + 5;
else
c2 = c2 + 5 - 26;
printf("\nThe letter %c change to %c", c1, c2);
}
else
{
printf("\nInput error!\n");
}
return 0;
}

被折叠的 条评论
为什么被折叠?



