版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第三章順序結(jié)構(gòu)程序設(shè)計(jì)
3.1C語句分類概述3.2數(shù)據(jù)輸入/輸出3.3程序舉例2/3/2023第4次課教學(xué)目的:了解C語句的種類;
熟記數(shù)據(jù)的輸入及輸出函數(shù)的一般格式;利用輸入輸出函數(shù)編寫簡(jiǎn)單的順序結(jié)構(gòu)程序;重點(diǎn):字符輸入輸出函數(shù)的格式及使用;格式輸入輸出的格式及使用;程序編寫;難點(diǎn):格式輸入輸出函數(shù)的格式及使用教具:ppt課件、屏幕投影教學(xué)過程:?jiǎn)栴}引入、內(nèi)容講解、提問、小結(jié)、作業(yè)2C程序結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。
3.1
C語句分類概述
C語句可以分為以下5類:控制語句
控制語句完成一定的控制功能。C語言只有9種控制語句,它們是:①if()~else~
(條件語句)②switch (多分支選擇語句)③goto (轉(zhuǎn)向語句)④while()~
(循環(huán)語句)3⑤do~while() (循環(huán)語句)⑥for()~
(循環(huán)語句)⑦break (中止執(zhí)行switch或循環(huán)語句)⑧continue (結(jié)束本次循環(huán)語句)⑨return (從函數(shù)返回語句)(2)函數(shù)調(diào)用語句函數(shù)調(diào)用語句就是在函數(shù)調(diào)用的后面加一個(gè)分號(hào)。例如:printf(“ThisisaCstatement.”);函數(shù)調(diào)用語句的一般形式是:
函數(shù)名(參數(shù)列表);
4(3)表達(dá)式語句
在任何一個(gè)C語言合法表達(dá)式的后面加一個(gè)分號(hào)就構(gòu)成了相應(yīng)的表達(dá)式語句。表達(dá)式語句的一般形式為:表達(dá)式;注意:一個(gè)語句必須在最后出現(xiàn)分號(hào),分號(hào)是語句中不可缺少的一部分。例如:
i++;
x+y;
注意空語句在語法上占有一個(gè)語句的位置,而執(zhí)行該語句不做任何操作??照Z句常用于循環(huán)語句中,構(gòu)成空循環(huán)。(4)空語句只有一個(gè)分號(hào)的語句是空語句,其一般形式為:
;
5(5)復(fù)合語句復(fù)合語句是由花括號(hào){}將多條語句括在一起而構(gòu)成的,在語法上相當(dāng)于一條語句。復(fù)合語句的一般形式為:{ [內(nèi)部數(shù)據(jù)描述]
語句1
…
語句n}
在復(fù)合語句的“內(nèi)部數(shù)據(jù)描述”中定義的變量,僅在復(fù)合語句中有效;復(fù)合語句結(jié)束的“}”之后,不需要再加分號(hào)。6例3.1復(fù)合語句main(){ intx=1;
printf("x=%d\n",x); /*輸出x=1*/ { intx=2;
printf("x=%d\n",x); /*輸出x=2*/ }
printf("x=%d\n",x); /*輸出x=1*/}運(yùn)行結(jié)果:x=1x=2x=173.2數(shù)據(jù)輸入/輸出
一、字符輸出函數(shù)putchar()函數(shù)原型:int
putchar(int);函數(shù)功能:向標(biāo)準(zhǔn)輸出設(shè)備(一般為顯示器)輸出一個(gè)字符,并返回輸出字符的ASCII碼值。參數(shù):函數(shù)的參數(shù)可以是字符常量、字符變量或整型變量。#include"stdio.h" main() {inti=65; charch='A';
putchar(i);
putchar('\n');
putchar(ch);}運(yùn)行結(jié)果:
A A8二、字符輸入函數(shù)getchar()函數(shù)原型:int
getchar(void);函數(shù)功能:從標(biāo)準(zhǔn)輸入設(shè)備(一般為鍵盤)輸入一個(gè)字符,函數(shù)的返回值是該字符的ASCII碼值。例如:#include"stdio.h" main() {charch;
inti;
ch=getchar();i=getchar(); putchar(ch);
putchar('\n');
putchar(i);}9三、格式輸出函數(shù)printf()函數(shù)原型:int
printf(char*format[,argument,…]);函數(shù)功能:按規(guī)定格式向輸出設(shè)備(一般為顯示器)輸出數(shù)據(jù),并返回實(shí)際輸出的字符數(shù);若出錯(cuò),則返回負(fù)數(shù)。
printf()函數(shù)使用的一般形式為:
printf(“格式控制字符串”,輸出項(xiàng)表列);說明:1)輸出項(xiàng)表列:列出了要輸出的表達(dá)式(可以是常量、變量、帶有運(yùn)算符的表達(dá)式、函數(shù)返回值等),表達(dá)式可以是0個(gè)、一個(gè)或多個(gè),每個(gè)輸出項(xiàng)之間用逗號(hào)“,”分隔。2)格式控制字符串:必須用英文狀態(tài)下的雙引號(hào)括起來,它的作用是控制輸出項(xiàng)的格式和輸出一些提示信息。103)格式控制字符串內(nèi)容
普通字符:普通字符在輸出時(shí),按原樣輸出,主要用于輸出提示信息。如:printf(“123abcd”);轉(zhuǎn)義字符:轉(zhuǎn)義字符指明特定的操作,如‘\n’表示換行,‘\t’表示水平制表等。如:printf(“ab\ncd”);格式說明:由“%”和格式字符組成,其作用是為輸出的數(shù)據(jù)指定輸出的格式。見下表。11124)修飾符:在格式控制字符串中的%和格式字符之間還可以插入以下幾種附加字符(又稱修飾符)。5)輸出項(xiàng)表列中的輸出項(xiàng)為表達(dá)式。格式控制字符串中的輸出項(xiàng)格式說明與輸出項(xiàng)表列中的輸出項(xiàng)按順序一一對(duì)應(yīng),且輸出項(xiàng)的數(shù)據(jù)類型要與格式字符相容,否則會(huì)導(dǎo)致執(zhí)行錯(cuò)誤。13例3.1整型數(shù)據(jù)的輸出。main(){ inta=12; longb=20040978;
printf("a=%d,a=%6d,a=%-6d,a=%06d\n",a,a,a,a);
printf("%d,%o,%x,%u\n",a,a,a,a);
printf("b=%ld\n",b);}運(yùn)行結(jié)果:a=12,a=12,a=12,a=00001212,14,c,12b=20040978 14例3.2實(shí)型數(shù)據(jù)的輸出。main(){ floatx=1234.567; doubley=1234.5678;
printf("%f,%f\n",x,y); printf("%6.3f,%10.3f\n",x,y); printf("%e\n",x);}運(yùn)行結(jié)果:1234.567000,1234.5678001234.567,1234.5681.234568e+003 15例3.3字符數(shù)據(jù)的輸出。main(){ charc='B';
inti=65;
printf("%c,%d\n",c,c);
printf("%d,%c\n",i,i); printf("%-5c,%5c\n",c,c);}運(yùn)行結(jié)果:B,6665,AB,B 16例3.4
字符串的輸出。main(){printf("computer\n");
printf("%s\n","computer");printf("%5s\n","computer"); printf("%10s\n","computer");printf("%-10s\n","computer");printf("%-10.5s\n","computer");}運(yùn)行結(jié)果:computercomputercomputercomputercomputercompu
17四、格式輸入函數(shù)scanf()1.格式輸入函數(shù)的一般形式函數(shù)原型:int
scanf(char*format[,argument,…]);函數(shù)功能:按規(guī)定格式從鍵盤輸入若干任何類型的數(shù)據(jù)給argument所指的單元。scanf()函數(shù)使用的一般形式為
scanf(“格式控制字符串”,地址表列);2.格式控制字符串格式控制字符串的作用與printf()函數(shù)中的作用相似,它一般由普通字符、輸入數(shù)據(jù)格式說明組成。
(1)格式說明輸入數(shù)據(jù)格式說明以%開始,以一個(gè)格式字符結(jié)束,中間可以插入附加的字符。這里格式說明的作用是控制輸入數(shù)據(jù)的格式。
1819(2)普通字符與printf()函數(shù)的普通字符不同,scanf()格式控制字符串中的普通字符是不顯示的,而是規(guī)定了輸入時(shí)必須輸入的字符。例如:scanf("a=%d",&a);若要將30輸入到a變量中,應(yīng)按下列格式輸入:a=30scanf("%d,%f",&a,&x);要將10送給a,2.5送給x,則對(duì)應(yīng)的輸入格式為:10,2.5
203.地址表列地址表列是由若干個(gè)地址組成的列表,可以是變量的地址、字符串的首地址、指針變量等,各地址間用逗號(hào)“,”隔開。對(duì)于變量的輸入,應(yīng)為:scanf(“%d,%d”,&a,&b);scanf("%d",&a); /*從鍵盤輸入數(shù)據(jù),存入a變量的內(nèi)存地址中*/
printf("%d",a); /*將變量a的值輸出*/注意214.使用scanf()函數(shù)應(yīng)注意的問題
若用一個(gè)scanf()函數(shù)輸入多個(gè)數(shù)據(jù),且格式說明之間沒有任何普通字符例如:scanf("%d%d",&a,&b);執(zhí)行該語句時(shí),應(yīng)以空格、回車或tab鍵作為數(shù)據(jù)輸入的結(jié)束。如
510或
5
10
或5tab鍵
10當(dāng)scanf()函數(shù)指定輸入數(shù)據(jù)所占的寬度時(shí),將自動(dòng)按指定寬度來截取數(shù)據(jù)。例如:scanf("%2d%3d",&a,&b);若輸入為123456789則函數(shù)截取12存入地址&a中,截取345存入地址&b中。22(2)輸入實(shí)型數(shù)時(shí)不能規(guī)定精度用scanf()函數(shù)輸入實(shí)型數(shù)時(shí),可以指定寬度,但不能規(guī)定精度。例如:scanf("%4f%5f",&x,&y);√若輸入12.345.6789↙則12.3送給變量x,45.67送給變量y。而語句scanf("%10.2f",&x);?23(3)用“%c”格式如何輸入字符在用“%c”格式輸入字符時(shí),空格字符和轉(zhuǎn)義字符都作為有效字符輸入。例如:scanf("%c%c%c",&a,&b,&c);若輸入
abc則字符'a'送給a,空格送給b,字符'b'送給c,若輸入abc則字符'a'送給a,字符'b'送給b,字符'c'送給c。思考inta,b;charch;
scanf("%d%c%d",&a,&ch,&b);若想將12、a、34分別輸入到a,ch,b中,應(yīng)如何輸入?24(4)附加字符“*”的用法格式說明中的附加字符“*”為輸入賦值抑制字符,表示該格式說明要求輸入數(shù)據(jù),但不賦值。例如:scanf("%3d%*2d%f",&a,&x);若輸入為12345678.9則123送給a,678.9送給x,而45不賦給任何變量。253.3程序舉例一個(gè)順序結(jié)構(gòu)程序,一般包括以下兩個(gè)部分。1.編譯預(yù)處理命令在程序的編寫過程中,若要使用標(biāo)準(zhǔn)庫函數(shù),需要用編譯預(yù)處理命令#include,將相應(yīng)的頭文件包含進(jìn)來。若程序中只使用scanf()函數(shù)和printf()函數(shù)可省略不寫#include"stdio.h"。2.主函數(shù)在主函數(shù)體中,包含著順序執(zhí)行的各個(gè)語句。主要有以下幾個(gè)部分:(1)變量類型說明;(2)給變量提供數(shù)據(jù);(3)按題目要求進(jìn)行運(yùn)算;(4)輸出運(yùn)算結(jié)果。26eg3.6從鍵盤上輸入一個(gè)小寫字母,輸出對(duì)應(yīng)的大寫字母。定義字符型變量c;輸入小寫字母存入變量c;轉(zhuǎn)換成大寫c=c-32;輸出變量c。算法分析參考程序:#include"stdio.h"main(){charc;
printf("Inputalowercaseletter:");c=getchar(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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è)保安工作總結(jié)
- 軍訓(xùn)心得體會(huì)15篇
- 教育的項(xiàng)目計(jì)劃書精彩3篇
- 建筑工程施工合同范文集合8篇
- 2023年-2024年崗位安全教育培訓(xùn)試題及參考答案【培優(yōu)】
- 文學(xué)作品意識(shí)形態(tài)解讀-洞察分析
- 宇宙常數(shù)與宇宙結(jié)構(gòu)形成-洞察分析
- 遺傳進(jìn)化機(jī)制探究-洞察分析
- 2023-2024學(xué)年廣東省深圳高級(jí)中學(xué)七年級(jí)(上)期末歷史試卷
- 2024年房屋租賃補(bǔ)充協(xié)議參考模板(四篇)
- 婦科宮腔鏡技術(shù)風(fēng)險(xiǎn)評(píng)估預(yù)案
- 2024年全國(guó)教育大會(huì)精神全文課件
- 寧夏銀川市第一中學(xué)2025屆數(shù)學(xué)高一上期末質(zhì)量檢測(cè)模擬試題含解析
- 廣東省深圳市2023-2024學(xué)年三年級(jí)上學(xué)期英語期中試卷(含答案)
- 《4.3.1等比數(shù)列的概念》說課稿
- 2025年高考英語一輪復(fù)習(xí) 詞性轉(zhuǎn)換訓(xùn)練(含答案)
- 睡眠醫(yī)學(xué)課件 睡眠呼吸暫停綜合征
- 合肥長(zhǎng)鑫存儲(chǔ)在線測(cè)評(píng)題2024
- 山東省濟(jì)南市2023-2024學(xué)年高一年級(jí)上冊(cè)1月期末考試英語試題(含解析)
評(píng)論
0/150
提交評(píng)論