问题描述:
编写一个程序,可以一直接收键盘字符,
如果是小写字符就输出对应的大写字符,
如果接收的是大写字符,就输出对应的小写字符,
如果是数字不输出。
问题分析:
可以通过大写和小写字母之间ASCII码差值为32来切换大小写。
源代码:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int ch = 0;
while((ch = getchar())!= EOF)//EOF:End Of File
{
if(ch >= 'a' && ch <= 'z')
{
putchar(ch-32);
}
else if(ch >= 'A' && ch<= 'Z')
{
putchar(ch+32);
}
else if(ch <= '0' && ch >= '9')
{
}
}
return 0;
}
注:EOF是一个计算机术语,为End Of File的缩写,在操作系统中表示资料源无更多的资料可读取。资料源通常称为档案或串流。通常在文本的最后存在此字符表示资料结束。
在 UNIX中, EOF表示能从交互式 shell (终端) 送出 Ctrl+D (习惯性标准)。在微软的 DOS 与 Windows 中能送出