




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
C語言程序設計
第1章概述什么是計算機計算機是一種工具,計算機的所有“智能”都是人類賦予的。人們必須詳詳細細地告訴計算機“做什么”、“怎么做”,這種指揮計算機工作的過程就是——計算機程序。沒有程序,計算機就是一堆廢銅爛鐵,什么也不能做。計算機程序程序就是一系列的有序步驟。
洗菜
切菜
炒菜
出鍋做菜的步驟——
計算機程序就是人類指揮計算機工作的有序步驟。
計算機程序是由一條條有序指令組成的,每條指令指揮計算機完成一個操作。指令指令指令指令何謂編寫程序?打開微信群;查看第一條聊天信息;if(本條信息是紅包){
點開本條信息;點“開”按鈕;}
else{
略過此信息;}查看下一條信息,重復此過程;獲得目的地坐標;獲得當前位置坐標;搜索兩點最短路徑;將路徑用顏色標注在地圖上;計算兩點距離;語音播報:導航開始,沿當前位置向西南方向直行,全程大約800米…獲得當前位置坐標;if(正沿路線前行)
前方大約有200米直行道路…;if(偏離路線)正在為您重新規劃路線…;if(計算距離小于50米)目的地在您右側,本次導航結束;自動微信搶紅包程序地圖導航程序編寫程序和計算機語言編寫程序(編程)就是人們針對某個問題,事先設計操作步驟,并將操作步驟“告訴”計算機,“指揮”計算機如何工作的過程。如何將怎么做“告訴”計算機呢?計算機語言編寫程序要依照某種計算機語言,即要通過計算機能聽懂的語言來告訴它怎么做。計算機語言人類的語言有很多種,計算機的語言也有很多種。
機器語言MOVAX,XMOVDX,X+2ADDAX,YADCDX,Y+2……匯編語言高級語言W=X+Y+24-Z;最接近人類的思維習慣
僅由0和1組成(二進制代碼)英文助記符但只能用與機器語言相對應的指令,難度很高高級語言又分很多種,如VisualBasic、Java、Fortran、Pascal、C
等。
計算機唯一能懂翻譯計算機唯一能懂機器語言程序的編譯和鏈接main(){ inta,b,c; a=10; b=20; c=a+b; printf("%d",c);}main(){
inta,b,c; a=10; b=20; c=a+b; printf("%d",c);}C程序的翻譯過程C語言源程序xxx.c
文本文件ASCII碼文件
人類可讀懂計算機不能直接運行
xxx.obj可執行程序xxx.exe編譯(compile)鏈接(link)二進制文件未包含庫的機器語言程序人類不可讀懂計算機不能直接運行
二進制文件機器語言程序人類不可讀懂計算機可以直接運行
目標程序編譯系統MicrosoftVisualC++main(){ inta,b,c; a=10; b=20; c=a+b; printf("%d",c);}可執行程序編譯(compile)鏈接(link)目標程序編譯和鏈接的過程是由誰來完成的呢?這是由編譯程序(或稱編譯器、編譯系統)完成的——MicrosoftVisualC++。MicrosoftVisualC++不僅可進行編譯和鏈接,同時它還有編輯、修改、調試和運行程序等功能,也稱集成開發環境。C語言源程序C語言程序的結構C程序的結構函數1(參數x){
語句;}main(){
語句;
語句;
語句;}函數2(參數x,參數y){
語句;
語句;}函數1函數2main函數……C程序語句1語句2語句3main函數預處理命令段落句子一篇文章main函數必須有,且只能有一個;main函數可位于程序函數間的任意位置;main函數是程序的入口和出口;其他函數是由main函數調用執行的函數1(參數x){
語句;}main(){
語句;
語句;
語句;}函數2(參數x,參數y){
語句;
語句;}main函數main函數主函數
錯誤的執行流程main必須小寫;()不能省略。預處理命令正確的執行流程#include<stdio.h>main(){
inta,b,c; a=10; b=20; c=a+b; printf("%d",c);}簡單C程序實例預處理命令main函數在學習之前,你能看出該程序的輸出結果嗎?程序的輸出結果為:30
C程序的語句#include<stdio.h>main(){
inta,b,c; a=10; b=20; c=a+b; printf("%d",c);}每條語句“告訴”計算機要執行的一個操作(命令)每條語句結尾必須有一個“;”#include<stdio.h>main(){
inta,b,c;
a=10;b=20; c=a+b; printf("%d",c);}多條語句可寫在一行中,一條語句也可寫在多行#include<stdio.h>main(){
inta,b,c; a=10;
b=
20; c=a+b; printf("%d",c);}任何變量在使用前必須先定義
C程序格式自由,對程序中的空格、換行沒有過分講究但是堅持適當的縮進、空格、換行能使程序清晰易讀,是我們提倡的#include<stdio.h>main(){
inta,b,c; a=10; b=20; c=a+b; printf("%d",c);}#include<stdio.h>main(){inta,b,c; a=10; b=20;c=a+b;printf("%d",c);}有些位置不能隨便添加空格,如在單詞之間。如main()寫作main()顯然是錯誤的。程序的注釋注釋main(){
inta,b,c; a=10; b=20; c=a+b; printf("%d",c);}/*本程序是計算一道小學生數學題的程序*/main(){
inta,b,c; a=10; /*小明有10支鉛筆*/ b=20; /*小紅有20支鉛筆*/ c=a+b; /*求二人共有多少鉛筆*/ printf("%d",c);}允許在程序中寫語句外的任意內容,這些內容不是程序的一部分,不能被執行,稱注釋。/*到*/之間(可多行)注釋:在運行程序時計算機會將/*到*/之間的內容全部忽略,有無注釋對程序的運行沒有絲毫影響。注釋不能嵌套:c=a+b; /*求和(位于“/*”和“*/”之間的部分為注釋)*/此處不是注釋,為非法語句此處為注釋
標識符、常量和變量標識符的命名規則標識符名很簡單,字母數字下劃線。字母區分大小寫,非數打頭非關鍵。yes? 有?234a 數字開頭yes/no 有/w.a 有.x-y 有-π 希臘字母β 希臘字母int 是關鍵字x1
不能用角標非法的標識符
a x sum nve ab1a1b2c3 _to file_5_2 Int INT B3 b3合法的標識符
盡量做到
見名知意表示長度的變量名用length
表示面積的變量名用area表示分數的變量名用score
或chengji
C語言中的關鍵字:autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile
常量#include<stdio.h>main(){
inta,b,c; a=10; b=20; c=a+b; printf("%d",c);}如10、20,它們在程序運行過程中值不會變化,故稱常量。常量就是直接寫在程序里的數據值。
不止限于數值型的數據值,以后要學習的許多非數值型的數據值,如: 字符'a'、'b'、 字符串"hello"、
等,這些也都是常量。符號常量#definem100常量還包括用#define定義的符號常量。
定義了常量m,則程序段:a=m-10;b=m+8;printf("%d",m);其中的m和100是一個意思a為90,b為108,輸出100用#define命令可定義常量,因有#define的定義,m是常量,不是變量
使用常量的優點:提高可讀性,方便程序的維護修改。a=100-10;b=100+8;printf("%d",100);而以上程序需逐條修改100為200。很麻煩!
如果希望用200,只要修改定義的一處就可以了。200200200其中的m和200是一個意思a為190,b為208,輸出200m=200;200變量#include<stdio.h>main(){
inta,b,c; a=10; b=20; c=a+b; printf("%d",c);}程序例中的a、b、c都是變量。什么是變量呢?
a
10b
20c
30變量——盒子,可保存數據盒子的名字——變量名a、b、c
盒子里的內容——變量的值10、20、30
同一個盒子可先后存放不同的東西,變量的值也可在程序運行過程中發生變化,故稱變量。變量實際是內存中的一塊存儲區域,存儲區域的名稱就是變量名,所存儲的內容就是變量的值。變量的初始化(定義時賦初值)intsum=0; 變量定義時賦初值,sum立即為確定的值0intwidth,height; 一次定義多個變量,變量的值都不確定intprice,num=3; 僅num值為3,price的值不確定intsize=5+4; size值為9,可用表達式為變量賦初值intx=y=z=5;
intx=5,y=5,z=5;
在定義中不允許連續賦初值
inta,intb;
如果用逗號,后面不要再寫int,直接寫變量名
inta;intb;如果后面也寫int應用分號,這實際是兩條語句
C語言程序上機指導進制轉換 1 0 1 1 1 0 1 1+) 0 0 1 0二進制
二進制
對應十進制
0
0 1
1 10
2 11
3 100
4 …
…計算機只能直接識別二進制二進制:0、1組成,逢二進一
十進制轉換為二進制13(13)10=(
)2812411011101將十進制數看作重物的重量用8、4、2、1四種重量的砝碼去“湊”出重物的重量。如果選用了一種砝碼就用1表示,未選用就用0表示,依次寫出1或0就是對應的二進制。(降冪法)8124十進制轉換為二進制8(8)10=(
)21000(13)10=(
)211011000將十進制數看作重物的重量用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論