7-3 字符变换 (10 分)
从键盘输入一行字符,然后将其中所有的小写字母转换为对应的大写字母,将所有的大写字母转换为对应的小写字母,将所有的数字字符转换为ASCII代码表中的下一个字符,其他字符保持不变。
输入格式:
一行字符。
输出格式:
变换之后的字符串,最后换行。
输入样例:
HEllo56789#KaTeX parse error: Expected 'EOF', got '&' at position 1: &̲%? 输出样例: heLLO6…&%?
#include<stdio.h>
#include<string.h>
int main()
{
char a[1000];
gets(a);//gets可以接受‘ ’(空格)scanf看到空格会结束。
for (int i = 0; i < strlen(a); i++)
{
if (a[i] > 64 && a[i] < 90)
{
a[i] = a[i] + 32;
}
else if (a[i] > 96 && a[i] < 123)
{
a[i] -= 32;
}
else if (a[i] > 47 && a[i] < 58)
{
a[i] += 1;
}
}
printf("%s\n", a);
return 0;
}
问题总结
1.scanf不能接受空格,看到空格会结束。
2.gets可以接受空格,只有看到‘\0’才会结束。