题目描述
实现字母的大小写转换。多组输入输出。
输入描述:
多组输入,每一行输入大写字母。
输出描述:
针对每组输入输出对应的小写字母。
示例1
输入:
A
B
输出:
a
b
【法一】:
#include <stdio.h>
#include<ctype.h>
int main() {
int ch;
while ((ch = getchar()) != EOF) {
fgetc(stdin);
if (isupper(ch) && ch != 10) { // 注意 '\0'的ASCII为10
ch = tolower(ch);//转为小写
fputc(ch, stdout);
printf("\n");
}
}
return 0;
}
【法二】
#include <stdio.h>
int main() {
char ch;
//EOF意为-1。本语句即只要输入项是字符即可打印
while ((ch = getchar()) != EOF) {
//因为回车也算一个字符,所以在输入第一个字符换行后,getchar会读取换行的回车键
//换行的回车被读取,若防止回车被读取,可在其前面多读取一次消耗回车
getchar();
if (ch >= 'A' && ch <= 'Z') {
putchar(ch + 32);//大转小
printf("\n");
}
else {
putchar(ch - 32);//小转大
printf("\n");
}
}
}