(c语言)字符串的大小写字母转化函数

问题描述:

编写一个函数my_strlwr实现将一个字符串中的大写字母转化为小写字母,小写字母不改变,并将其输出。

程序分析:

大写字母转化为小写字母,根据其ASCII码值的关系,加上32就可以得到。编写函数时,将其返回值设为该字符串空间的首地址,这样,通过函数的调用后,就可以通过其首地址输出整个字符串。

代码如下:

#include
#include

char *  my_strlwr(char * str)     //定义一个my_strlwr函数
{
	assert(str);                  //str的非空性
	char *ret = str;              //定义一个ret保存最初的str
	while(*str != '\0')           //判断字符串是否结束
	{   
	       if((*str >= 'A')&&(*str <= 'Z'))//判断当前啊字符是否是                                                大写字母
		{
			*str = *str +32;          //将其转化为小写字母
			str++;
		}
		else
			str++;
	}
	return ret;             //返回该字符串数组的首地址
}
int main()
{
	char str1[] = {"ABCDCFbbbdgeJhssW"};

	printf("%s\n",my_strlwr(str1));   //调用该函数,并且输出新的字符串

	return 0;
}
(c语言)字符串的大小写字母转化函数_第1张图片

你可能感兴趣的:(C语言)