版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本章學(xué)習(xí)要點(diǎn)掌握C語(yǔ)言中輸入輸出數(shù)據(jù)的方法掌握各種格式的使用第3章 數(shù)據(jù)的輸入和輸出大連理工大學(xué)13.1.2 格式輸出函數(shù)函數(shù)的基本功能 格式:printf (格式控制串,輸出表列) 功能:從標(biāo)準(zhǔn)輸出設(shè)備上,按指定的格式輸出對(duì)應(yīng) 的變量。printf(“%d n %d”, a, b);printf(.)3.1 數(shù)據(jù)輸出23(2)普通字符:即需要原樣輸出的字符。 (3)“輸出表列”是需要輸出的一些數(shù)據(jù),可以是表達(dá)式例:main( )int a=3, b=4; printf(“a=%d b=%d”,a,b);輸出:a=3 b=4格式說(shuō)明符普通字符輸出表列2. 函數(shù)說(shuō)明: (1) 格式說(shuō)明符:由“%
2、”和格式符組成。43.格式說(shuō)明符 一般格式:%-m.nl格式符說(shuō)明如下:- 當(dāng)數(shù)據(jù)的寬度小于顯示寬度時(shí),數(shù)據(jù)左對(duì)齊,右方補(bǔ)空格.m 輸出數(shù)據(jù)占m個(gè)字符位,不夠右對(duì)齊,左邊填空格。n 輸出整數(shù)據(jù)有n位小數(shù)m.n 輸出數(shù)據(jù)占m列, n位小數(shù)l 用于長(zhǎng)整型或雙精度型的數(shù)據(jù)5常用格式符:%d以十進(jìn)制帶符號(hào)形式輸出整型數(shù)%o以八進(jìn)制無(wú)符號(hào)形式輸出整型數(shù)%x以十六進(jìn)制無(wú)符號(hào)形式輸出整型數(shù)%u以十進(jìn)制無(wú)符號(hào)形式輸出整型數(shù)%ld以十進(jìn)制帶符號(hào)形式輸出長(zhǎng)整型數(shù)%f以小數(shù)形式輸出單、雙精度實(shí)型數(shù)%e以指數(shù)形式輸出單、雙精度實(shí)型數(shù)%c以字符形式輸出一個(gè)字符%s以字符形式輸出一個(gè)字符串6 對(duì)不同類型的數(shù)據(jù)使用不同的格
3、式字符。有以下幾種格式字符: (1) d格式符: 輸出十進(jìn)制整數(shù). %d -按整型數(shù)據(jù)的實(shí)際長(zhǎng)度輸出。 %md -m為指定的輸出字段的寬度.若數(shù)據(jù)的位數(shù)小于m,則左端補(bǔ)以空格;若大于m,則按實(shí)際位數(shù)輸出。 %ld -輸出長(zhǎng)整型數(shù)據(jù).例:int a=1234; printf(“%3d”,a); printf(“%5d”,a);1234 1234實(shí)際 左補(bǔ)空7(2)o格式符 以八進(jìn)制數(shù)形式輸出整數(shù)。 將內(nèi)存單元中的各位的值(0或1)按八進(jìn)制形式輸出,輸出的數(shù)值不帶符號(hào),將符號(hào)也作為八進(jìn)制數(shù)的一部分輸出. 例如,-1在內(nèi)存單元中存放如下: a=-1 short int a=-1; printf(“%
4、d,%o”,a,a); 輸出: -1,1777771 1 11 11 11 11 11 11 11 o格式符同d格式符一樣,可以輸出長(zhǎng)整型數(shù)據(jù),也可以指定字段寬度。8(3) x格式符,以十六進(jìn)制數(shù)形式輸出整數(shù)。(4) u格式符,以十進(jìn)制形式輸出無(wú)符號(hào)型數(shù)據(jù)。 例 main() unsigned short int a=65535; short int b=-2; printf(“a=%d,%o,%x,%un”,a,a,a,a); printf(“b=%d,%o,%x,%un”,b,b,b,b); 輸出: a=-1,177777,ffff,65535 b=-2,177776,fffe,65534
5、1 1 11 11 11 11 11 11 111 1 11 11 11 11 11 11 109(5) c 格式符 輸出一個(gè)字符。 一個(gè)整數(shù),只要它的值在0255范圍內(nèi),也可以用字符形 式輸出。在輸出前,將該整數(shù)轉(zhuǎn)換成相應(yīng)的ASCII字符;反之,一個(gè)字符數(shù)據(jù)也可以用整數(shù)形式輸出。例 main( ) char c=a; int i=97; printf(“%c,%dn”,c,c); printf(“%c,%dn”,i,i); 輸出: a,97 a,9710(6) f格式符 以小數(shù)形式輸出實(shí)數(shù)(包括單、雙精度)。1) %f , 不指定字段寬度,由系統(tǒng)自動(dòng)指定,使整數(shù)部分全部輸出,并輸出6位小數(shù)。
6、2) %m.nf , 指定輸出的數(shù)據(jù)共占m列,其中有n位小數(shù).若數(shù)據(jù)長(zhǎng)度小于m,則左端補(bǔ)空格。例 main( ) float a=12.345; printf(“a=%f,a=%8.2f,n”,a,a); printf(“a=%.2f,a=%-8.2f,dn”,a,a); 輸出: a=12.345000,a= 12.35 a=12.35,a=12.3511(7) s格式符 輸出一個(gè)字符串。1) %s 若不指定字符寬度和對(duì)齊方式,則輸出全部字符串. 例如: printf(“%s”,”CHINA”) 輸出字符串“CHINA”字符串(不包括雙引號(hào))。2) %m.ns 指定輸出的數(shù)據(jù)共占m列,有n位字
7、符.若數(shù)據(jù)長(zhǎng)度小于m,則左端補(bǔ)空格。例如: printf(“%5.2s”,”CHINA”) 輸出字符串 “ CH”字符串128. e格式 以指數(shù)形式輸出實(shí)數(shù)。 1) %e 不指定輸出數(shù)據(jù)所占的寬度和數(shù)字部分小數(shù)位數(shù),由系統(tǒng)自動(dòng)指定給出6位小數(shù),指數(shù)部分占5位,其中“e”占一位,指數(shù)符號(hào)占一位,指數(shù)占3位.數(shù)值按標(biāo)準(zhǔn)化指數(shù)形式輸出.例如: printf(“%e”,123.456);輸出:1.234560e+002 e格式輸出的實(shí)數(shù)共占13列寬度. 2) %m.ne3位6位13g格式符: 輸出實(shí)數(shù),它根據(jù)數(shù)值的大小,自動(dòng)選 f 格式或 e 格式(選擇輸出時(shí)占寬度較小的一種),且不輸出無(wú)意義的零。
8、例如,若 f=123.468, 則printf(“%f %e %g”,f,f,f); 輸出如下:123.468000 1.234680e+002 123.46810列13列10列14幾點(diǎn)說(shuō)明:格式控制串的控制符號(hào)與變量表要一一對(duì)應(yīng),即:類型相同,個(gè)數(shù)相等 float a=12.345,b=0.54; printf(“b=%2f, a=%8.2fn”,b, a);2. 格式控制符號(hào)盡量用小寫字母3. 格式控制符號(hào)之外的符號(hào)均照原樣顯示4. 若需顯示百分號(hào),格式為:%5. 如果實(shí)際數(shù)據(jù)所占字符位大于指定的域?qū)?,按?shí)際輸出153.1.2 字符輸出函數(shù)1. 格式: putchar(字符變量)2.功能
9、:在標(biāo)準(zhǔn)輸出設(shè)備上,輸出指定的字符3.說(shuō)明:* 一次調(diào)用只能輸出一個(gè)字符* 加上分號(hào)成為字符輸出語(yǔ)句* 使用時(shí)在程序開頭用編譯命令#include”stdio.h”編譯預(yù)處理例:#include “stdio.h” main( )char a,b,c; a=B;b=O;c=Y; ptchar(a);putchar(b);putchar(c);output:BOY163.2.1 格式輸入函數(shù)一般形式: scanf(格式控制字符串, 地址表列) “格式控制字符串”的含義同printf函數(shù), “地址表列”可以是變量的地址,或字符串的首地址. 例如: int i; float x; scanf(“%d
10、%f”, &i, &x); 輸入數(shù)據(jù)時(shí),在兩個(gè)數(shù)據(jù)之間以一個(gè)或多個(gè)空格間隔,也可以用回車鍵、跳格鍵tab。3.2 數(shù)據(jù)的輸入1718 scanf函數(shù)格式說(shuō)明19說(shuō)明: 1)輸入時(shí)不允許規(guī)定精度,可以指定域?qū)抜nt a ;scanf(“%3d”,&a); float x; scanf(“%8.2f ”,&x);2) 輸入時(shí),遇下列情況結(jié)束* 回車,空格* 寬度結(jié)束* 非法輸入int k; scanf(“%3d”,&k);輸入:123456789k為:123203) 標(biāo)準(zhǔn)C在scanf中不使用%u說(shuō)明符,對(duì)unsigned型數(shù)據(jù),以%d或%o、%x格式輸入。4) 數(shù)據(jù)所占列數(shù),系統(tǒng)自動(dòng)按它截取所需
11、數(shù)據(jù).如scanf(“%3d%3d”,&a,&b); 輸入123456789系統(tǒng)自動(dòng)將123賦給a,456賦給b5) %后的“*”附加說(shuō)明符,用來(lái)表示跳過它相應(yīng)的數(shù)據(jù)例: scanf(“% 2d %*3d %2d”,&a,&b); 輸入: 1234567, 結(jié)果 a=12 跳過345,b=67216) 如果在“格式控制”字符串中除了格式說(shuō)明外還有其它字符,則在輸入數(shù)據(jù)時(shí)應(yīng)輸入與這些字符相同的字符.例: scanf(“a=%d,b=%d”,&a,&b);輸入: a=12,b=347) 在用“%c”格式輸入字符時(shí),空格字符和“轉(zhuǎn)義字符”都有作為有效字符輸入. scanf(“%d%c%d”,&a,&
12、b,&c); 輸入123a4568) double a,b; scanf(“%lf%lf”,&a,&b); 229) 輸入long型數(shù)據(jù),必須用%ld。10)輸入時(shí)格式控制符中不能加“n”。11) 在scanf函數(shù)的格式控制字符串中盡量不要出現(xiàn)普通字符,尤其不能將輸入提示放在其中。需要顯示輸入提示應(yīng)該調(diào)用printf函數(shù)實(shí)現(xiàn)。23main() int a; float b,c; scanf(“%2d%3f%4f”,&a,&b,&c); printf(“a=%d,b=%f,c=%fn”,a,b,c);輸入:12345678987654321輸出?a=12,b=345.000000,c=6789.
13、000000例:243.2. 2 getchar函數(shù)(字符輸入函數(shù))一般形式:getchar( ) -沒有參數(shù)功能:從終端輸入一個(gè)字符。說(shuō)明:1)只能接受一個(gè)字符 2)可以將獲得的字符賦給int 型或char型的變量 例 #include ”stdio.h” main() char c; c=getchar( ); putchar(c); 運(yùn)行時(shí)鍵入字符a,則其輸出為: a 25 求華氏溫度100F對(duì)應(yīng)的攝氏溫度例計(jì)算公式:C=5*(F-32)/9開始F=100C=5*(F-32)/9結(jié)束輸出 F, C #include main() int F, C; F=100; C= 5*(F-32)/
14、9.0; printf(“F= %d ,C= %f n”, F,C) ; 26編程練習(xí)求一元二次方程 x2+x-2=0 的根。(對(duì)ax2+bx+c=0,當(dāng)b2-4ac=0,方程的兩個(gè)實(shí)根.) main()27本章學(xué)習(xí)要點(diǎn)1.格式輸入函數(shù):scanf, 格式輸出函數(shù):printf, 常用格式:%d, %f, %s, %c ,%o, %ld2. scanf 函數(shù)中的“格式控制”后面應(yīng)當(dāng)是變量地址,而不是變量名.3. putchar函數(shù)(字符輸出函數(shù))4. getchar函數(shù) (字符輸入函數(shù))5. 使用其余標(biāo)準(zhǔn)庫(kù)函數(shù)時(shí),應(yīng)包含: #include 28實(shí)驗(yàn)的準(zhǔn)備及VC+6.0上機(jī)環(huán)境1. 計(jì)算機(jī)程序設(shè)計(jì)實(shí)驗(yàn)的準(zhǔn)備(1)復(fù)習(xí)與本次實(shí)驗(yàn)相關(guān)的教學(xué)內(nèi)容和主要知識(shí)點(diǎn)。(2)準(zhǔn)備好編程題目程序流程圖和全部源程序代碼,并且
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 優(yōu)化門診護(hù)理教學(xué)策略:教師技能大賽課件
- 全期護(hù)理實(shí)踐中的挑戰(zhàn)與對(duì)策
- 老年護(hù)理專業(yè)技能課件獲取
- 中醫(yī)科考核制度
- 2026年領(lǐng)導(dǎo)干部述職述廉述效報(bào)告
- 2026年許昌新東方學(xué)校26屆教師招聘?jìng)淇碱}庫(kù)及一套答案詳解
- 2025至2030中國(guó)電接觸材料行業(yè)替代品威脅與競(jìng)爭(zhēng)壁壘研究報(bào)告
- 2025-2030中國(guó)聚萘磺酸鈉市場(chǎng)發(fā)展動(dòng)態(tài)與投資規(guī)模預(yù)測(cè)分析研究報(bào)告
- 2025-2030中國(guó)原鋁行業(yè)銷售渠道及前景供需平衡性預(yù)測(cè)研究報(bào)告
- 2025-2030衛(wèi)星導(dǎo)航產(chǎn)業(yè)園區(qū)定位規(guī)劃及招商策略咨詢報(bào)告
- 2026年勞動(dòng)關(guān)系協(xié)調(diào)師綜合評(píng)審試卷及答案
- 黑龍江八一農(nóng)墾大學(xué)公開招聘輔導(dǎo)員和教師22人參考題庫(kù)附答案解析
- 2026年房地產(chǎn)經(jīng)紀(jì)協(xié)理考試題庫(kù)及答案(名師系列)
- 南京工裝合同范本
- 登高作業(yè)監(jiān)理實(shí)施細(xì)則
- 2025年婦產(chǎn)科副高試題庫(kù)及答案
- 2025食品機(jī)械行業(yè)智能化分析及技術(shù)升級(jí)趨勢(shì)與投資可行性評(píng)估報(bào)告
- 2025年度黨委黨建工作總結(jié)
- 《經(jīng)濟(jì)法學(xué)》2025-2025期末試題及答案
- CAICV智能網(wǎng)聯(lián)汽車遠(yuǎn)程升級(jí)(OTA)發(fā)展現(xiàn)狀及建議
- 2025年公民素質(zhì)養(yǎng)成知識(shí)考察試題及答案解析
評(píng)論
0/150
提交評(píng)論