十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1、输入字符,可以使用getchar或者scanf的%c格式。
安龙网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、响应式网站设计等网站项目制作,到程序开发,运营维护。创新互联建站2013年开创至今到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。
2、在ASCII码表中,对应的小写字母比大写字母大32,所以输出增加32之后的值即可。
3、输出可以使用putchar或者printf。
4、参考代码:
#include stdio.h
int main()
{
char c;
c=getchar();//输入。
if(c='A' c='Z')//是大写字母
putchar(c+32);//输出小写。
return 0;
}
如果限定输入为合法大写,不需要判断合法性,那么代码可以简化为:
#include stdio.h
int main()
{
putchar(getchar()+32);//输入,计算,输出,一句即可。
return 0;
}
在C语言中转换大小写字母,可用ctype.h头文件中声明的函数toupper和tolower。
toupper:
int toupper(int c);
若c为小写字母,则将其转换为大写字母;否则,不转换,直接返回c。
tolower:
int tolower(int c);
若c为大写字母,则将其转换为小写字母;否则,不转换,直接返回c。
有三种方式可以解决c语言大小写字母的转换
1.使用C语言提供的函数:toupper(),tolower()
使用这两个函数需要引入头文件:#includectype.h
示例代码:
输入如下
2.自己编写转换函数:
因为大小写之间的ASCII码值的差值是固定的,因此可以使用‘a’-‘A’来获取差值。
实例代码:
输出如下:
3.异或0x20来实现转换:
0x20是16进制,表示为2进制是00100000,这样可能还是不明显,转换为10进制,其实就是32
对了,还是利用32.
异或:相同为0,不同为1. 也就是说,任何数字与0异或都是它本身。
所以将其他位都设为0,把第6位(从左向右)设置为1,也就是0x20
如果第6位是1,则异或结果为0.
如果第6位是0,则异或结果为1.
实现了加减32的操作。
示例代码:
输入如下:
希望可以帮到你。。。
用ctype.h中的函数tolower和toupper。前者以大写的字符作为参数,返回相应的小写字符;后者以小写的字符作为参数,返回相应的大写字符。
#include ctype.h
#include stdio.h
int main()
{
char c = 'A';
printf("%c", tolower(c)); //a
c = 'b';
printf("%c", toupper(c)); //B
return 0;
}
如果没有相应的大小写,函数会返回字符本身。
#include ctype.h
#include stdio.h
int main()
{
char c = '0';
printf("%c", tolower(c)); //0
printf("%c", toupper(c)); //0
return 0;
}