c語言基本數(shù)據(jù)類型包括 1.常量
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?2.整型和浮點(diǎn)型
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?3.字符型
這篇文章來記錄一下自己學(xué)習(xí)字符類型char時(shí)的筆記以及心得
一,char的概念及用法
1. 簡(jiǎn)單介紹
(1).定義:
char是用于C或C++中定義字符型變量,只占一個(gè)字節(jié)
(2).范圍
?
*表格中“有無”指編譯器可以編譯為帶符號(hào)(有)的,也可以編譯為不帶符號(hào)(無)的。?
*每一個(gè)字符在計(jì)算機(jī)中有特定的值去表達(dá)(以整數(shù)形式),參照ASCII碼對(duì)照表
?
?例如,想要定義一個(gè)變量為A,可以寫為,char ch(定義的變量名稱)=65,也可以寫成char ch='A'(后面有)
?如圖,會(huì)輸出字母A
當(dāng)然,不要害怕這個(gè)表,不需要記
2.用法
(1).字符表示
用單引號(hào)表示字符字面量:'a' '1'.
? ? ?char ch=1 ≠ char ch='1',用char定義的是字符,1是字符代碼中1指代的字符,而'1',被單引號(hào)括起來表示字符而不是一個(gè)整數(shù)。
(2).字符的輸入輸出:
例:輸入'1'這個(gè)字符給char ch:
做法:scanf("%c",&ch);
? ? ? ? ?%c:C語言的格式輸出,表示輸出單個(gè)字符
*如果使用%d會(huì)怎樣呢?
?scanf("%c",&ch);——>1
?scanf("%d",&ch);——>49
?因?yàn)?1'的ASCII編碼是49,所以當(dāng)ch==49時(shí),它代表'1'
同理,輸出語句即printf("%c",ch);
二,應(yīng)用
剛開始學(xué)習(xí)時(shí)想必都會(huì)遇到一個(gè)題:大小寫字母的轉(zhuǎn)換
一步一步來學(xué)習(xí)
1,字符計(jì)算
?這個(gè)是我在看翁愷老師視頻時(shí)的截圖
也就是說,我們可以不用記那個(gè)表中的數(shù)字,只需要知道
(1)大寫字母和小寫字母是分開排列的
(2)'a'-'A'可以得到兩端之間的距離
則
(1)大寫字母變成小寫字母可以用 ch+'a'-'A'
(2)小寫字母變成大寫字母可以用 ch+'A'-'a'
2,例題演示
這里就拿我之前做的一道題進(jìn)行演示:輸入一個(gè)字符,小寫轉(zhuǎn)化為大寫,否則原樣輸出
代碼如下
#include <stdio.h>
int main()
{
char x;
printf("請(qǐng)輸入一個(gè)字母:");
scanf("%c",&x);
if(x>='a' && x<='z')
x=x+'A'-'a';
printf("%c",x);
}
判斷所屬范圍時(shí),也可以直接用字符進(jìn)行判斷。
以上就是我在學(xué)習(xí)char數(shù)據(jù)類型時(shí)的筆記和思路。
剛開始學(xué)的時(shí)候完全不理解字符與這個(gè)表之間的關(guān)系,以至于這個(gè)簡(jiǎn)單的問題一直沒有搞明白
在網(wǎng)上找資料,看課學(xué)會(huì)了這些,理解得還不夠深刻文章來源:http://www.zghlxwxcb.cn/news/detail-736783.html
希望互相交流學(xué)習(xí),共同進(jìn)步。文章來源地址http://www.zghlxwxcb.cn/news/detail-736783.html
到了這里,關(guān)于【C語言數(shù)據(jù)類型】字符類型char如何使用?字母大小寫轉(zhuǎn)換?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!