2023年計算機等級考試二級C語言講義第三講輸入輸出函數(shù)_第1頁
2023年計算機等級考試二級C語言講義第三講輸入輸出函數(shù)_第2頁
2023年計算機等級考試二級C語言講義第三講輸入輸出函數(shù)_第3頁
2023年計算機等級考試二級C語言講義第三講輸入輸出函數(shù)_第4頁
2023年計算機等級考試二級C語言講義第三講輸入輸出函數(shù)_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第三講輸入輸出函數(shù)Printf()函數(shù)Scanf()函數(shù)Getchar()函數(shù)Putchar()函數(shù)一.格式輸出函數(shù)printf()前面的任務(wù)中我們已多次使用過這個函數(shù)。printf函數(shù)也稱為格式輸出函數(shù),其關(guān)鍵字最后一個字母f即為“格式”(format)的意思。1.printf函數(shù)一般形式格式:printf(“格式控制字符串”,輸出項1,輸出項2,……輸出項n);功能:按指定的格式把輸出列表中的數(shù)據(jù)顯示到顯示器屏幕上。其中,格式控制字符串用于指定輸出格式。格式控制字符串可由格式字符串和普通字符串兩種組成。格式字符串是以%號開頭的字符串,在%號后面跟有各種格式字符,用來說明輸出數(shù)據(jù)的類型、形式、長度、小數(shù)位數(shù)等。例如:“%d”表達(dá)按十進(jìn)制整型輸出;“%ld”表達(dá)按十進(jìn)制長整型輸出;“%c”表達(dá)按字符型輸出等。普通字符串在輸出時按原樣輸出,在顯示中起提醒作用。輸出列表中給出了各個輸出項,規(guī)定格式字符串和各輸出項在個數(shù)和類型上應(yīng)一一相應(yīng)。例2.3有一矩形,長度為a,寬度為b,求矩形的面積s。#include<stdio.h>main(){floata,b,s;a=3.26;b=5.68;s=a*b;printf(“a=%4.2f,b=%4.2f,s=%7.2f\n”,a,b,s);}則程序的運營結(jié)果是:a=3.26,b=5.68,s=18.522.格式字符串表2-3printf函數(shù)格式字符串完整格式及含義%-0m.nl或h格式字符格式字符串的起始標(biāo)志,是必選項。指定左對齊輸出指定空位填0m指定輸出的域?qū)?,即總長度。n指定輸出數(shù)據(jù)的精度。輸出長度的修正指定輸出類型,是必選項說明:(1)兩頭的項為必選項,中間為可選項,m,n為正整數(shù)。(2)格式字符和含義說明如表所示:表2-4格式字符意義格式字符意義d以十進(jìn)制形式輸出帶符號整數(shù)(正數(shù)不輸出符號)o以八進(jìn)制形式輸出無符號整數(shù)(不輸出前綴0),#o輸出前綴0x,X以十六進(jìn)制形式輸出無符號整數(shù)(不輸出前綴Ox),#ox輸出0xu以十進(jìn)制形式輸出無符號整數(shù)f以小數(shù)形式輸出單、雙精度實數(shù)e,E以指數(shù)形式輸出單、雙精度實數(shù)g,G以%f或%e中較短的輸出寬度輸出單、雙精度實數(shù)c輸出單個字符s輸出字符串(3)輸出域?qū)抦:用十進(jìn)制整數(shù)來表達(dá)輸出的最少位數(shù)。若實際位數(shù)多于定義的寬度,則按實際位數(shù)輸出,若實際位數(shù)少于定義的寬度則補以空格或0。(4)精度n:精度格式符以“.”開頭,后跟十進(jìn)制整數(shù)。本項的意義是:假如輸出數(shù)字,則表達(dá)小數(shù)的位數(shù);假如輸出的是字符,則表達(dá)輸出字符的個數(shù);若實際位數(shù)大于所定義的精度數(shù),則截去超過的部分。(5)長度:長度格式符為h和l兩種,h表達(dá)按短整型量輸出,l表達(dá)按長整型量輸出。例2.4格式字符應(yīng)用舉例。#include<stdio.h>main(){inta=15;floatb=123.1234567;doublec=12345678.1234567;chard='p';printf("a=%d,%5d,%o,%x\n",a,a,a,a);printf("b=%f,%lf,%5.4lf,%e\n",b,b,b,b);printf("c=%lf,%f,%8.4lf\n",c,c,c);printf("d=%c,%8c\n",d,d);}其輸出結(jié)果為:注意提醒:%和格式符之間可以加其它修飾符。加*時作為指定域?qū)挕?7頁例格式控制符的前后可以加其它字符,但是它們原樣輸出,一般是為了好區(qū)分意義。只有格式控制符和轉(zhuǎn)義字符不是原樣輸出。格式控制符與輸出列表個數(shù)要相等。類型要一致。兩個%的情況,多個%的情況。%%%d,%.%%%d,a.%.%%f輸出項列表盡量明確簡樸。最佳不要用++,--表達(dá)式。27頁例二.格式輸入函數(shù)scanf()1.scanf函數(shù)一般形式格式:scanf(“格式控制字符串”,地址列表);功能:按指定的格式參數(shù)的規(guī)定,從終端上把數(shù)據(jù)傳送到地址參數(shù)指定的內(nèi)存空間中。其中,格式控制字符串的作用與printf函數(shù)相同,但不能顯示非格式字符串,也就是不能顯示提醒字符串。地址表列中的地址是通過對變量名“求地址”運算得到的,即地址運算符“&”后跟變量名。例如:&a,&b,分別表達(dá)變量a和變量b的地址。例2.5鍵盤輸入三個整型數(shù)據(jù)并輸出。#include<stdio.h>main(){inta,b,c;printf("輸入三個整型數(shù)據(jù)a,b,c:");//提醒信息scanf("%d%d%d",&a,&b,&c);//輸入三個整型數(shù)據(jù)printf("a=%d,b=%d,c=%d",a,b,c);//輸出三個整型數(shù)據(jù)}在本例中,由于scanf函數(shù)自身不能顯示提醒串,故先用printf語句在屏幕上輸出提醒,請用戶輸入a、b、c的值。在輸入數(shù)據(jù)時需要輸入有效間隔符,即一個或多個空格或回車鍵作為相鄰輸入數(shù)值之間的間隔。例如:789或789運營結(jié)果為:a=7,b=8,c=92.格式修飾字符串表2-5scanf函數(shù)格式字符串的完整格式及含義%*ml或h格式字符格式字符串的起始標(biāo)志,是必選項。賦值克制字符寬,不能說明精度m指定域?qū)挘纯傞L度。輸出長度的修正如:ld,lf,le指定輸出類型,是必選項說明:(1)常見格式字符和意義如表所示:表2-6格式字符意義格式字符字符意義d輸入十進(jìn)制整數(shù)o輸入八進(jìn)制整數(shù)x輸入十六進(jìn)制整數(shù)u輸入無符號十進(jìn)制整數(shù)f或e輸入實型數(shù)(用小數(shù)形式或指數(shù)形式)c輸入單個字符s輸入字符串提醒注意:輸入數(shù)據(jù)時的分隔標(biāo)志:若格式控制串中沒有非格式字符(如%d%d%d是緊相連的)作輸入數(shù)據(jù)之間的間隔則可用空格,TAB或回車作間隔。有的話原樣輸入,作為分隔符。%和格式符之間可以加其它修飾符。加克制符*時跳過前面的輸出項。參考29頁例子格式控制符的前后可以加其它字符,但是規(guī)定一一相應(yīng)的原樣輸入。參考30頁例子。格式控制符與輸出列表個數(shù)要相等。否則得不到對的數(shù)據(jù),但不一定報錯。實數(shù)只能指定數(shù)據(jù)總寬度,不能指定小數(shù)寬度。假如沒有輸入間隔符但盡量不要指定寬度,29頁例子6.輸入字符數(shù)據(jù)時,若格式控制串中無非格式字符,則認(rèn)為所有輸入的字符均為有效字符。例如:scanf("%c%c%c",&a,&b,&c);輸入為:xyz回車則把‘x'賦予a,‘'賦予b,‘y'賦予c。只有當(dāng)輸入為:xyz回車時,才干把‘x'賦于a,‘y'賦予b,’z'賦予c。假如在格式控制中加入空格作為間隔,則輸入各字符之間可用空格或回車或TAB作為分隔符。例2.6簡樸的輸入輸出數(shù)據(jù)練習(xí)。#include<stdio.h>main(){longa;printf("inputalonginteger\n");scanf("%ld",&a);printf("%ld",a);}運營結(jié)果為:inputalonginteger回車?yán)?.7輸入三個小寫字母,輸出其ASCII碼和相應(yīng)的大寫字母。#include<stdio.h>main(){chara,b,c;printf("inputcharactera,b,c\n");scanf("%c%c%c",&a,&b,&c);printf("%d,%d,%d\n%c,%c,%c\n",a,b,c,a-32,b-32,c-32);}運營結(jié)果為:inputcharactera,b,cabc97,98,99,A,B,C三.putchar函數(shù)(字符輸出函數(shù))putchar函數(shù)是字符輸出函數(shù),其功能是在顯示器上輸出單個字符。其一般形式為:putchar(字符變量)例如:putchar('A');(輸出大寫字母A)putchar(x);(輸出字符變量x的值)putchar(‘\101’);(也是輸出字符A)putchar('\n');(換行)對控制字符則執(zhí)行控制功能,不在屏幕上顯示。使用本函數(shù)前必須要用文獻(xiàn)包含命令:#include<stdio.h>或#include“stdio.h”四.getchar函數(shù)(鍵盤輸入字符函數(shù))getchar函數(shù)的功能是從鍵盤上輸入一個字符。其一般形式為:getchar();通常把輸入的字符賦予一個字符變量,構(gòu)成賦值語句,如:charc;c=getchar();【例4.2】輸入單個字符。#include<stdio.h>voidmain(){charc;printf("inputacharacter\n");c=getchar();putchar(c);}使用getch

溫馨提示

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

評論

0/150

提交評論