1.前導(dǎo)程序
2.關(guān)于字符串
(1)字符串是一個(gè)或多個(gè)字符的序列呵曹。如"I am a student!"。
(2)C語(yǔ)言用空字符來(lái)標(biāo)記一個(gè)字符串的結(jié)束乍炉。數(shù)組的單元數(shù)必須至少比要存儲(chǔ)的字符數(shù)多1抡锈。
(3)字符串和字符怜珍。'x'和"x"的區(qū)別(后者是一個(gè)字符串由'x'和'\0'組成)。
(4)Sizeof()和strlen()函數(shù)到推。
同一個(gè)字符串考赛,sizeof()把標(biāo)志字符串結(jié)尾的空字符計(jì)算在內(nèi),長(zhǎng)度比strlen()大1.
strlen()以字符為單位給出字符串的長(zhǎng)度莉测。sizeof()給出數(shù)組的長(zhǎng)度(分配的內(nèi)存單元)颜骤。
獲取一個(gè)類型大大小~獲取一個(gè)具體量的大小。sizeof(char)和sizeof (name)=sizeof name悔雹。
sizeof()和strlen()
3.常量和C預(yù)處理器
(1)常量如0.015复哆。float taxrate=0.015欣喧。把常量0.015賦值給變量taxrate,但程序可能意外的改變它的值腌零。
(2)兩種方法const修飾符和#define預(yù)處理命令
const? int MONTHS=12;
#define MONTHS???? +12;(#define TEE? 'T')(#define OOPS? "Now you have it!")
4.printf()函數(shù)
(1)printf():(“控制描述"+變量列表)~(變量使用的是值,無(wú)論該值是變量唆阿、常量益涧、還是表達(dá)式)。
(2)printf()轉(zhuǎn)換說(shuō)明符:%c--一個(gè)字符驯鳖、%d--有符號(hào)十進(jìn)制整數(shù)闲询、%e--浮點(diǎn)數(shù)e記數(shù)法、%浅辙、f--浮點(diǎn)數(shù)十進(jìn)制扭弧、%p--指針、%%--打印一個(gè)%记舆、%s--字符串...:
請(qǐng)避免不匹配的轉(zhuǎn)換鸽捻。
(3)printf()標(biāo)志符:-(左對(duì)齊)、+(帶符號(hào))泽腮、#(...)御蒲、0(對(duì)所有數(shù)字格式,用前導(dǎo)0填充字段寬度)
打印一個(gè)字符串的前8個(gè)字符诊赊,字段寬度為8字符(%8.8s)
打印雙引號(hào)\"....\"
打印一個(gè)字段寬度在參數(shù)列表中給定的八進(jìn)制整數(shù)(%*0).
%5d(00006)
指定固定字段寬度(有效防止溢出)
(4)用printf()打印較長(zhǎng)的字符串
a.采用多個(gè)printf()函數(shù)厚满;
b.在一個(gè)printf()中采用(\)和回車鍵
c.采用字符串連接方法("Hello""world")
(5)printf()的函數(shù)返回值(返回所打印字符的數(shù)目,如果輸出有誤則返回-1碧磅,常用于檢查輸出錯(cuò)誤碘箍。向文件中而非屏幕)
5.scanf()函數(shù)
(1)scanf()會(huì)在遇到第一個(gè)空白字符空格、制表符鲸郊、或者換行符處停止讀取丰榴。~gets()函數(shù)可以用來(lái)讀取一個(gè)字符串。
(2)讀取變量類型的值加&严望,把字符串讀進(jìn)一個(gè)字符數(shù)組不使用&多艇。
(3)scanf("%d,%d",&n,&m)接受輸入? 1,2?? {scanf("%c",&ch)讀取在輸入中遇到的第一個(gè)字符}
6.關(guān)于修飾符*
printf()中在字段寬度部分使用*來(lái)代替數(shù)字
scanf()中*使函數(shù)跳過(guò)相應(yīng)的輸出項(xiàng)目(scanf("%*d%*d%d",&n);前兩個(gè)跳過(guò))