功能:通过代码实现输入大写显示小写,输入小写,显示大写。输入数字什么都不显示,输入其他字符显示其他字符
先看代码
//C语言实现大小写字符转换
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int ch=0;
while((ch=getchar())!=EOF)
{
if(ch>='A'&&ch<='Z')
{
putchar(ch+32);//大写字母和小写字母之间的ASCII码值差32
}
else if(ch>='a'&&ch<='z')
{
putchar(ch-32);
}
else if (ch>='0'&&ch<='9')
{
;
}
else
{
putchar(ch);
}
}
return 0;
}
这里有几个点
1、第一个是EOF:百度上这样说:eof在c语言中表示文件结束符。在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。在文本文件中,数据都是以字符的ASCII代码值的形式存放。ASCII代码值的范围是0~127,不可能出现-1,因此可以用EOF作为文件结束标志。档案存取或其它 I/O 功能可能传回等于象征符号值 (巨集) EOF 指示档案结束的情形发生。实际上 EOF 的值通常为 -1,但它依系统有所不同。巨集 EOF会在编译原始码前展开实际值给预处理器。C语言中,EOF常被作为文件结束的标志。还有很多文件处理函数处错误后的返回值也是EOF,因此常被用来判断调用一个函数是否成功
这里我理解的是 读到一个下面if else if else中没有规定到的字符,循环就自动停止
2、关于getchar()函数和putchar()函数
getchar大概的用法就是可以接收一个键盘上的字符,接收成功会返回这个字符的ASCII码值,接受失败的话会返回的返回值是-1,
putchar的大概意思就是把getchar()接受过来的输出吧(这里我也不太确定 ,我是这样理解的)
结果