在C語言中,利用tolower和toupper兩個函數實現英文字母的大小寫之間的轉換
范例1:將s字符串內的小寫字母轉換成大寫字母
#include <ctype.h>int main(){  char s[] = "aBcDeFgH";  int i;  printf("before toupper() : %s/n", s);  for(i = 0; i < sizeof(s); i++)    s[i] = toupper(s[i]);  printf("after toupper() : %s/n", s);  return 0;}范例2:將s字符串內的大寫字母轉換成小寫字母
#include <ctype.h>int main(){  char s[] = "aBcDeFgH";  int i;  printf("before tolower() : %s/n", s);  for(i = 0; i < sizeof(s); i++)    s[i] = tolower(s[i]);  printf("after tolower() : %s/n", s);  return 0;}下面繼續為大家分享一個 c語言字符串的大小寫字母轉化函數
問題描述:
編寫一個函數my_strlwr實現將一個字符串中的大寫字母轉化為小寫字母,小寫字母不改變,并將其輸出。
程序分析:
大寫字母轉化為小寫字母,根據其ASCII碼值的關系,加上32就可以得到。編寫函數時,將其返回值設為該字符串空間的首地址,這樣,通過函數的調用后,就可以通過其首地址輸出整個字符串。
代碼如下:
#include<stdio.h>#include<assert.h>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;}	
新聞熱點
疑難解答