十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
如果是日常使用, 那么可以考虑直接调用ctype.h里定义的函数
佳木斯网站建设公司创新互联,佳木斯网站设计制作,有大型网站制作公司丰富经验。已为佳木斯1000+提供企业网站建设服务。企业网站搭建\成都外贸网站制作要多少钱,请找那个售后服务好的佳木斯做网站的公司定做!
int tolower(int c);
如果是想自己实现, 那么要先判断c是否确实是大写字母('A'=c 'Z'=c), 然后再转换c += 'a'-'A', 注意这里'a'-'A'其实等于32, 而不是26
大小转换,用ascii码的差值进行运算。
函数实现两个主要功能:
一、识别字符串中大写字母。
二、将大写转小写,累计个数并返回。
下面是代码:
#include stdio.h
int C2LC(char str[]);
int main()
{
int n;
char str[100];
scanf("%s",str);
n=C2LC(str);
printf("大写转小写后为:\n%s\n修改的个数为:%d\n",str,n);
return 0;
}
int C2LC(char str[])
{
int n=0;
char *p=str;
while(*p!=0)
{
if(*p='A' *p='Z') *p=*p+32,n++;
p++;
}
return n;
}
用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;
}
1、输入字符,可以使用getchar或者scanf的%c格式。
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;
}