資源描述:
《C語言知識回顧和補充》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、C語言知識鞏固和補充輸入輸出位運算函數(shù)指針指針和動態(tài)內(nèi)存分配命令行參數(shù)C語言標(biāo)準(zhǔn)庫函數(shù)C語言的輸入輸出語句#include?scanf()將輸入讀入變量?printf()將變量內(nèi)容輸出scanf()語句(函數(shù))intscanf(constchar*,...);參數(shù)可變的函數(shù)第一個參數(shù)是格式字符串,后面的參數(shù)是變量的地址,函數(shù)作用是按照第一個參數(shù)指定的格式,將數(shù)據(jù)讀入后面的變量參數(shù)可變的函數(shù)的參考閱讀(不要求掌握)http://www2.ccw.com.cn/1995/3/133563.shtmlscanf返回值>0
2、成功讀入的數(shù)據(jù)項個數(shù);0沒有項被賦值;EOF第一個嘗試輸入的字符是EOF(結(jié)束)(對POJ上某些題,返回值為EOF可以用來判斷輸入數(shù)據(jù)已經(jīng)全部讀完)printf()語句(函數(shù))intprintf(constchar*,...);參數(shù)可變的函數(shù)第一個參數(shù)是格式字符串,后面的參數(shù)是待輸出的變量,函數(shù)作用是按照第一個參數(shù)指定的格式,將后面的變量在屏幕上輸出返回值:成功打印的字符數(shù);返回負(fù)值為出錯%d讀入或輸出int變量%c讀入或輸出char變量%f讀入或輸出float變量%s讀入或輸出char*變量%lf讀入或輸出double變量%e以科
3、學(xué)計數(shù)法格式輸出數(shù)值%x以十六進(jìn)制讀入或輸出int變量%I64d讀入或輸出_int64變量(64位整數(shù))%p輸出指針地址值%.5lf輸出浮點數(shù),精確到小數(shù)點后5位格式字符串里的格式控制符號:#includeintmain(){inta;charb;charc[20];doubled=0;floate=0;intn=scanf("%d%c%s%lf%f",&a,&b,c,&d,&e);printf("%d%c%s%lf%e%f%d",a,b,c,d,e,e,n);return0;}intn=scanf("%d%c%s
4、%lf%f",&a,&b,c,&d,&e);printf("%d%c%s%lf%e%f%d",a,b,c,d,e,e,n);input:123ateststring8.99.2output:123ateststring8.9000009.200000e+0009.2000005input:123ateststring8.99.2output:input:123ateststring8.99.2output:123ateststring8.9000009.200000e+0009.2000005123a0.0000000.000000
5、e+0000.0000003#includeintmain(){inta,b;charc;chars[20];_int64n=9876543210001111;//VC++6.0scanf("%d%c,%s%x%I64d",&a,&c,s,&b,&n);printf("%d%x%u%s%p%x%d%I64d",a,a,a,s,s,b,b,n);return0;}input:-28K,testffee1234567890123456output:-28ffffffe44294967268test0012FF60ffe
6、e655181234567890123456#includeintmain(){inta,b;charc;chars[20];longlongn=9876543210001111LL;//DevC++scanf("%d%c,%s%x%I64d",&a,&c,s,&b,&n);printf("%d%x%u%s%p%x%d%I64d",a,a,a,s,s,b,b,n);return0;}input:-28K,testffee1234567890123456output:-28ffffffe44294967268test
7、0012FF60ffee655181234567890123456#includeintmain(){char*s;scanf("%s",s);return0;}錯在何處?常見錯誤:錯在s不知道指向何處,往其指向的地方寫入數(shù)據(jù),不安全char*gets(char*s);從標(biāo)準(zhǔn)輸入讀取一行到字符串s如果成功,返回值就是s地址如果失敗,返回值是NULL可以根據(jù)返回值是NULL判定輸入數(shù)據(jù)已經(jīng)讀完調(diào)用時要確保s指向的緩沖區(qū)足夠大,否則可能發(fā)生內(nèi)存訪問錯誤讀取一行:#includeintmain(){ch
8、ars[200];char*p=gets(s);printf("%s:%s",s,p);return0;}input:WelcometoBeijing!讀取一行:output:WelcometoBeijing!:WelcometoBe