在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;}
新聞熱點
疑難解答