你的程序里面獲取循環(huán)的位置不對,也就是獲取的字符串長度的n應(yīng)該放在函數(shù)里面。
成都創(chuàng)新互聯(lián)是一家專注于做網(wǎng)站、網(wǎng)站建設(shè)與策劃設(shè)計,赤壁網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十多年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:赤壁等地區(qū)。赤壁做網(wǎng)站價格咨詢:13518219792
講n=strlen(s)放到函數(shù)里面,就可以了。
由于大寫字母與小寫字母之間的差值為 32,因此小寫字母轉(zhuǎn)換為大寫字母的方法就是將小寫字母的 ASCII 碼值減去 32,便可得到與之對應(yīng)的大寫字母。
利用 getchar 函數(shù)從鍵盤上輸入一個小寫字母,并將其賦給一個字符變量 a;然后將 a—32 的值賦給字符變量 b;最后進(jìn)行輸出,輸出時先輸出字母,再將字母以整數(shù)形式輸出。其具體步驟如下:
① 定義兩個字符變量 a、b;
② a=get char();
③ b=a—32;
④ 打印輸出。
程序代碼
#include stdio.h
int main()
{
char a,b;
printf("輸入一個小寫字母:\n");
a=getchar();
b=a-32;
printf("轉(zhuǎn)換后的字母為:%c,%d\n",b,b);
return 0;
}
用ctype.h中的函數(shù)tolower和toupper。前者以大寫的字符作為參數(shù),返回相應(yīng)的小寫字符;后者以小寫的字符作為參數(shù),返回相應(yīng)的大寫字符。
#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;
}
如果沒有相應(yīng)的大小寫,函數(shù)會返回字符本身。
#include ctype.h
#include stdio.h
int main()
{
char c = '0';
printf("%c", tolower(c)); //0
printf("%c", toupper(c)); //0
return 0;
}
1、C語言中,字符的存儲占用一個字節(jié),且都是使用其對應(yīng)的ASCII碼值來存儲的。
2、根據(jù)ASCII碼表,我們可以看出:大、小寫字母都是按順序進(jìn)行存儲的,大寫字母的ASCII值區(qū)間為:65~90,對應(yīng)的字母為:'A'-'Z';小寫字母的ASCII值區(qū)間為:97~122,對應(yīng)的字母為:'a'-'z',因此,將小寫字母轉(zhuǎn)化為大寫字母,可以直接將該變量減32即可得到對應(yīng)的大寫字母。
3、因此源程序如下:
#include stdio.h
char toUpCase(char ch);
int main()
{
int ch;
printf("請輸入一個小寫字母:");
scanf("%c",ch);
printf("對應(yīng)的大寫字母為:%c\n",toUpCase(ch)) ;
}
char toUpCase(char ch)
{
if(( 'a' = ch) (ch ='z'))
{
return (ch - 32);
}
return ch;
}
4、輸出如下:
C語言中,字符的存儲都是使用ascii值來存儲的。
根據(jù)ASCII碼表,我們可以看出:大、小寫字母都是按順序進(jìn)行存儲的,大寫字母的ASCII值區(qū)間為:65~90,對應(yīng)的字母為:'A'-'Z';小寫字母的ASCII值區(qū)間為:97~122,對應(yīng)的字母為:'a'-'z',因此,將小寫字母轉(zhuǎn)化為大寫字母,可以直接將該變量減32即可得到對應(yīng)的大寫字母,如:
char ch='a';
printf("upper case '%c'='%c'\n", ch, ch-32 );
如果記不清,大小字母誰大誰小,則可以采用如下方法進(jìn)行轉(zhuǎn)換:
char ch='x';
printf("upper case '%c'='%c'\n", ch, ch-'a'+'A' ); //減a得到偏移值,加A得到相應(yīng)的大寫字母
有三種方法:
1,用小寫字母減去32,eg: ch-32
2,用小寫字母和32做異或運(yùn)算 ch^32
3,利用庫函數(shù)toupper(ch)
這三種方法都可以把小寫字母轉(zhuǎn)化成大寫字母,根據(jù)情況使用,可以簡化程序