#includelt;stdio.hgt;
專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)額爾古納免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了近千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
int main()
{
int i;
int word;
char str[200];
printf("請輸入字符串:");
while(gets(str)!=NULL)
{
printf("修改后的字符串為:");
word=0;
for(i=0;stri!='\0';i++)
{
if(stri=='')
{
word=0;
printf("");
}
else if(word==0)
{
word=1;
stri=stri-32;
printf("%c",stri);
}
else
printf("%c",stri);
}
printf("\n");
}
return 0;
}
運(yùn)行結(jié)果:
擴(kuò)展資料:
printf()用法:
1、printf()函數(shù)是格式化輸出函數(shù),一般用于向標(biāo)準(zhǔn)輸出設(shè)備按規(guī)定格式輸出信息。
格式輸出,它是c語言中產(chǎn)生格式化輸出的函數(shù)(在stdio.h中定義)。用于向終端(顯示器、控制臺等)輸出字符。格式控制由要輸出的文字和數(shù)據(jù)格式說明組成。
要輸出的文字除了可以使用字母、數(shù)字、空格和一些數(shù)字符號以外,還可以使用一些轉(zhuǎn)義字符表示特殊的含義。
簡單點(diǎn)理解就是,在一段程序中你正確使用該函數(shù),可以在該程序運(yùn)行的時候輸出你所需要的內(nèi)容。
2、printf函數(shù)是一個標(biāo)準(zhǔn)庫函數(shù),它的函數(shù)原型在頭文件“stdio.h”中。但作為一個特例,不要求在使用printf函數(shù)之前必須包含stdio.h文件。
你的程序里面獲取循環(huán)的位置不對,也就是獲取的字符串長度的n應(yīng)該放在函數(shù)里面。
講n=strlen(s)放到函數(shù)里面,就可以了。
用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;
}
由于大寫字母與小寫字母之間的差值為 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;
}
有三種方式可以解決c語言大小寫字母的轉(zhuǎn)換
1.使用C語言提供的函數(shù):toupper(),tolower()
使用這兩個函數(shù)需要引入頭文件:#includectype.h
示例代碼:
輸入如下
2.自己編寫轉(zhuǎn)換函數(shù):
因?yàn)榇笮懼g的ASCII碼值的差值是固定的,因此可以使用‘a(chǎn)’-‘A’來獲取差值。
實(shí)例代碼:
輸出如下:
3.異或0x20來實(shí)現(xiàn)轉(zhuǎn)換:
0x20是16進(jìn)制,表示為2進(jìn)制是00100000,這樣可能還是不明顯,轉(zhuǎn)換為10進(jìn)制,其實(shí)就是32
對了,還是利用32.
異或:相同為0,不同為1. ?也就是說,任何數(shù)字與0異或都是它本身。
所以將其他位都設(shè)為0,把第6位(從左向右)設(shè)置為1,也就是0x20
如果第6位是1,則異或結(jié)果為0.
如果第6位是0,則異或結(jié)果為1.
實(shí)現(xiàn)了加減32的操作。
示例代碼:
輸入如下:
希望可以幫到你。。。
在C語言中轉(zhuǎn)換大小寫字母,可用ctype.h頭文件中聲明的函數(shù)toupper和tolower。
toupper:
int toupper(int c);
若c為小寫字母,則將其轉(zhuǎn)換為大寫字母;否則,不轉(zhuǎn)換,直接返回c。
tolower:
int tolower(int c);
若c為大寫字母,則將其轉(zhuǎn)換為小寫字母;否則,不轉(zhuǎn)換,直接返回c。