版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第3章順序結(jié)構(gòu)本章內(nèi)容數(shù)據(jù)的輸入輸出程序舉例C程序的語(yǔ)句123說(shuō)明語(yǔ)句說(shuō)明語(yǔ)句包括變量(或數(shù)組)定義語(yǔ)句和函數(shù)聲明語(yǔ)句兩種,而最常用的是變量(或數(shù)組)定義語(yǔ)句,通過(guò)變量定義語(yǔ)句確定變量的類(lèi)型與初值。例如:charch1,ch2;intx,y,z=1;floata,b,c;doubled1,d2;執(zhí)行語(yǔ)句執(zhí)行語(yǔ)句可分為以下五類(lèi):1、表達(dá)式語(yǔ)句。如:k=k+1;為賦值語(yǔ)句
k+1;為表達(dá)式語(yǔ)句k++;為自增1語(yǔ)句
a=(b=5)+(c=3);2、復(fù)合語(yǔ)句。如:{z=x+y;t=z/100;}一個(gè)復(fù)合語(yǔ)句在語(yǔ)法上作為一條語(yǔ)句處理,在一對(duì)花括號(hào)中的語(yǔ)句數(shù)量不限。
復(fù)合語(yǔ)句花括號(hào)必須配對(duì);右花括號(hào)的后面不加分號(hào)。在復(fù)合語(yǔ)句中,不僅可以有執(zhí)行語(yǔ)句,還可以有說(shuō)明語(yǔ)句.
如:{inta=5;b=a*a;}
執(zhí)行語(yǔ)句3、空語(yǔ)句?!埃弧?、函數(shù)調(diào)用語(yǔ)句。如:printf(“**book**”);
5、控制語(yǔ)句(9種)。如:if語(yǔ)句,for語(yǔ)句等數(shù)據(jù)的輸入輸出C語(yǔ)言中沒(méi)有提供輸入輸出語(yǔ)句,其輸入輸出操作,是通過(guò)C語(yǔ)言系統(tǒng)所提供的輸入輸出函數(shù)
來(lái)實(shí)現(xiàn)的。1、默認(rèn)的標(biāo)準(zhǔn)輸入輸出設(shè)備是鍵盤(pán)和顯示器。2、輸入輸出函數(shù)被放在標(biāo)準(zhǔn)的I/O函數(shù)庫(kù)中,庫(kù)中的公用信息存放在頭文件stdio.h中,若要使用這些輸入輸出函數(shù),必須在源程序的開(kāi)始使用預(yù)處理命令:
#include"stdio.h"字符輸入函數(shù)getchar()格式:getchar()功能:從鍵盤(pán)上輸入一個(gè)字符。函數(shù)的值就是從鍵盤(pán)上得到的字符。能獲取空格、回車(chē)、制表符。如:charch;ch=getchar();注意:getchar()只能接收一個(gè)字符,而且只有在用戶(hù)敲入回車(chē)鍵<Enter>后,讀入才開(kāi)始執(zhí)行。字符輸入函數(shù)getchar()main()
{
char
ch1,
ch2;
ch1
=
getchar();
ch2
=
getchar();
printf("%d
%d\n",
ch1,
ch2);
}
輸入:’A’<Enter>
程序的輸入都建有一個(gè)緩沖區(qū),即輸入緩沖區(qū)。當(dāng)一次鍵盤(pán)輸入結(jié)束時(shí),會(huì)將輸入的數(shù)據(jù)存入輸入緩沖區(qū),
getchar()函數(shù)從輸入流緩沖區(qū)中讀取值,而非從鍵盤(pán)(終端)緩沖區(qū)讀取。輸入字符A后,回車(chē)(\n)會(huì)一起讀入輸入流緩沖區(qū)。所以第一次getchar取走字符A后會(huì)留下字符\n,第二次getchar直接從緩沖區(qū)中把\n取走。字符輸出函數(shù)putchar()格式:putchar(ch)功能:將ch的值向標(biāo)準(zhǔn)輸出設(shè)備輸出。其中ch可以是字符型變量,整型變量,字符型常量。也可以輸出轉(zhuǎn)義字符。例:#include“stdio.h”main(){ chara,b,c;a=‘T’;b=‘e’;c=‘a(chǎn)’;
putchar(a);putchar(b);putchar(c);
}結(jié)果:Tea格式輸出函數(shù)printf()格式:
printf(“控制字符串”,輸出項(xiàng)列表)功能:按控制字符串規(guī)定的輸出格式,將輸出項(xiàng)列表中的各輸出項(xiàng)的值依次輸出到顯示器上。其中:控制字符串包括:格式說(shuō)明:%[m.n][l]格式字符作用是將輸出的數(shù)據(jù)轉(zhuǎn)換為格式字符規(guī)定的格式,然后輸出。
格式字符printf(“%d”,15)格式字符意義d以十進(jìn)制有符號(hào)形式輸出整型數(shù)據(jù)o以八進(jìn)制無(wú)符號(hào)形式輸出整型數(shù)據(jù)(不帶前導(dǎo)0)x以十六進(jìn)制無(wú)符號(hào)形式輸出整型數(shù)據(jù)(不帶前導(dǎo)0x)u以十進(jìn)制無(wú)符號(hào)形式輸出整型數(shù)據(jù)c輸出一個(gè)字符s輸出字符串中的字符,直到遇到“\0”,或者輸出由精度指定的字符數(shù)f以小數(shù)形式輸出單精度和雙精度數(shù)據(jù),隱含的小數(shù)位數(shù)為6e以規(guī)格化的指數(shù)形式輸出單精度和雙精度數(shù)據(jù),隱含的小數(shù)位數(shù)為6控制字符串printf(“%5.2f”,23.45)字符意義字母l用于長(zhǎng)整型整數(shù)的輸出,可加在格式符d、o、x、u前面m(正整數(shù))指定輸出數(shù)據(jù)所占的寬度,若輸出的數(shù)據(jù)位數(shù)>m,為保證數(shù)據(jù)的正確性,則按實(shí)際位數(shù)輸出;如果數(shù)據(jù)的位數(shù)<m,則多出的位數(shù)補(bǔ)空格.n(正整數(shù)).n稱(chēng)為精度。對(duì)實(shí)數(shù),表示輸出n位小數(shù);對(duì)字符串,表示截取的字符個(gè)數(shù);對(duì)于整數(shù),指定必須輸出的數(shù)字個(gè)數(shù),若輸出的數(shù)字少于指定的個(gè)數(shù),則前面補(bǔ)0,否則按原樣輸出-輸出的數(shù)字或字符左對(duì)齊+使輸出的數(shù)字總是帶“+”或“-”號(hào)0在輸出的數(shù)據(jù)前加前導(dǎo)“0”#使輸出的八進(jìn)制數(shù)(或十六進(jìn)制數(shù))帶前導(dǎo)0(或0x)輸出項(xiàng)列表:是需要輸出的一些數(shù)據(jù),可以是一個(gè)或者是多個(gè)輸出項(xiàng),當(dāng)有多個(gè)輸出項(xiàng)時(shí),輸出項(xiàng)之間用逗號(hào)“,”隔開(kāi),輸出項(xiàng)可以是常量、變量或表達(dá)式。輸出項(xiàng)的個(gè)數(shù)和類(lèi)型必須與控制字符串的格式字符的個(gè)數(shù)、類(lèi)型相匹配。printf(“控制字符串”,輸出項(xiàng)列表)控制字符串printf()原理printf(“a=%db=%d“,15,27);printf(“helloword“);1、在格式控制字符串中,格式說(shuō)明與輸出項(xiàng)從左到右在類(lèi)型上必須一一對(duì)應(yīng)匹配。對(duì)long型數(shù)據(jù)要使用%ld
格式輸出。2、在格式控制字符串中,格式說(shuō)明與輸出項(xiàng)的個(gè)數(shù)應(yīng)該相同。如果格式說(shuō)明的個(gè)數(shù)少于輸出項(xiàng)的個(gè)數(shù),則多余的輸出項(xiàng)不輸出;如果格式說(shuō)明的個(gè)數(shù)多于輸出項(xiàng)的個(gè)數(shù),則對(duì)于多余的格式項(xiàng)將輸出不定值(或0值)。在格式控制字符串中,除了合法的格式說(shuō)明外,可以包含任意的合法字符(包括轉(zhuǎn)義字符),這些字符在輸出時(shí)“原樣照印”。printf()原理3、若需輸出百分號(hào)%斜杠\%%\\4、在輸出語(yǔ)句中改變輸出變量的值,如:inta=5;printf(“%d%d\n”,a,a++);5、printf函數(shù)的返回值通常是本次調(diào)用中輸出字符的個(gè)數(shù)。printf()舉例main(){charch=‘a(chǎn)’;inta=123;floatx=12.3456;printf(“Hellocomputer\n”);printf(“%c,%d\n”,ch,ch); printf(“%.5d,%.2d,%5d,%05d\n”,a,a,a,a);printf(“%f,%10.3f,%5.5f,%2.3f\n”,x,x,x,x);}Hellocomputer<Enter>a,9700123,123,123,0012312.345600,12.346,12.34560,12.346printf()再舉例int
a=12478;格式控制符輸出結(jié)果
%d%8d%3d%-8d
12478124781247812478printf()再舉例float
a=
1274.678;格式控制符輸出結(jié)果
%f%e%8.2f%6.2f
%10.2e%-10.2e1274.6780001.274678e+001274.681274.681.3e+0031.3e+003printf()再舉例c=
“hello”;格式控制符輸出結(jié)果
%s%3s%7s%7.2s
%-7.2shellohellohellohehe格式輸入函數(shù)scanf()格式:
scanf(“控制字符串”,地址表列)功能:按控制字符串規(guī)定的輸入格式,從鍵盤(pán)上將輸入的數(shù)據(jù)依次存到輸入項(xiàng)地址表列所指定的內(nèi)存單元中。地址表列:變量的地址表,即:&變量名,&變量名,…
控制字符串:與printf()函數(shù)類(lèi)似。
格式輸入函數(shù)scanf()main(){inta,b,c;scanf(“%d%d%d”,&a,&b,&c);printf(“a=%d,b=%d,c=%d\n”,a,b,c);printf(“s=%d”,a+b+c);}從鍵盤(pán)上輸入:312110屏幕上則顯示:a=3,b=12,c=110s=125注意:1、輸入long整型數(shù)據(jù)時(shí),在“%”和“d”
之間必須加“l(fā)”;輸入double型數(shù)據(jù)時(shí),在“%”和“f(e)”之間也必須加l。否則得不到正確的數(shù)據(jù)。2、當(dāng)指定輸入數(shù)據(jù)所占的寬度m時(shí),系統(tǒng)自動(dòng)按寬度m截取所需數(shù)據(jù)。但不能對(duì)實(shí)型數(shù)據(jù)指定小數(shù)位的寬度。例:scanf(“%4d%2d”,&a,&b);
若輸入:123456
則將1234→a,56→b
scanf(“%7.2f”,&a);不合法。格式輸入函數(shù)scanf()格式輸入函數(shù)scanf()3、輸入項(xiàng)與控制字符串中的格式說(shuō)明從左到右在類(lèi)型上必須一一對(duì)應(yīng)匹配。4、數(shù)據(jù)輸入的合法結(jié)束:空格(一個(gè)或多個(gè))、回車(chē)、TAB鍵、數(shù)據(jù)域?qū)?,非法輸入?、在用“%c”格式輸入字符時(shí),空格符、制表符或回車(chē)符、“轉(zhuǎn)義字符”等都是有效字符。但是,如果在格式說(shuō)明之間加入了空格后,這時(shí)輸入字符中的空格符、制表符和回車(chē)符都將作為間隔符。例:已知:charc1,c2,c3;inta,b;floatd,e;格式輸入語(yǔ)句輸入數(shù)據(jù)的格式變量獲得的值 scanf(“%d%d%f”,&a,&b,&d) 101112.5a=10,b=11,d=12.5scanf(“%2d%2d”,&a,&b) 10113a=10,b=11 scanf(“%c%c%c”,&c1,&c2,&c3) ABCc1=’A’,c2=’B’,c3=’C’ABCc1=’A’,c2=’‘,c3=’B’scanf(“%d%c%d”,&a,&c1,&b) 123c48Da=123,c1=’c’,b=48scanf(“%7.2f”,&d)這是錯(cuò)誤格式。因?yàn)檩斎霐?shù)據(jù)時(shí)不能規(guī)定精度。 scanf()舉例綜合程序舉例例:已知a=5.0,b=2.5,c=7.8,計(jì)算#include"stdio.h"#definePI3.14main(){floata=5.0,b=2.5,c=7.8,y;
y=PI*a*b/(a+b*c);
printf("y=%f\n",y);}綜合程序舉例例:從鍵盤(pán)輸入兩個(gè)整數(shù)賦給變量a和b,要求交換變量a和b中的值。#include"stdio.h"main(){inta,b
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 眼鏡行業(yè)銷(xiāo)售工作總結(jié)
- 酒水飲料行業(yè)員工激勵(lì)措施
- 2024年電大電子商務(wù)概論考試綜合手冊(cè)
- 創(chuàng)意設(shè)計(jì)服務(wù)協(xié)議書(shū)(2篇)
- 易錯(cuò)點(diǎn)12 抗日戰(zhàn)爭(zhēng)時(shí)期的主要史實(shí)與時(shí)間-備戰(zhàn)2023年中考?xì)v史考試易錯(cuò)題(原卷版)
- 黃金卷6-【贏在中考·黃金八卷】(解析版)
- DB33T 2195-2019 家庭醫(yī)生簽約服務(wù)居家護(hù)理工作規(guī)范
- 以社區(qū)為基礎(chǔ)之糖尿病個(gè)案管理與疾病管理
- 2022-2023學(xué)年山東省聊城市高一上學(xué)期期末考試地理試題(解析版)
- 阜陽(yáng)熱熔膠項(xiàng)目可行性研究報(bào)告
- 2025年行政執(zhí)法人員執(zhí)法資格考試必考題庫(kù)及答案(共232題)
- 2025年北京探礦工程研究所招聘高校應(yīng)屆畢業(yè)生歷年管理單位筆試遴選500模擬題附帶答案詳解
- 2025-2030年中國(guó)新能源汽車(chē)行業(yè)市場(chǎng)分析報(bào)告
- 網(wǎng)站建設(shè)合同范本8篇
- 宜賓天原5萬(wàn)噸氯化法鈦白粉環(huán)評(píng)報(bào)告
- GB/T 44888-2024政務(wù)服務(wù)大廳智能化建設(shè)指南
- 2024年工廠股權(quán)轉(zhuǎn)讓盡職調(diào)查報(bào)告3篇
- 創(chuàng)意寫(xiě)作與文學(xué)欣賞
- 高空伐樹(shù)作業(yè)施工方案
- 新媒體用戶(hù)行為研究-洞察分析
- 醫(yī)療器械考試題及答案
評(píng)論
0/150
提交評(píng)論