簡單C語言程序設計_第1頁
簡單C語言程序設計_第2頁
簡單C語言程序設計_第3頁
簡單C語言程序設計_第4頁
簡單C語言程序設計_第5頁
已閱讀5頁,還剩69頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 簡單簡單c程序設計程序設計 回顧 程序是為執行一項任務而編寫的有序指令集 c程序的特點 c語言的組成 c程序的編譯和運行過程 編譯器將源程序轉換成機器能理解的程序 連接器用于連接相關的目標文件以生成可執行程序本章要點c語言的數據類型、運算符語言的數據類型、運算符c語言的常量和變量語言的常量和變量c語言的表達式語言的表達式常用數學函數常用數學函數#include int main( ) int celsius, fahr; fahr=100; celsius=5*(fahr-32)/9; printf(“fahr=%d, celsius=%dn“, fahr, celsius); fahr=1

2、00, celsius=372.1 溫度轉換例例2.1 求華氏溫度求華氏溫度100f對應的攝氏溫度對應的攝氏溫度2.1.1 內存 內存可以理解為一排井然有序的小開關,每個開關有兩個狀態:開表示1,斷表示0,所以每個開關表示一個二進制數,0或1,稱為一個位(bit). 為管理方便,8個位為一組,稱為一個字節(byte) 然后為所有字節從0開始編號,這個編號稱為字節的地址 2的10次方( 1024)個字節稱為1k 2的20次方( 1048576)個字節稱為1m 2的30次方( 1073741824)個字節稱為1g2.1.2 變量int celsius, fahr; celsius = 5 * (f

3、ahr - 32) / 9;v變量是計算機里一塊變量是計算機里一塊特定的內存特定的內存,它由一個或多個連續的,它由一個或多個連續的字節組成。字節組成。v每個變量都有一個名稱,表示內存中的這個位置,以便通每個變量都有一個名稱,表示內存中的這個位置,以便通過變量名過變量名讀取讀取該位置的數據或該位置的數據或存儲存儲一個新數值。一個新數值。v變量的值不是固定的,隨時都可以改變,且次數不限。變量的值不是固定的,隨時都可以改變,且次數不限。編寫程序時,通常使用變量來存儲數據,方便后面使用這個數據或者修改這個數據的值。變量程序內存存儲 fahr計算5 * (fahr - 32) / 9將值存儲為celsi

4、us10032輸出fahr和celsius內存變量用來存儲數據,系統需要知道每個變量要存儲什么類型的數據,然后為每個變量分配一塊足夠大的內存空間,用來該類型的數據2.1.3 數據類型數據屬于不同類別africathe quick brown foxtrue數據 非數值數值整型非整型9002.129999/12/20032.175123jackie chanchar數據類型非數值數值整型intshort intlong intdoublefloat非整型整型變量類型 short int 2個字節個字節-2-15至215-1 , -32768 至 +32767整數變量還分為幾種不同的類型,以存儲不

5、同范圍的整數 int 4個字節個字節-2-31至231-1,-2147438648 至 + 2147438647 long int 4個字節個字節-2-31至至231-1,-2147438648至至+2147438647_int64long long int8個字節個字節-2-63 至 263-11、數據類型所占字節數,取決于所使用的編譯器 2、short int 可以簡寫為short, long int可以簡寫為可以簡寫為long3、不同編譯器對64位的支持不同,在vc中只支持_int64,gcc/g+支持 long long, windows平臺的gcc/g+也支持_int64無符號的整數

6、類型 unsigned short int 2個字節個字節0至216-1 , 0 至 +65535 unsigned int 4個字節個字節0至232-1, 0 至 + 4294967295 unsigned long int 4個字節個字節0至232-1, 0 至 + 4294967295unsigned _int64unsigned long long int8個字節個字節0至264-1,0至至18445744073709551615當處理不能為負的數據時,可以使用無符號類型,所占內存與有符號型相同,但對正數的表示范圍比有符號型大一倍2.1.4 變量的聲明和使用 聲明變量: int cel

7、sius, fahr; 定義時初始化變量: int celsius, fahr=100; 定義后初始化變量: fahr=100; 。 給變量賦值,除了給一個直接的值以外,還可以通過計算獲得如: celsius=5*(fahr-32)/9;變量的命名規則在 c 語言中,變量命名需要遵循一定的規則有效名稱有效名稱principalcost_pricemarks_3lastnamecity無效名稱無效名稱123ratecurrency$discount%zip code 變量的命名規則: 變量名可以由字母、數字和 _(下劃線)組合而成 變量名不能包含除 _ 以外的任何特殊字符,如:%、# 、逗號、空

8、格等 變量名必須以字母或 _(下劃線)開頭 變量名不能包含空白字符(換行符、空格和制表符稱為空白字符) c 語言中的某些詞(例如 int 和 float 等)稱為保留字,具有特殊意義,不能用作變量名 c 語言區分大小寫,因此變量 price 與變量 price 是兩個不同的變量2.1.5 賦值運算 賦值運算符 = 賦值表達式:用 = 將一個變量和一個表達式連接起來的式子 變量 表達式例如:fahr = 100; celsius = 5 * (fahr - 32) / 9; 計算計算賦值運算符右側表達式的值賦值運算符右側表達式的值 將賦值運算符右側表達式的值將賦值運算符右側表達式的值賦給賦給左側

9、的變量左側的變量 的左邊必須是一個變量的左邊必須是一個變量分析錯誤程序/求兩個整數的和#includeint main() int a, b, sum; sum=a+b; a=3; b=5; printf(%dn,sum); return 0; 該程序為何得不到正確結果?錯誤原因是受數學思維的影響,吳以為sum=a+b;是建立sum和a+b之間的一個等量關系 賦值運算“=”表示的是一個動作:先計算表達式的值,再存入賦值號左邊的變量中,既不表示數學中的等量代換,也不表示相等關系執行sum=a+b;語句是,因為a和b中的值都不確定,是隨機的,所以其和也是隨機的,然后把這個數賦給了sum該程序為何得

10、不到正確結果?2.1.6 格式化輸出函數printfprintf( %d , count);printf將一些信息按照指定的格式送到標準輸出(顯示器)count輸出參數表:待輸出的數據,可以是常量、變量或表達式格式:printf(“格式控制串格式控制串”,輸出輸出參數參數表表) %d 格式字符串:指定數據的輸出格式輸出格式printf(“fahr=%d , celsius=%dn, fahr, celsius);普通字符,原樣輸出%開頭的是轉換說明,對應與后面一個輸出參數,對應參數將被轉換成指定格式后在該位置輸出輸出結果:fahr=100, celsius=37輸出參數列表n是轉意字符,用來輸

11、出一個回車轉換字符串printf( %d , count);%d 轉換字符串說 明%d將參數按整數形式轉換輸出,對應參數應是將參數按整數形式轉換輸出,對應參數應是int 類型類型%ld將參數按長整數形式轉換輸出將參數按長整數形式轉換輸出,對應參數是對應參數是long型型%c輸出一個字符,對應參數應該是一個字符輸出一個字符,對應參數應該是一個字符%s輸出一個字符串,對應參數應該是一個字符串輸出一個字符串,對應參數應該是一個字符串%f將參數按帶小數點數形式輸出,將參數按帶小數點數形式輸出,對應參數應是對應參數應是double 類類型,默認情況下精確到型,默認情況下精確到 6 位小數位小數轉換字符串

12、%dint visitor_count = 150;printf ( %d , visitor_count);輸出結果:150轉換字符串%mdint salary = 5500;printf ( %10d , salary);輸出結果: 5500輸出結果的左邊顯示了 6 個空格 %10d 數據以十進制整數格式輸出,寬度占m列,數據不足m列左補空格,超過m列按實際位數輸出。轉換字符串%-mdint salary = 5500;printf ( %10d , salary);輸出結果:5500輸出結果的右邊顯示了 6 個空格 %-10d 數據以十進制整數格式輸出,寬度占m列,數據不足m列右補空格,

13、超過m列按實際位數輸出。課堂練習:輸出整數冪已知m=11,n=41,輸出m和n的2次方、3次方和4次方,要求每個數據占8列,左對齊。效果如下:121 1331 14641 1681 68921 2825761 2.2:使用浮點數進行溫度轉換 例2.2:例2.1中程序的運行結果并不令人滿意,因為華氏溫度100,對應的攝氏溫度應該為37.7777,而不應該是37。需要使用浮點型變量來存儲帶小數點的數,我們需要將 celsius, fahr聲明為雙精度浮點型聲明為雙精度浮點型#include int main( ) double celsius, fahr; /聲明兩個雙精度浮點型變量聲明兩個雙精度

14、浮點型變量 fahr=100.0; /賦值運算賦值運算 celsius=5*(fahr-32)/9; /計算攝氏溫度,并存入變量計算攝氏溫度,并存入變量celsius printf(fahr=%f, celsius=%fn, fahr, celsius); 2.2.1 浮點變量類型 浮點數在計算機中的表示,基于指數表示法,將分為指數和尾數來存儲。浮點變量根據數據表示范圍和精確度不同,有一下幾種類型float4個字節個字節(+/-)3.4e38 ,6位有效數字浮點變量用來存儲浮點數,浮點數包含的值帶小數點,也可以表示分數和整數。double8個字節個字節(+/-)1.7e308 ,15位有效數字

15、課外作業:查閱資料,了解浮點數是如何存儲的long double12個字節個字節(+/-)1.19e4932 ,18位有效數字注意有效位數的不同內存內存floatdouble213.5671435568967 64位位取值范圍:10-308 至 1030816 位有效數字 flaot f_level = 213.5671435568967; double d_level = 213.5671435568967;去vc下試試!轉換字符串%ffloat circumference = 78.53;printf (%f , circumference);輸出結果:78.530000默認情況下精確到六

16、位小數9.4786789;2.2.2 浮點數據的輸出浮點數據的輸出 double mercury_level = 168.2251074;printf( %7.2f , mercury_level);輸出結果: 168.23寬度,表示所有的數字和小數點所占的位數。不夠7位右對齊。 %7.2f 精度(精確到小數點后多少位)轉換字符串轉換字符串%m.nf2.2.2 浮點數據的輸出 程序程序指令指令2.2.3 常量標識符標識符關鍵字關鍵字常量常量運算符運算符分隔符分隔符等等常量是在程序中保持不變的量,分為:立即數符號常量(宏常量)const 常量立即數立即數v 整型常量:整型常量:如如32、100v

17、 實型常量實型常量: 如如1.23 123.567e5v 字符常量字符常量: a 、 2 、 nv 字符串常量:字符串常量:“c program”定義常量 為使程序易于閱讀和便于修改,可以給程序中經常使用的常量定義一個有一定含義的名字。常量用于定義具有如下特點的數據:在程序中保持不變在程序內部頻繁使用需要用比較簡單的方式替代某些值防止意外的修改,增強程序的健壯性 定義宏常量 #define pi 3.1415926編譯預處理指令#define將pi定義成一個要被3.1415926取代的符號,此時pi不是一個變量,而是3.1415926的別名。在編譯開始之前,只要在程序的表達式中引用pi,預處理

18、器就會用#define 指令中的值(3.1415926)來取代它。宏常量的缺點:宏常量被替換成立即數之后,內存中有同一個立即數的多份拷貝。定義const常量 在定義變量時,加上const修飾,告訴編譯器,它的值是固定的,不能被改變。編譯器會幫你檢查、監督。const double pi=3.1415926;const 推出的初始目的,正是為了取代預編譯指令,消除它的缺點,同時繼承它的優點。在編譯的時候,由于const定義常量只是給出了對應的內存地址,而不是象#define給出的是立即數,所以,const定義的常量在程序運行過程中只有一份拷貝,而#define定義的常量在內存中有 若干個拷貝。例

19、2.3 求圓柱體的體積/求圓面積,圓周率用立即數求圓面積,圓周率用立即數#include “stdio.h”int main() doulbe v, r,h; r=10.0; h=20.0; v=3.1415926 r*r*h; printf (“v=%fn”,v); return 0;/求圓面積,圓周率用宏常量求圓面積,圓周率用宏常量#include “stdio.h”#define pi 3.1415926int main() double v, r, h; r=10.0; h=20.0; v=pir*r*h; printf(“v=%fn”,v); return 0;/求圓面積,圓周率用求

20、圓面積,圓周率用const宏常量宏常量#include “stdio.h”const double pi=3.1415926;int main() double v, r, h; r=10.0; h=20.0; v=pir*r*h; printf(“v=%fn”,v); return 0;模仿練習 (1)編程,已知圓的半徑radius(實數),輸出圓的面積,保留兩位小數2.3:對任意華氏溫度進行溫度轉換 例2.3:例2.2中的程序運行后只能輸出華氏溫度100f對應的攝氏溫度,為提高程序地通用性,要求程序運行后等待鍵盤輸入一個華氏溫度(實數),程序輸出其對應的攝氏溫度。/讀入一個華氏溫度,輸出其

21、對應的攝氏溫度讀入一個華氏溫度,輸出其對應的攝氏溫度#include int main( ) double celsius, fahr; /聲明兩個雙精度浮點型變量聲明兩個雙精度浮點型變量 scanf(%lf, &fahr); /等待用戶輸入一個數,存入等待用戶輸入一個數,存入fahr celsius=5*(fahr-32)/9; /計算攝氏溫度,并存入變量計算攝氏溫度,并存入變量celsius printf(fahr=%f, celsius=%fn, fahr, celsius); scanf(“%d”,&a);2.3.1 scanf() 函數scanf 函數從標準輸入(鍵盤

22、)讀取信息,按照格式描述把讀入的信息轉換為指定數據類型的數據,并把這些數據賦給指定的內存區域中。 轉換字符串&符號(附在讀取的每個變量上)用于指明變量在內存中的位置變量的名稱scanf() 函數的格式scanf(格式控制字符串,內存地址1,內存地址2,內存地址n)scanf(“%d”,&a);(1)%d為格式轉換符,每個格式轉換符對應后面一個內存地址。(2)scanf將讀入數據,按指定格式理解該輸入,然后存入對應內存地址3.1.2 格式轉換符格式轉換符參數變量的類型要求的實際輸入%dint 十進制整數十進制整數 %f float 十進制數實數十進制數實數%lf double十進

23、制數實數十進制數實數格式控制字符串:格式控制字符串:(1)由一對雙引號括起來)由一對雙引號括起來(2)可以包含)可以包含格式轉換符格式轉換符和和普通字符普通字符格式轉換符以%開頭,不同類型的數據,采用不同的格式轉換符,目前常用的轉換符見下表:內存用scanf()讀入整形數據int num;scanf(%d, &num);num 在內存中分配一塊 32 位存儲空間 存儲空間使用名稱“num”標識 等待用戶輸入一個值 將輸入的值按十進制整數來理解,然后內存中(因為 scanf 提供了num的內存地址)123內存用scanf()讀入單精度浮點數據float tax_rate;scanf (%

24、f , &tax_rate);tax_rate 在內存中分配一塊 32 位存儲空間 存儲空間使用名稱“tax_rate”標識 等待用戶輸入一個值 將輸入的值按十進制單精度實數來理解,然后內存中(因為 scanf 提供了tax_rate的內存地址)12.234內存double tax_rate;scanf (%lf , &tax_rate);tax_rate 在內存中分配一塊 64 位存儲空間 存儲空間使用名稱“tax_rate”標識 等待用戶輸入一個值 將輸入的值按十進制雙精度實數來理解,然后內存中(因為 scanf 提供了tax_rate的內存地址)12.234約定:以后凡說

25、要定義實型變量,都使用double用用scanf()讀入雙精度浮點數據讀入雙精度浮點數據3.1.3格式控制字符串中的普通字符 scanf(格式字符串,地址列表)在格式字符串中若有普通字符,則輸入時在對應位置也必須輸入該普通字符,否則會因讀入格式錯誤而終止程序。如果有scanf(“%d,%d”, &a, &b)輸入的兩個數直接必須有一個逗號3,5 正確3 5 錯誤如果有scanf(“a=%d,b=%d”, &a, &b)輸入應該是:a=3,b=5,否則就會失敗scanf的格式字符串中最好不加任何普通字符,只寫%開頭的格式轉換符。如scanf(“%d%d”, &am

26、p;a, &b)不要給自己制造輸入格式限制!課堂練習1、讀入兩個整數,輸出它們的和2、讀入兩個實數,輸出它們的平均值,結果保留兩位小數。常見錯誤分析1/兩個整數的運算#includeint main() int m, n; scanf(%d,%d, &m, &n); printf(%d,m+n); return 0; 輸入8 5 輸出結果是錯誤的若輸入8,5,則運行結果正確scanf中的格式字符串中若有普通字符,則輸入時在對應位置也必須輸入該普通字符分析如下程序錯誤的原因分析如下程序錯誤的原因常見錯誤分析2/輸入半徑,輸出面積#include#define pi 3.1

27、415926int main() double a, b; scanf( %d%d , &a,&b); s=pi*r*r; printf(s=%.2fn,s); return 0; 輸入:3 5 輸出結果錯誤錯誤原因: 因a,b是double類型的變量,故scanf的格式轉換符應該是%lf分析如下程序錯誤的原因%lf%lf2.4 整數的運算例2.4 分糖果,老師有n個糖果,要分給m個小朋友分糖果,n和m由鍵盤輸入,輸出每個小朋友分幾個,老師還剩余幾個。/程序2.4:整數運算#includeint main() int candies , kids; scanf(%d%d, &a

28、mp;candies , &kids); printf(每人分%d個n, candies/kids ); printf(剩余%d個n, candies%kids ); return 0;2.4.1 算術運算c運算符算術運算符:(+ - * / % + -)關系運算符:( = !=)邏輯運算符:(! & |)位運算符 :( | &)賦值運算符:(= 及其擴展)條件運算符:(?:)逗號運算符:(,)指針運算符:(* &)求字節數 :(sizeof)強制類型轉換:(類型)分量運算符:(. -)下標運算符:()其它 :(( ) -)算術運算算術 一元一元 二元二元操作數

29、操作數運算符算術運算注意(1)整數除整數,得整數整數除整數,得整數如:如:1/2 0,9/4 2 思考:思考: 5 * (fahr - 32) / 9 和和 5 / 9 * (fahr - 32) 等價嗎等價嗎(2)% 模運算,針對整型數據模運算,針對整型數據如:如: 565,-94-1,10040模運算的結果與第一個操作數相同。模運算的結果與第一個操作數相同。(3)“*”乘號不能省略乘號不能省略 5*a不能不能5a(4)雙目運算符兩側操作數的類型要相同雙目運算符兩側操作數的類型要相同課堂練習:求各位數字和由鍵盤輸入一個整數n(小于1000),計算n的各位數字和#includeint main

30、() int n,d0,d1,d2; scanf(%d,&n); d0=n%10; /將個位存入d0; d1=(n/10)%10; /將十位存入d1 d2=(n/100)%10;/因為n最多是三位數,也可寫為d2=(n/100); printf(%dn,d0+d1+d2); return 0;課堂練習:兩個整數的和差積商輸入兩個整數,求兩個數的和、差、積、商,要求商保留2位小數/整數運算#includeint main() int a,b,c; scanf(%d%d,&a,&b); printf(%d,a+b); printf(%d,a-b); printf(%d,a*

31、b); printf(%.2fn, 1.0*a/b); return 0;常見錯誤1:/兩個整數的運算#includeint main() int a,b,c; scanf(%d%d, &a,&b); printf(%d, a+b); printf(%d, a-b); printf(%d, a*b); printf(%.2fn, a/b); return 0;輸入:8 5商的結果是0.00,分析原因原因是輸出格式控制%0.2f與對應輸出項類型不匹配。a/b的結果是整型數據,%.2f用來輸出浮點型數據整數除法的運算結果是整數商,直接扔掉余數分析如下程序錯誤的原因分析如下程序錯誤的

32、原因常見錯誤2:/兩個整數的運算#includeint main() int a, b; double c; c=a/b; scanf(%d%d,&a,&b); printf(%d,a+b); printf(%d,a-b); printf(%d,a*b); printf(%.2fn, c); return 0;輸入8 5運行結果是1.00,分析原因依然是整數除法帶來的問題:整數除法的運算結果是整數,5/3的結果是1,把1賦給實型變量c,c的值是1.0,而不是你期望的1.6分析如下程序錯誤的原因分析如下程序錯誤的原因2.4.2類型轉換 1、不同級別的操作數運算時,精度低的自動向精

33、度高的轉換如: double a=1/2; a的值是0.0 double a=1.0/2; a的值是0.5 2、賦值時類型轉換如: double a=1;/會把1.0賦給a int i=1.5;/會把1.5轉換為整型得1,賦給i類型轉換 3、 強制類型轉換 (類型名)操作數如: double a=2.5; int n; n=(int)a; /將a的值轉換為整型2,賦給n又如:求兩整數的商,商為實數 int a=2,b=3; double c; c=(double)a/b; /強制類型轉換或 c=1.0*a/b; /不同類型運算時向精度高的轉換 先將a轉換為實數,再除以b!強制轉換優先級最高2.

34、5 兩個數的最大值例2.5 輸入兩個數,輸出其中較大的數#includeint main() int a,b,max; scanf(%d%d,&a,&b); max=a; if( bmax ) max=b; printf(%dn, max); return 0;(1)讀入a, b(2)把a賦給max;(3)如果bmax(或ba), 把b存入max(4)輸出max2.5.1 關系運算 關系運算符 種類: = != 結合方向:自左向右 優先級別:=!=優先級6(高)優先級7(低)關系預算的結果是整型:若關系成立,結果為1;若關系不成立,結果為0;int a=3,b=5;ab 結果為

35、0;a*2b 結果為123 = 37結果為1關系運算注意:例 若int a=0, b=5, x=100; 則 a=x270 結果為 a100 結果為102.5.2 基本if 語句if (表達式) 語句如果括號內表達式的值為真,則執行if后的語句,否則什么也不做語句語句表達式表達式真真假假語句1可以是單個語句,也可以是用括起來的復合語句。模仿練習改寫上例,實現:輸入三個數,輸出其中最大的數(1)讀入a, b,c(2)把a賦給max;(3)如果bmax, 把b存入max(4)如果cmax, 把c存入max(5)輸出max#includeint main() int a, b, c, max; sc

36、anf(%d%d%d,&a,&b,&c); max=a; if( bmax ) max=b; if( cmax ) max=c; printf(%dn, max); return 0;“比武招親”、擂臺賽的思想2.5.3 條件表達式本題可以用如下條件運算符來處理: max = (ab) ? a : b#includeint main() int a,b,max; scanf(%d%d,&a,&b); max = (ab) ? a : b printf(%dn, max); return 0;其中,其中,“(ab) ? a : b”是一個條件表達式,若條是

37、一個條件表達式,若條件(件(ab)成立,則條件表達式取值)成立,則條件表達式取值a;否則,??;否則,取值值b。相當于相當于if (ab) max=a;else max=b;條件表達式的一般形式: 表達式1?表達式2:表達式3條件表達式的求解過程條件表達式的求解過程先求解表達式先求解表達式1的值的值若表達式若表達式1的值為真的值為真(非非0);則求解表達式;則求解表達式2的的值,將其作為條件表達式的值。表達式值,將其作為條件表達式的值。表達式3不計算。不計算。 若表達式若表達式1的值為假的值為假(0);則求解表達式;則求解表達式3的值,的值,將其作為條件表達式的值。表達式將其作為條件表達式的值。

38、表達式2不計算。不計算。模仿練習用條件表達式實現:輸入三個數,輸出其中最大的數(1)讀入a, b,c(2)把a和b中較大者賦給max;(3)把c和max中較大者賦給max;(4)輸出max#includeint main() int a, b, c, max; scanf(%d%d%d,&a,&b,&c); max = (ab) ? a : b; max = (cmax) ? c : max printf(%dn, max); return 0;課堂練習 時間間隔 從鍵盤輸入兩個時間點(24小時制),輸出兩個時間點之間的時間間隔,時間間隔用“小時:分鐘:秒”表示。 in

39、put 輸入包括兩行。 第一行為時間點1,第二行為時間點2。都以“小時:分鐘:秒”的格式輸入。 output 以“小時:分鐘:秒”的格式輸出時間間隔。格式參看樣例。 hint 注意:要輸出01:08:31中的占位符0sample input 12:01:12 13:09:43 sample output 01:08:31 sample input 12:40:12 13:09:43 sample output 00:28:31 思路分析方法1:兩個時間點都轉換成秒,然后相減,再把結果轉換為時分秒方法2:時分秒對應相減,不夠減向上借位。2.6 計算兩點間距離例2.6 編程: 輸入4個實數x1,y

40、1,x2,y2,數據之間用空格隔開。表示兩點坐標a(x1,y1), b(x2,y2),計算并輸出兩點間的距離。結果保留兩位小數。(1)定義x1、y1、x2、y2、dist為double類型(2)讀入x1、y1、x2、y2(3)利用兩點間距離公式求距離,存入dist(4)輸出dist如何求平方根呢?用c語言的標準庫函數sqrt()例2.6的源程序/求兩點之間的距離#include #include int main() double x1,y1,x2,y2,dist; scanf(%lf%lf%lf%lf, &x1,&y1,&x2,&y2); dist= sqrt( (x1-x2)*(x1-x2)+(y1-y2)*(y1-y2) ); printf(%.2fn,dist); return 0; 也可以寫成兩個語句:也

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論