给定一个大写字母,要求用小写输出
解题思路:
1.字符数据以ASCII码存储在内存的,形式与整数的存储形式相同。所以字符型数据和其他算术型数据之间可以互相赋值和运算
2.知道相同字母大小写之间ASCLL码值相差32
代码如下
#include "stdio.h"
void main()
{
//此程序以A为例
char c1,c2; //定义c1,c2为字符型
c1='A';
c2=c1+32;
printf(" %c\n",c1); //‘\n’为回车
printf(" %c",c2);
}
结果如下
**注意:**程序的第7行“c2=c1+32”,把字符变量c1的值与整数32相加。c1+32就是‘A’+32.就是65+32=97,。将97赋给字符变量c2,97在ASCII码表中对应的就是a。
以下为升级万能版
#include "stdio.h"
void main()
{
char c1,c2;
c1=getchar(); //从键盘输入c1
if(c1>=65&&c1<=90) //判断所输入的c1是否为大写字母 '&&'符号为数学中的'且'
{
c2=c1+32;
printf("%c",c2);
} //if后只能执行一条语句 多条需要用大括号括起来
else
printf("所输入的大写字母不正确!");//如果输入的不是大写字母则输出提示语句
}