




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第3章順序結構程序設計Hi,everyone!3.1
C程序的基本結構及C語句的種類3.2數(shù)據(jù)輸入/輸出的實現(xiàn)3.3標準輸出函數(shù)——printf函數(shù)3.4標準輸入函數(shù)——scanf函數(shù)3.5字符輸入/輸出函數(shù)3.6順序結構程序設計舉例第3章順序結構程序設計3.1C程序的基本結構及C語句的種類
順序結構:是由若干條按先后順序執(zhí)行的語句構成的。選擇結構:是由一個或多個條件來確定所要執(zhí)行的語句,又稱為分支結構。根據(jù)實際情況可分為二支或多支。循環(huán)結構:是當滿足某種循環(huán)條件時反復執(zhí)行某段程序,直到不滿足循環(huán)條件為止。3.1.1結構化程序的三種基本結構1.表達式語句和空語句表達式語句是由表達式加分號(;)構造的一種簡單語句。任何一種合法的表達式加分號都可構成表達式語句。例如:inta=1,b=2;a*b+5; (算術表達式語句)a!=b*2; (關系表達式語句)!b||a&&b;(邏輯表達式語句)b=a-2; (賦值表達式語句)b<a?a:b; (條件表達式語句)a=5,b=7,a+b;(逗號表達式語句)空語句是一種只有分號而無表達式的特殊語句。空語句的功能是不做任何操作,它只是形式上的語句,它是C語句中最簡單的語句。3.1.2C語句的種類3.1.2C語句的種類2.復合語句復合語句是由兩條或兩條以上的語句用花括號({})括起來的語句序列。復合語句是相對于單條語句而言的。復合語句通??梢猿霈F(xiàn)在允許單語句出現(xiàn)的地方,復合語句可以等價于一條語句。{a=a+b;a=a*15;b=10;}3.分支語句分支語句可以實現(xiàn)選擇結構,C語言提供了兩種分支語句,一種是條件語句,另一種是開關語句,使用它們可以實現(xiàn)多種分支結構。3.1.2C語句的種類4.循環(huán)語句循環(huán)語句可以實現(xiàn)循環(huán)結構。C語言提供了三種循環(huán)語句:while循環(huán)語句、do-while循環(huán)語句和for循環(huán)語句。5.轉向語句執(zhí)行轉向語句時,系統(tǒng)轉去執(zhí)行指定的語句。C語言提供的轉向語句有推出語句break,繼續(xù)語句continue,無條件轉向語句goto。使用這些語句將給程序增加靈活性和方便性。3.2數(shù)據(jù)輸入輸出的實現(xiàn)C語言的輸入輸出是由輸入和輸出函數(shù)實現(xiàn)的,如printf和scanf函數(shù),putchar和getchar函數(shù),gets和puts函數(shù)。C函數(shù)庫是由c語言自帶的,并已編譯成目標文件。連接時會與源程序編譯得到的目標文件相連接,生成目標程序。使用C函數(shù)庫時,用預編譯命令#include將相關的“頭文件”包括到用戶的源文件中,放在程序的開頭。
#include<stdio.h>
或#include“stdio.h”標準輸入輸出庫函數(shù)的頭文件是“stdio.h”3.3標準輸出函數(shù)——printf函數(shù)printf函數(shù)(格式輸出函數(shù)):按指定的格式向輸出設備輸出指定的數(shù)據(jù),可以是若干個任意類型的數(shù)據(jù)。1.printf的一般格式
printf(“格式控制字符串”,輸出項列表);
格式控制字符串總是由%和格式字符串構成并用雙引號括起來,它指定了與其對應的輸出表列項的輸出格式,如數(shù)據(jù)類型、形式、長度、小數(shù)位數(shù)。形式為:
%格式字符串例如,“%d”,“%0.3f”,“%ld”
非格式字符串在輸出時原樣照印,在顯示中起提示作用。3.3標準輸出函數(shù)——printf函數(shù)1.printf的一般格式
printf(“格式控制字符串”,輸出項列表);輸出表列中給出了各個輸出項,要求格式字符和各輸出項在數(shù)量、類型上應該一一對應。例如:
printf(“%d%d”,a,b); 1066printf(“a=%d,b=%c”,a,b);a=10,b=B2.Printf常用格式字符串格式字符形式:%[標志][輸出最小寬度][.精度][長度]類型例:%d%3c%-10.2f%5ld
方括號[]中的項為可選項。對不同類型的數(shù)據(jù)用不同的格式字符。格式字符形式:%[標志][輸出最小寬度][.精度][長度]類型(1)類型類型字符用以表示輸出數(shù)據(jù)的類型,其格式符和意義如下:
格式字符 字符意義
d以十進制形式輸出帶符號整數(shù)(正數(shù)不輸出符號)
o以八進制形式輸出無符號整數(shù)(不輸出前綴O)
x以十六進制形式輸出無符號整數(shù)(不輸出前綴OX)
u以十進制形式輸出無符號整數(shù)
f以小數(shù)形式輸出單、雙精度實數(shù)
e以指數(shù)形式輸出單、雙精度實數(shù)
g以%f%e中較短的輸出寬度輸出單、雙精度實數(shù)
c輸出單個字符
s輸出字符串
3.3printf函數(shù)常用格式字符#include<stdio.h>voidmain(){printf("%d,%ld\n",10,10);printf("%o,%x\n",10,10);printf("%#o,%#x\n",10,10);printf("%f,%lf\n",12.5,12.5);printf("%g,%e\n",12.5,12.5);printf("1234567890\n");printf("-----------------\n");printf("%s,%c,%d\n","abcd",'A','A');}格式字符形式:%[標志][輸出最小寬度][.精度][長度]類型(2)標志
標志字符標志意義
-
結果左對齊,右邊填空格
+
輸出符號
#
對c,s,d,u類無影響;對o類,在輸出時加前綴0;對x類,在輸出時加前綴0x;對e,g,f類當結果有小數(shù)時才給出小數(shù)點(3)輸出最小寬度
用十進制整數(shù)來表示輸出的最少位數(shù)。若實際位數(shù)多于定義的寬度,則按實際位數(shù)輸出,若實際位數(shù)少于定義的寬度則補以空格或0。
3.3printf函數(shù)常用格式字符格式字符形式:%[標志][輸出最小寬度][.精度][長度]類型(4)精度
精度格式符以“.”開頭,后跟十進制整數(shù)。本項的意義是:如果輸出數(shù)字,則表示小數(shù)的位數(shù);如果輸出的是字符,則表示輸出字符的個數(shù);若實際位數(shù)大于所定義的精度數(shù),則截去超過的部分。
(5)長度
長度格式符為h,l兩種,h表示按短整型量輸出,l表示按長整型量輸出。如:%d,%5d,%o,%x,%f,%lf,%5.4lf,%e,%c,%8c
3.3printf函數(shù)常用格式字符例3.1printf函數(shù)應用舉例#include<stdio.h>voidmain(){printf("a=%-3d,a=%+3d\n",2+3,5);printf("%6.3s,%3s\n","abcde","KKK");printf("%-6.3s,%3s\n","abcde","KKK");printf("%.3s,%3s\n","abcde","KKK");printf("%-.3s,%3s\n","abcde","KKK");printf("x=%4.2f%%\n",0.5);}1.格式控制字符串中,格式說明與輸出項從左到右在類型上必須一一對應匹配。如不匹配,將使數(shù)據(jù)不能正確輸出,且此時系統(tǒng)并不報錯。特別要注意長整型數(shù)據(jù)輸出時,一定要使用%ld格式說明,不能遺漏字母“l(fā)”。2.在格式控制字符串中,格式說明與輸出項的個數(shù)應該相同。如果格式說明的個數(shù)少于輸出項的個數(shù),多余的輸出項不予輸出;如果格式說明的個數(shù)多于輸出項的個數(shù),則對于多余的格式將輸出不定值(或0值)。3.在格式控制字符串中,除了合法的格式說明外,可以包含任意的合法字符(包括轉義字符),這些字符在輸出時將“原樣輸出”。3.調(diào)用Printf函數(shù)時注意事項4.printf中各輸出表達式的求值是從右向左進行的。例如,有以下語句:inti=0;printf("%d,%d,%d\n",i+=3,i+=2,i+=1);i先賦值為0,由于printf中各輸出表達式的求值是從右向左進行,所以輸出為:6,3,13.調(diào)用Printf函數(shù)時注意事項scanf函數(shù)(格式輸入函數(shù)):按用戶指定的格式從鍵盤上把數(shù)據(jù)輸入到指定的變量之中。格式:scanf(“格式控制字符串”,輸入項地址列表)“格式控制字符串”通常只包含格式轉換說明符,含義與printf類似。輸入項地址列表中給出各變量的地址。地址是由地址運算符“&”后跟變量名組成的。3.4標準輸入函數(shù)——scanf函數(shù)3.4標準輸入函數(shù)——scanf函數(shù)格式:scanf(“格式控制字符串”,輸入項地址列表)例如:scanf("%d%c%f",&x,&y,&z);voidmain(){inta,b,c;
printf("inputa,b,c:\n");scanf("%d%d%d",&a,&b,&c);
printf("a=%d,b=%d,c=%d",a,b,c);
}
輸入數(shù)據(jù)時,兩個數(shù)之間以一個或多個空格間隔,也可以用回車鍵Enter、跳格鍵Tab。(1)scanf函數(shù)中“格式控制”后面應是變量地址,而不僅是變量。(2)如果“格式控制”字符串中還有其它字符,輸入時應原樣輸入。如語句:scanf(“a=%d,b=%d”,&a,&b);輸入:a=12,b=23(3)在用“%c”格式輸入字符時,空格字符和“轉義字符”都作為有效字符輸入。
scanf(“%c%c%c”,&c1,&c2,&c3);abc /*實際上只輸入了ab(a空格b)*/調(diào)用scanf函數(shù)時注意事項
(4)在輸入數(shù)據(jù)時,遇以下情況該數(shù)據(jù)認為結束:①空格、回車或“跳格”Tab。②遇寬度結束,如“%3d”,只取3列。③遇非法輸入。例:scanf(“%d%c%f”,&a,&b,&c);輸入:1234a123o.26結果:1234→a‘a(chǎn)’→b123→c(5)”*”格式符表示:本輸入項在讀入后不賦給相應的變量。例:scanf(“%d%3d,%c,%*d,%f”,&a,&b,&c,&d,&e);調(diào)用scanf函數(shù)時注意事項3.5字符輸入/輸出函數(shù)例:#include<stdio.h>voidmain(){chara,b,c;a=’B’;b=’O’;c=’Y’;putchar(a);putchar(b);putchar(c);putchar(‘\101’);putchar(‘\’’);putchar(‘\015’);}1.
putchar函數(shù)(字符輸出函數(shù))
功能:在顯示器上輸出一個字符。一般形式:putchar(參數(shù));
參數(shù)可是字符型或整型變量、常量(轉義符)輸出結果:BOYA’回車例:#include<stdio.h>voidmain(){charc;
c=getchar();putchar(c);putchar(getchar());}2.
getchar函數(shù)(字符輸入函數(shù))功能:從鍵盤輸入一個字符。形式:getchar();
/*無參數(shù)*/用法:構成賦值語句,將輸入的字符賦給一個變量??蓪etchar()函數(shù)置于程序中,實現(xiàn)暫停功能。如:..getchar();..3.6順序結構程序設計舉例#include<stdio.h>voidmain(){floatC,F;printf(“請輸入一個華氏溫度\n”);scanf(“%f”,&F);C=(5.0/9)*(F-32);printf(“華氏溫度%f轉換為攝氏溫度為:%.2f\n”,F,C);}不用5.0而用5會使結果為0,為什么?例1
輸入一個華氏溫度,輸出攝氏溫度。公式為:C=(5/9)(F-32)3.6順序結構程序設計舉例#include<stdio.h>voidmain(){charc1,c2;c1=getchar();printf("%c,%d\n",c1,c1);c2=c1+32;printf("%c,%d\n",c2,c2);}例3.6
由鍵盤輸入一個大寫字符,要求改用小寫字符輸出。#include“stdio.h”voidmain(){inta,b,temp;printf(“Inputaandb:”);scanf(“%d%d”,&a,&b);printf(“olda=%d,b=%d\n”,a,b);temp=a;a=b;b=temp;printf(“newa=%d,b=%d\n”,a,b);}運行結果:Inputaandb:69回車Olda=6,b=9Newa=9,b=6互換的另一種方法:a=a+b;b=a-b;a=a-b;例
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 技術合同涉稅政策
- 電商行業(yè)買賣合同
- 辦公樓裝飾施工方案
- 長期供貨合同的協(xié)議書
- 員工考勤記錄表格系列
- 設備采購預算表格化統(tǒng)計分析報告
- 合同執(zhí)行進展一覽表
- 宿州拆煙囪施工方案
- 兒童廁所改造施工方案
- 別墅背景墻大理石施工方案
- 《中國最美的地方》課件
- 新產(chǎn)品需求評估申請表
- 專題14 歐姆定律及其應用(4大模塊知識清單+4個易混易錯+5種方法技巧+典例真題解析)
- 2024年10月自考15040習概試題及答案含評分參考
- TSGD7002-2023-壓力管道元件型式試驗規(guī)則
- 賽事運營創(chuàng)新模式
- 新生兒科、兒科《新生兒窒息復蘇》理論考試試題
- 信息檢索課件 第2章 文獻檢索方法(1)-2
- 輸變電工程施工質量驗收統(tǒng)一表式(線路工程)
- 2024年實驗小學大隊委競選筆試試題題庫
- 智鼎在線測評題庫28題
評論
0/150
提交評論