用ctype.h中的函數(shù)tolower和toupper。前者以大寫(xiě)的字符作為參數(shù),返回相應(yīng)的小寫(xiě)字符;后者以小寫(xiě)的字符作為參數(shù),返回相應(yīng)的大寫(xiě)字符。
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比平橋網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式平橋網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋平橋地區(qū)。費(fèi)用合理售后完善,10年實(shí)體公司更值得信賴。
#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;
}
如果沒(méi)有相應(yīng)的大小寫(xiě),函數(shù)會(huì)返回字符本身。
#include ctype.h
#include stdio.h
int main()
{
char c = '0';
printf("%c", tolower(c)); //0
printf("%c", toupper(c)); //0
return 0;
}
由于大寫(xiě)字母與小寫(xiě)字母之間的差值為 32,因此小寫(xiě)字母轉(zhuǎn)換為大寫(xiě)字母的方法就是將小寫(xiě)字母的 ASCII 碼值減去 32,便可得到與之對(duì)應(yīng)的大寫(xiě)字母。
利用 getchar 函數(shù)從鍵盤上輸入一個(gè)小寫(xiě)字母,并將其賦給一個(gè)字符變量 a;然后將 a—32 的值賦給字符變量 b;最后進(jìn)行輸出,輸出時(shí)先輸出字母,再將字母以整數(shù)形式輸出。其具體步驟如下:
① 定義兩個(gè)字符變量 a、b;
② a=get char();
③ b=a—32;
④ 打印輸出。
程序代碼
#include stdio.h
int main()
{
char a,b;
printf("輸入一個(gè)小寫(xiě)字母:\n");
a=getchar();
b=a-32;
printf("轉(zhuǎn)換后的字母為:%c,%d\n",b,b);
return 0;
}
你的程序里面獲取循環(huán)的位置不對(duì),也就是獲取的字符串長(zhǎng)度的n應(yīng)該放在函數(shù)里面。
講n=strlen(s)放到函數(shù)里面,就可以了。