




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第4章 最簡(jiǎn)單的C程序設(shè)計(jì)順序程序設(shè)計(jì) C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)C語(yǔ)言概述賦值語(yǔ)句數(shù)據(jù)輸入輸出的概念及在C語(yǔ)言中的實(shí)現(xiàn)字符數(shù)據(jù)的輸入輸出格式輸入與輸出順序結(jié)構(gòu)程序設(shè)計(jì)舉例4.1 C語(yǔ)句概述C程序結(jié)構(gòu):v一個(gè)C程序可以由多個(gè)源程序文件構(gòu)成 v一個(gè)源程序文件由若干函數(shù)、預(yù)編譯命令及全局變量聲明部分構(gòu)成v函數(shù)包括數(shù)據(jù)定義部分和執(zhí)行部分,執(zhí)行部分是C語(yǔ)言語(yǔ)句,完成對(duì)數(shù)據(jù)的操作 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)源程序文件1預(yù)處理命令全局變量聲明函數(shù)首部局部變量聲明執(zhí)行語(yǔ)句函數(shù)體函數(shù)1函數(shù)n源程序文件2源程序文件nC程序C語(yǔ)句分為5類(lèi)v控制語(yǔ)句:共9種l
2、完成一定的控制功能,這些語(yǔ)句能夠根據(jù)一定的測(cè)試條件決定某些語(yǔ)句是否被執(zhí)行,如分支、循環(huán)、跳轉(zhuǎn)等語(yǔ)句。 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)if( )else (條件語(yǔ)句)for( )while( ) (循環(huán)語(yǔ)句) dowhile( )continue (結(jié)束本次循環(huán)語(yǔ)句) switch (多分支選擇語(yǔ)句)break (終止switch或循環(huán)語(yǔ)句)goto (轉(zhuǎn)向語(yǔ)句) return (從函數(shù)返回語(yǔ)句) C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)v 空語(yǔ)句:只有一個(gè)“ ; ”,什么也不做v 表達(dá)式語(yǔ)句:由表達(dá)式加“ ; ”組成l典型的是賦值語(yǔ)句,由賦值表達(dá)式加分號(hào)構(gòu)
3、成,如:y=x+1是表達(dá)式,而y=x+1;則是賦值語(yǔ)句。實(shí)際上函數(shù)調(diào)用語(yǔ)句也屬于表達(dá)式語(yǔ)句。v 函數(shù)調(diào)用語(yǔ)句:由函數(shù)加“ ; ”組成printf(“This is a C program”); a=3 ; i+ ;for(i=0;i100;i+) ; v復(fù)合語(yǔ)句:l用 括起來(lái)的一組語(yǔ)句,也稱(chēng)作程序塊。l一般形式: C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)int i=0,sum=0;while(i=100) sum=sum+i;i=i+1; l說(shuō)明u復(fù)合語(yǔ)句“ ”后不加分號(hào)u語(yǔ)法上和其它語(yǔ)句相同u復(fù)合語(yǔ)句可嵌套4.2 賦值語(yǔ)句v基本格式: 賦值表達(dá)式 + ;賦值表達(dá)式可以包含在其它
4、表達(dá)式中,而賦值語(yǔ)句不可以。 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)例:if (a=b)0) t=a;不可寫(xiě)為:if (a=b;)0) t=a; C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)表達(dá)式中允許出現(xiàn)運(yùn)算符號(hào)、變量、數(shù)值、函數(shù)序號(hào)語(yǔ)句含義右側(cè)表達(dá)式包括1a=5常量5i=0 x30+255十進(jìn)制、十六進(jìn)制ch=ch- A6變量、字符常量7m=a1+a2數(shù)組變量8x=*px+指針變量、增1運(yùn)算2S=pi*r*r變量、乘號(hào)求圓面積3average=(a+b)/2變量、常數(shù)、括號(hào)求平均數(shù)4x=l*cos(q)變量、函數(shù)求橫坐標(biāo)v另一種形式的賦值語(yǔ)句 = ; C語(yǔ)言程序設(shè)
5、計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)示例含義a+ = 表達(dá)式a= a + (表達(dá)式)a % = 表達(dá)式a= a %(表達(dá)式)a - = 表達(dá)式a= a - (表達(dá)式)a * = 表達(dá)式a= a * (表達(dá)式)a / = 表達(dá)式a= a / (表達(dá)式)我們可以理解為:=;只適合于整型變量v連續(xù)賦值語(yǔ)句 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)int a , b , c ;a=b=c=1 ;連續(xù)賦值語(yǔ)句應(yīng)“從右向左”計(jì)算 a=b=c=1 ;等價(jià)于: a=(b=(c=1) );1. 把常數(shù) 1 賦給變量c,表達(dá)式(c=1) 的值為1;2. 把表達(dá)式(c=1)賦給變量b,表達(dá)式(b
6、=(c=1) )的值為1;3. 將右側(cè)表達(dá)式的值1賦給a , a =1 。步驟: int a=b=c=1 ;4.3 數(shù)據(jù)輸入輸出的概念及在C語(yǔ)言中的實(shí)現(xiàn) C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)v標(biāo)準(zhǔn)輸入輸出函數(shù)putchar 輸出字符, scanf 格式輸入,puts 輸出字符串getchar 輸入字符, printf 格式輸出,gets 輸入字符串v所謂數(shù)據(jù)的輸入輸出是從計(jì)算機(jī)角度出發(fā)的。vC語(yǔ)言本身沒(méi)有I/O語(yǔ)句,所有I/O都由函數(shù)來(lái)實(shí)現(xiàn)。vC語(yǔ)言的標(biāo)準(zhǔn)庫(kù)函數(shù)l由編譯系統(tǒng)提供的一系列函數(shù),以庫(kù)形式存放在系統(tǒng)中,不是C語(yǔ)言文本的組成部分。l庫(kù)函數(shù)已編譯成目標(biāo)文件(.obj),
7、在連接階段才與源程序編譯成的目標(biāo)文件相連接,生成可執(zhí)行文件。l調(diào)用形式:函數(shù)名(參數(shù)表)l注意在調(diào)用C語(yǔ)言庫(kù)函數(shù)時(shí),需要使用編譯預(yù)處理命令#include ,使相應(yīng)的頭文件包含到用戶(hù)源程序中。 #include 或 #include ”stdio.h”常用頭文件: stdio.h 定義輸入輸出函數(shù)string.h 定義字符串操作函數(shù)math.h 定義sin、cos等數(shù)學(xué)函數(shù)4.4 字符數(shù)據(jù)的輸入輸出putchar 函數(shù)(單字符輸出函數(shù)) C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)v輸出一個(gè)字符:格式: putchar( 字符); 或 putchar( 字符變量); 強(qiáng)調(diào):被輸出的單
8、個(gè)字符必須被 括起來(lái)運(yùn)行結(jié)果:BOY /* 例 4.1 putchar(字符)*/#include void main()putchar(B); putchar(O); putchar(Y);/* 例 4.1 putchar(字符變量) */#include void main() char a,b,c; a=B; b=O; c=Y; putchar(a); putchar(b); putchar(c); putchar(n);結(jié)果當(dāng)然還是一樣的!v輸出控制字符 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)/* 例 putchar(控制字符) */#include void main
9、() char a,b; a=O; b=k; putchar(a); putchar(n); putchar(b);運(yùn)行結(jié)果:O k v輸出轉(zhuǎn)義字符/*例 putchar( ) 含有轉(zhuǎn)義符* /#include void main() char a; a=B; putchar(101); putchar(a);運(yùn)行結(jié)果:AB getchar 函數(shù)(單字符輸入函數(shù)) 。 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)格式: getchar( ) ; 強(qiáng)調(diào):輸入單個(gè)字符后,必須按一次回車(chē), 計(jì)算機(jī)才接受輸入的字符。結(jié)果:可以賦給一個(gè)字符變量、整型變量,或作為表達(dá)式的一部分# include
10、 不能少!/*例4.2 */#include void main() char c; c=getchar( ); putchar(c);運(yùn)行結(jié)果:aa4.5 格式輸入與輸出printf函數(shù)(格式輸出函數(shù))vprintf函數(shù)的一般格式 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)格式: printf( 格式控制,輸出表列);l格式控制:用雙引號(hào)括起來(lái)的字符串,包含兩種信息u格式說(shuō)明:%修飾符格式字符,指定輸出格式u普通字符:原樣輸出l輸出表列:要輸出的數(shù)據(jù),可以是變量或表達(dá)式,可以沒(méi)有,多個(gè)時(shí)以“,”分隔)例: printf( “%d %d”,a,b); printf( “a=%d b
11、= %dn”,a,b); C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)/*從最簡(jiǎn)單的學(xué)起 */#include void main() printf(“Hello World !” );運(yùn)行結(jié)果:Hello World!調(diào)用 printf( ) 時(shí)不可以省略# include 命令!格式字符vd格式符:輸出十進(jìn)制整數(shù),有3種用法l%d格式:按十進(jìn)制整型數(shù)據(jù)的實(shí)際長(zhǎng)度輸出 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)/* %d 格式的 printf( ) 函數(shù)使用 */#include void main() int a=3 , b=4; printf(“%d %dn ”,a
12、,b); printf(“a=%d , b=%dn”,a,b); 運(yùn)行結(jié)果:3 4 a=3, b=4格式說(shuō)明決定最終輸出的格式格式說(shuō)明應(yīng)與輸出列表項(xiàng)個(gè)數(shù)相同,順序一致格式說(shuō)明通常用小寫(xiě)字母表示l%md格式:m指定輸出字段的寬度u數(shù)據(jù)位數(shù)小于m,左端補(bǔ)空格,反之按實(shí)際輸出。 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì) int a=123 , b=12345 ; printf(“%4d %4d ”, a , b); l%ld格式:輸出長(zhǎng)整型數(shù)據(jù)u可以用%mld格式指定輸出列寬 long c=135790 printf(“%ld n”, c); printf(“%8ld ”, c); 1
13、35790 135790 123 12345vo格式符:八進(jìn)制輸出整數(shù)l是將內(nèi)存中的二進(jìn)制位整個(gè)按八進(jìn)制輸出,所以輸出值沒(méi)有符號(hào)。l可以指定輸出寬度%mo,長(zhǎng)整型可以用%lo格式輸出。 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì) int a= -1; printf(“%d , %o , %8o , %x ”, a , a , a , a);輸出:-1,37777777777, 37777777777 ,ffffffff11 11 11 11 11 11 11 11-1在內(nèi)存的存放形式(補(bǔ)碼)vx格式符:十六進(jìn)制輸出整數(shù)l同o格式符,無(wú)符號(hào),即無(wú)負(fù)十六進(jìn)制數(shù)。l可以指定輸出寬度%mx
14、 ,長(zhǎng)整型可以用%lx格式輸出。11 11 11 11 11 11 11 11 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)vu格式符:十進(jìn)制輸出unsigned型數(shù)據(jù)lint型可以用%u格式輸出,unsigned型也可以用%d、%o和%x格式輸出。例4.3 無(wú)符號(hào)數(shù)據(jù)的輸出 #include void main() unsigned int a=65535; int b= -2; printf(“a=%d , %o , %x , %un ”,a,a,a,a); printf(“b=%d , %o , %x , %un” ,b,b,b,b); 11 11 11 11 11 11 11
15、 10-2在內(nèi)存的存放形式(補(bǔ)碼)11 11 11 11 11 11 11 11 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)vc格式符:輸出一個(gè)字符l值在0255的整數(shù),也可以用%c形式輸出為字符例4.4 字符數(shù)據(jù)的輸出 #include void main() char c=a; int i=97; printf(“%c , %dn ”,c,c); printf(“%c , %dn” ,i ,i); 運(yùn)行結(jié)果: a , 97 a , 97 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)vs格式符:輸出一個(gè)字符串l有%s,%ms,% -ms,%m.ns,% -m.ns五種用
16、法例4.5 字符串的輸出 #include void main() printf(“%3s , %7.2s , %.4s , %-5.3sn ”, “CHINA”, “CHINA”, “CHINA”, “CHINA”); 運(yùn)行結(jié)果: CHINA , _ _ _ _ _CH , CHIN , CHI _ _m自動(dòng)=n C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)vf格式符:輸出實(shí)數(shù)l%f格式:整數(shù)部分全部輸出,小數(shù)6位??梢杂蟹怯行?shù)字輸出,因?yàn)閱尉扔行?位,雙精度16位。l%m.nf格式:占m列,其中n位小數(shù),左補(bǔ)空格。l% -m.nf格式:右補(bǔ)空格例4.8 %f格式輸出實(shí)數(shù)時(shí)指
17、定小數(shù)位數(shù) #include void main() float f=123.456; printf(“%f %10f %10.2f %.2f %-10.2fn”,f,f,f,f,f); 例4.6 %f格式輸出實(shí)數(shù)時(shí)的有效位數(shù) #include void main() flot x,y; x=111111.111;y=222222.222; printf(“%fn”,x+y); 運(yùn)行結(jié)果: 333333.328125例4.7 %f格式輸出雙精度實(shí)數(shù)時(shí)的有效位數(shù) #include void main() double x,y; a=1111111111111.111111111; b=22222
18、22222222.222222222; printf(“%fn”,x+y); 運(yùn)行結(jié)果: 3333333333333.333010運(yùn)行結(jié)果:123.456001_ _123.456001_ _ _ _ _ _123.46_ _123.46_ _123.46_ _ _ _ C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)ve格式符:指數(shù)形式輸出實(shí)數(shù)l%e格式:不指定m和n,小數(shù)6位,指數(shù)部分共5位, 其中e和指數(shù)符號(hào)各1位,指數(shù)值3位。l%m.ne和% -m.ne格式:m、n、-的含義同前面。 沒(méi)有n時(shí),自動(dòng)=6vg格式符:輸出實(shí)數(shù)l可以自動(dòng)根據(jù)數(shù)值大小選擇 f 或 e 格式(選列少的)l
19、不輸出無(wú)意義的零 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)dx,Xoucse,Efg,G%v 格式字符表十六進(jìn)制無(wú)符號(hào)整數(shù)不帶符號(hào)十進(jìn)制整數(shù)十進(jìn)制整數(shù)指數(shù)形式浮點(diǎn)小數(shù)單一字符字符串八進(jìn)制無(wú)符號(hào)整數(shù)小數(shù)形式浮點(diǎn)小數(shù)e和f中較短一種百分號(hào)本身int a=100;printf ( “%d”,a);int a=255;printf(“%x”,a);int a=8;printf(“%o”,a);int a=100;printf(“%u”,a);char a=65;printf(“%c”,a);printf(“%s”,“ABC”);float a=567.789;printf(“%e”,a)
20、;float a=567.789;printf(“%f”,a);float a=567.789;printf(“%g”,a);printf(“%”);100ff10100AABC5.677890e+002567.789000567.789%scanf 函數(shù)(格式輸入函數(shù)) v一般形式l 功能:按指定格式從鍵盤(pán)讀入數(shù)據(jù),存入地址表指定的存儲(chǔ) 單元中,并按回車(chē)鍵結(jié)束l格式控制:含義同printf函數(shù)l地址表列:變量地址或字符串地址,地址間“,”分隔。l強(qiáng)調(diào):地址列表中每一項(xiàng)必須以取地址運(yùn)算符&開(kāi)頭。 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)格式: scanf(格式控制,地址表
21、列 ) ; 例4.9 用scanf函數(shù)輸入數(shù)據(jù)#include void main() int a , b , c ; scanf(“%d%d%d”,&a,&b,&c) ; printf(“%d, %d, %dn”,a,b,c) ;輸入:3_4_5輸出:3,4,5 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)例 scanf(“%3d%*4d%f”,&k,&f); 輸入 12345678765.43 則 123k, 8765.43f例 scanf(“%2d %*3d %2d”,&a,&b); 輸入 12 345 67 則 12a,
22、 67b例 scanf(“%3c%2c”,&c1,&c2); 輸入 abcde 則 ac1, d c2例 scanf(“%4d%2d%2d”,&yy,&mm,&dd);輸入 19991015 則 1999yy, 10 mm, 15 ddv輸入分隔符的指定l一般以空格、TAB或回車(chē)鍵作為分隔符l輸入數(shù)據(jù)時(shí),遇非法輸入則認(rèn)為數(shù)據(jù)結(jié)束l其它字符做分隔符:格式串中兩個(gè)格式符間有其它字符,則輸入時(shí)對(duì)應(yīng)位置也要有相同的字符。 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)例 scanf(“%d:%d:%d”,&h,&m,&s); 輸入
23、 12:30:45 則12 h, 30 m, 45 s例 scanf(“%d%c%f”,&a,&b,&c); 輸入1234a123o.26 則 1234 a, a b, 123 c4.6 順序結(jié)構(gòu)程序舉例 C語(yǔ)言程序設(shè)計(jì) 第四章第四章 順序程序設(shè)計(jì)順序程序設(shè)計(jì)例4.10 輸入三角形邊長(zhǎng),求面積#include #include void main() float a,b,c,s,area; scanf(%f,%f,%f,&a,&b,&c); s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c); printf(a=%7.2f, b=%7.2f, c=%7.2f, s=%7.2fn,a,b,c,s);
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 聚丙烯腈干法紡絲考核試卷
- 石材開(kāi)采中的水資源管理考核試卷
- 攤點(diǎn)經(jīng)營(yíng)的合法化與規(guī)范化考核試卷
- 液力傳動(dòng)裝置的智能監(jiān)測(cè)技術(shù)考核試卷
- 正統(tǒng)史學(xué)與民間視角:司馬遷與固的史學(xué)對(duì)決及影響
- 2025-2026年醫(yī)院的智能化趨勢(shì)
- 2025小學(xué)圖書(shū)館采購(gòu)合同小學(xué)圖書(shū)館采購(gòu)合同樣本
- 2025智能門(mén)鎖安裝合同模板
- 2025大型設(shè)備運(yùn)輸合同協(xié)議范本
- 2025非住宅小區(qū)房屋買(mǎi)賣(mài)合同范本
- 2025年高考語(yǔ)文模擬作文導(dǎo)寫(xiě)及點(diǎn)評(píng):社會(huì)時(shí)鐘
- 《護(hù)理信息系統(tǒng)》課件
- 單片機(jī)技術(shù)與應(yīng)用知到智慧樹(shù)章節(jié)測(cè)試課后答案2024年秋甘肅省農(nóng)墾中等專(zhuān)業(yè)學(xué)校
- 施工現(xiàn)場(chǎng)平面布置與臨時(shí)設(shè)施、臨時(shí)道路布置方案
- 建筑施工大型機(jī)械設(shè)備安全使用與管理培訓(xùn)
- T-CNPPA 3027-2024 藥品泡罩包裝應(yīng)用指南
- 山東省濰坊市2025屆高考數(shù)學(xué)二模試卷含解析
- 6S管理制度(可參考)-6s管理制度
- 四肢與關(guān)節(jié)檢查
- 產(chǎn)后抑郁癥講課課件
- 低碳生活 主題班會(huì)課件-2篇
評(píng)論
0/150
提交評(píng)論