第03章-輸入和輸出_第1頁
第03章-輸入和輸出_第2頁
第03章-輸入和輸出_第3頁
第03章-輸入和輸出_第4頁
第03章-輸入和輸出_第5頁
已閱讀5頁,還剩32頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第3章

輸入與輸出輸入:從輸入設備(如鍵盤、磁盤等)向計算機輸入數(shù)據(jù)輸出:從計算機向輸出設備(如顯示器、打印機等)輸出數(shù)據(jù)標準庫函數(shù)通過流對象cin、cout分別進行流讀取和流插入字符數(shù)據(jù)的輸入與輸出字符輸入輸出函數(shù)包括:字符輸出函數(shù)putchar字符輸入函數(shù)getchar每執(zhí)行一次只輸入輸出一個字符。輸出函數(shù)putchar()格式:putchar

(ch)作用:向顯示器(或系統(tǒng)隱含指定的輸出設備)輸出一個字符。說明:ch是具有字符ASCII碼值的表達式。通常加分號構成函數(shù)調(diào)用語句(putchar(ch);),該語句的執(zhí)行將向顯示器輸出一個以ch的值為ASCII碼的字符。#include<stdio.h>voidmain(){chara,b,c;putchar('b');putchar('o');putchar('y');a='A';b='O';c='Y';putchar(a+1);putchar(b);putchar(c);}putchar()函數(shù)舉例boyBOY要得到如下的運行結果,怎么辦? boy BOY#include<stdio.h>voidmain(){charcha;cha='a';putchar(cha);putchar('\n');putchar(cha+1);}putchar()函數(shù)舉例a

b輸入函數(shù)getchar()

格式:getchar()作用:從鍵盤(或系統(tǒng)隱含指定的輸入設備)輸入一個字符,并顯示該字符(稱為回顯)。說明:該函數(shù)的返回值是輸入的字符的ASCII碼。通常構成如下的說明和賦值語句:

chara;a=getchar();注意:輸入字符后要“回車”字符輸入、輸出函數(shù)示例

#include<stdio.h>voidmain(){charc;c=getchar();

/*輸入一個字符并賦給字符變量c*/putchar(c);/*輸出以c的值所對應的字符*/}putchar(getchar());格式輸入與輸出格式輸入輸出函數(shù)包括:printf():格式輸出函數(shù)scanf():格式輸入函數(shù)用雙撇號括起來的字符串,包括:格式說明:由%和格式說明符組成,作用是把輸出項表中各輸出項依次按指定的格式輸出;普通字符:需要原樣輸出的字符。格式輸出函數(shù)printf()按用戶指定的格式,依次輸出各輸出項。函數(shù)調(diào)用的形式:

printf(格式控制字符串,輸出項表)

intx=3;printf("x=%d\n",x);

x=3列出要輸出的項(表達式),各輸出項之間用逗號隔開。格式輸出函數(shù)printf()注意:

格式控制字符串中的格式說明與輸出項表中的輸出項的個數(shù)必須相同,先后順序也要一一對應。

printf

("a=%d,b=%x,c=%f

",a,b,c);注意與下面的語句區(qū)別:

printf

("x=%d",(a,b,c));常用的格式說明

格式意義%d以十進制形式輸出帶符號整數(shù)(正數(shù)不輸出符號)%o以八進制形式輸出無符號整數(shù)(不輸出前綴O)%x以十六進制形式輸出無符號整數(shù)(不輸出前綴Ox)%f以小數(shù)形式輸出單、雙精度實數(shù)%e以指數(shù)形式輸出單、雙精度實數(shù)%c輸出單個字符%s輸出字符串附加格式說明符

附加格式說明符格式說明L、l長整型及雙精度數(shù)據(jù)的輸出m輸出數(shù)據(jù)的寬度n實數(shù)數(shù)據(jù)小數(shù)部分的輸出位數(shù)-輸出的數(shù)據(jù)左對齊+輸出正數(shù)時以“+”開頭#數(shù)據(jù)以八進制或十六進制輸出時,加上前導符0、0x注意附加格式說明符的出現(xiàn)位置! %d格式%d-按整型數(shù)據(jù)的實際長度輸出。

inta=356,b=4;

printf("a=%d

b=%d"

,a,b);

a=356b=4%ld-輸出長整型數(shù)據(jù)。

longa=123456;

printf("a=%ld"

,a);

a=123456%d格式%md-其中m為指定的輸出字段的寬度。如果數(shù)據(jù)的實際位數(shù)小于m,則左端補以空格,若大于m,則按實際位數(shù)輸出。inta=123,b=12345;

printf

("a=%4d

b=%4d"

,a,b);

a=123b=12345%mld%o格式%o-以八進制無符號整數(shù)形式輸出。inta=18;

printf

("a=%o",a);a=22注意:如果整數(shù)為負數(shù),則連同符號位也一起作為八進制的一部分輸出。如果上式中a=-1,輸出結果如何?%mo、%lo、%mlo%x格式%x-以十六進制無符號整數(shù)形式輸出。inta=18;

printf

("a=%x",a);a=12%mx、%lx、%mlx注意事項同%o%f格式%f-以實數(shù)的十進制形式輸出。整數(shù)部分全部輸出,小數(shù)部分只取前6位。floata=12.3456;printf

("a=%f",a

);a=12.345600

%f格式%m.nf-指定輸出的數(shù)據(jù)(包括小數(shù)點)共占m位,其中小數(shù)n位。如果n大于小數(shù)部分的實際位數(shù),輸出時小數(shù)部分用0補足;如果n小于小數(shù)部分的實際位數(shù),則將小數(shù)部分多余的位四舍五入。floata=12.3456;printf

("%8.2f,%8.4f",a,a);12.35,12.3456%e格式%e-以規(guī)范化指數(shù)形式輸出實數(shù)。小數(shù)部分占6位,指數(shù)部分占5位。floata=12.3456;

printf

("a=%e",a);

1.234560e+001%m.ne%c格式%c-輸出一個字符。chara1='c'

,a2='h'

printf

("%c,%c",a1,a2

);

c,h%mc%s格式%s-輸出一個字符串。printf

("%s","CHINA")

CHINA%m.ns-n表示從字符串中截取的字符數(shù)printf

("%4.2s","CHINA")

CHprintf函數(shù)練習1若有定義和語句:

inti=010,j=10; printf("%d,%4d,%-4d\n",i,j,j);其輸出結果是8,10,1010,+9若有語句: inti=10,j=10; printf("%d,%+d\n",i--,--j);其輸出結果是若有定義和語句:

intx=0177; printf("%4d,%4o,%#4o\n",x,x,x);其輸出結果是printf函數(shù)練習2若有語句:

intn=10; printf("%\n",n);其輸出結果是

127,177,0177printf函數(shù)練習3若有定義和語句:

floatf=3.1415927; printf("%f,%5.4f,%6.3f\n",f,f,f);其輸出結果是3.141593,3.1416,3.1423.141590e+001若有語句:

floatf=31.4159; printf("%e\n",f);其輸出結果是

格式輸入函數(shù)scanf

函數(shù)調(diào)用的形式:

scanf(格式控制字符串,輸入項地址表)其中:格式控制字符串:含義同printf函數(shù)。輸入項地址表

:需要接受輸入數(shù)據(jù)的所有變量的地址,或字符串的首地址。作用:按指定的格式,從標準輸入設備(鍵盤)上輸入數(shù)據(jù),并存入到地址表指定的地址中。scanf函數(shù)舉例

inta,b,c;scanf("%d

%d

%d"

,&a,&b,&c);

abc345說明:&a,&b,&c中的&是地址運算符,&a表示a在內(nèi)存中的地址。"%d%d%d"表示按十進制整數(shù)輸入a,b,c的值。輸入數(shù)據(jù)時,在兩個數(shù)據(jù)之間以一個或多個空格隔開。輸入:345格式輸入函數(shù)scanf()注意:

格式控制字符串中所包含的普通字符在數(shù)據(jù)輸入時必須原樣輸入,輸入所有數(shù)據(jù)后需要“回車”。

intx,y;scanf("x,y=%d,%d",&x,&y);

在鍵盤上輸入x,y=62,78注意:格式輸入函數(shù)的格式控制字符串中不允許使用轉(zhuǎn)義字符

如:intx,y;

scanf("%d%d\b",&x,&y);輸入過程中分隔符的使用若格式說明之間有一個或多個字符,則以這些字符為分隔符;除字符型格式(%c)外,若格式說明之間沒有任何其他字符,則以空格符或回車鍵或Tab鍵為分隔符。例如:scanf("a=%d,b=%d",&a,&b);

輸入形式:a=3,b=4scanf("%d%d",&a,&b);

輸入形式:34為使c1='A',c2='B',針對下列定義和語句,如何輸入?charc1,c2; scanf("%c%c",&c1,&c2);AB為使c1='A',x=12,y=34,若有如下語句,如何輸入?charc1;intx,y; scanf("%d%c%d",&x,&c1,&y);12A3412A34若有如下語句,輸入100后,輸出是? intn; scanf("%o",&n); printf("n=%d\n",n);scanf函數(shù)練習為使k1=10,k2=20,k3=30,k4=40,針對下列語句,如何輸入?

scanf("%d%d",&k1,&k2); scanf("%d,%d",&k3,&k4);102030,40n=64簡單程序設計練習1

編寫一個程序,輸入任意一個十進制整數(shù),輸出其對應的八進制數(shù)和十六進制數(shù)。#include<stdio.h>inti;scanf("%d",&i);printf("%o,%x\n",i,i);voidmain(){

}簡單程序設計練習2

讀程序,說出其功能。#include<stdio.h>voidmain(){charc1,c2;c1=getchar();printf("%c,%d\n",c1,c1);c2=c1+'A'-'a';printf("%c,%d\n",c2,c2);}C++在C的I/O功能的基礎上,還增加了一些擴展的I/O功能,這些擴展功能都是面向?qū)ο蟮?,即可以通過I/O流對象來實現(xiàn)相應的功能。C++把進行數(shù)據(jù)傳送操作的設備抽象成對象,將“流”作為具有輸入輸出功能的外設和程序之間的通道。3.4用流輸入輸出cout代表標準輸出流cin代表標準輸入流cerr和clog代表標準錯誤流對象通過cout流輸出數(shù)據(jù)包含頭文件iostream.hcout<<表達式1<<表達式2<

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論