欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

數(shù)學(xué)函數(shù)c語(yǔ)言視頻,數(shù)學(xué)函數(shù)C語(yǔ)言

C語(yǔ)言數(shù)學(xué)函數(shù)片段如何先

33

10年積累的成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有宿松免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

初始值 a=-1 b=4

a++=0 先取值 判斷a=0 成立。 a自加為0. 表達(dá)式為1

!(b--=0) 先取b值,4=0不成立,然后b自減為3。 表達(dá)式取反后為1.

11 = 1

k=1

于是

k=1 a=0 b=3

選C

34

y原始為-1

分析下面的。如果x=0 那么 下面程序不執(zhí)行,y仍為-1

否則,x0時(shí),y=1

x0時(shí),y=0

與之相符的,只有C

求C語(yǔ)言的數(shù)學(xué)函數(shù)大全

數(shù)學(xué)函數(shù)(原型聲明所在頭文件為math.h、stdlib.h、string.h、float.h)

int abs(int i) 返回整型參數(shù)i的絕對(duì)值

double cabs(struct complex znum) 返回復(fù)數(shù)znum的絕對(duì)值

double fabs(double x) 返回雙精度參數(shù)x的絕對(duì)值

long labs(long n) 返回長(zhǎng)整型參數(shù)n的絕對(duì)值

double exp(double x) 返回指數(shù)函數(shù)ex的值

double frexp(double value,int *eptr) 返回value=x*2n中x的值,分配得來(lái)的n存貯在eptr中

double ldexp(double value,int exp); 返回value*2exp的值

double log(double x) 返回logex的值

double log10(double x) 返回log10x的值

double pow(double x,double y) 返回xy的值

double pow10(int p) 返回10p的值

double sqrt(double x) 返回x的開(kāi)方

double acos(double x) 返回x的反余弦cos-1(x)值,x為弧度

double asin(double x) 返回x的反正弦sin-1(x)值,x為弧度

double atan(double x) 返回x的反正切tan-1(x)值,x為弧度

double atan2(double y,double x) 返回y/x的反正切tan-1(x)值,y的x為弧度

double cos(double x) 返回x的余弦cos(x)值,x為弧度

double sin(double x) 返回x的正弦sin(x)值,x為弧度

double tan(double x) 返回x的正切tan(x)值,x為弧度

double cosh(double x) 返回x的雙曲余弦cosh(x)值,x為弧度

double sinh(double x) 返回x的雙曲正弦sinh(x)值,x為弧度

double tanh(double x) 返回x的雙曲正切tanh(x)值,x為弧度

double hypot(double x,double y) 返回直角三角形斜邊的長(zhǎng)度(z),

x和y為直角邊的長(zhǎng)度,z2=x2+y2

double ceil(double x) 返回不小于x的最小整數(shù)

double floor(double x) 返回不大于x的最大整數(shù)

void srand(unsigned seed) 初始化隨機(jī)數(shù)發(fā)生器

int rand() 產(chǎn)生一個(gè)隨機(jī)數(shù)并返回這個(gè)數(shù)

double poly(double x,int n,double c[])從參數(shù)產(chǎn)生一個(gè)多項(xiàng)式

double modf(double value,double *iptr)將雙精度數(shù)value分解成尾數(shù)和階,iptr返回整數(shù)部分,函數(shù)返回小數(shù)部分:fraction = modf(number, integer);

double fmod(double x,double y) 返回x/y的余數(shù)

double atof(char *nptr) 將字符串nptr轉(zhuǎn)換成浮點(diǎn)數(shù)并返回這個(gè)浮點(diǎn)數(shù)

double atoi(char *nptr) 將字符串nptr轉(zhuǎn)換成整數(shù)并返回這個(gè)整數(shù)

double atol(char *nptr) 將字符串nptr轉(zhuǎn)換成長(zhǎng)整數(shù)并返回這個(gè)整數(shù)

char *ecvt(double value,int ndigit,int *decpt,int *sign)

將浮點(diǎn)數(shù)value轉(zhuǎn)換成字符串并返回該字符串

char *fcvt(double value,int ndigit,int *decpt,int *sign)

將浮點(diǎn)數(shù)value轉(zhuǎn)換成字符串并返回該字符串

char *gcvt(double value,int ndigit,char *buf)

將數(shù)value轉(zhuǎn)換成字符串并存于buf中,并返回buf的指針

char *ultoa(unsigned long value,char *string,int radix)

將無(wú)符號(hào)整型數(shù)value轉(zhuǎn)換成字符串并返回該字符串,radix為轉(zhuǎn)換時(shí)所用基數(shù)

char *ltoa(long value,char *string,int radix)

將長(zhǎng)整型數(shù)value轉(zhuǎn)換成字符串并返回該字符串,radix為轉(zhuǎn)換時(shí)所用基數(shù)

char *itoa(int value,char *string,int radix)

將整數(shù)value轉(zhuǎn)換成字符串存入string,radix為轉(zhuǎn)換時(shí)所用基數(shù)

double atof(char *nptr) 將字符串nptr轉(zhuǎn)換成雙精度數(shù),并返回這個(gè)數(shù),錯(cuò)誤返回0

int atoi(char *nptr) 將字符串nptr轉(zhuǎn)換成整型數(shù), 并返回這個(gè)數(shù),錯(cuò)誤返回0

long atol(char *nptr) 將字符串nptr轉(zhuǎn)換成長(zhǎng)整型數(shù),并返回這個(gè)數(shù),錯(cuò)誤返回0

double strtod(char *str,char **endptr)將字符串str轉(zhuǎn)換成雙精度數(shù),并返回這個(gè)數(shù),

long strtol(char *str,char **endptr,int base)將字符串str轉(zhuǎn)換成長(zhǎng)整型數(shù), 并返回這個(gè)數(shù)。

int matherr(struct exception *e) 用戶修改數(shù)學(xué)錯(cuò)誤返回信息函數(shù)(沒(méi)有必要使用)

double _matherr(_mexcep why,char *fun,double *arg1p, double *arg2p,double retval)

用戶修改數(shù)學(xué)錯(cuò)誤返回信息函數(shù)(沒(méi)有必要使用)

unsigned int _clear87() 清除浮點(diǎn)狀態(tài)字并返回原來(lái)的浮點(diǎn)狀態(tài)

void _fpreset() 重新初使化浮點(diǎn)數(shù)學(xué)程序包

unsigned int _status87() 返回浮點(diǎn)狀態(tài)字

c語(yǔ)言數(shù)學(xué)函數(shù)怎么用

您好,很高興回答您的問(wèn)題。

c語(yǔ)言中的數(shù)學(xué)函數(shù),就是根據(jù)含義,按照正確的格式來(lái)使用,包括兩個(gè)方面,第一是一定要寫上頭文件math. h,第二個(gè)是要完全遵循函數(shù)的格式:返回值類型 函數(shù)名(參數(shù)類型 參數(shù)名)的格式來(lái)操作哦。

C語(yǔ)言基礎(chǔ)-數(shù)學(xué)函數(shù)庫(kù)

一些數(shù)學(xué)計(jì)算的公式的具體實(shí)現(xiàn)是放在math.h里,具體有:

x的正弦值

double sin (double x);

x的余弦值

double cos (double x);

x的正切值

double tan (double x);

結(jié)果介于[-PI/2, PI/2],x值域?yàn)閇-1,1]

double asin (double x);

結(jié)果介于[0, PI],x值域?yàn)閇-1,1]

double acos (double x);

反正切(主值), 結(jié)果介于[-PI/2, PI/2]

double atan (double x);

反正切(整圓值), 結(jié)果介于[-PI, PI]

double atan2 (double y, double x);

x的雙曲正弦值

double sinh (double x);

x的雙曲余弦值

double cosh (double x);

x的雙曲正切值

double tanh (double x);

冪函數(shù)e^x

double exp (double x);

x^y,如果x=0且y=0,或者x0且y不是整型數(shù),將產(chǎn)生定義域錯(cuò)誤

double pow (double x, double y);

x的平方根,其中x=0

double sqrt (double x);

以e為底的對(duì)數(shù),自然對(duì)數(shù),x0

double log (double x);

以10為底的對(duì)數(shù),x0

double log10 (double x);

取上整

double ceil (double x);

取下整

double floor (double x);

x的絕對(duì)值

double fabs (double x);

標(biāo)準(zhǔn)化浮點(diǎn)數(shù), x = f * 2^exp, 已知x求f, exp ( x介于[0.5, 1] )并返回f值

double frexp (double x, int *exp);

與frexp相反, 已知x, exp求x*2^exp

double ldexp (double x, int exp);

將參數(shù)的整數(shù)部分通過(guò)指針回傳, 返回小數(shù)部分,整數(shù)部分保存在*ip中

double modf (double x, double *ip);

返回兩參數(shù)相除x/y的余數(shù),符號(hào)與x相同。如果y為0,則結(jié)果與具體的額實(shí)現(xiàn)有關(guān)

double fmod (double x, double y);

c語(yǔ)言里#include 還有別的嗎幫我寫一下!

stdio.h是c的頭文件,包含了對(duì)你使用的函數(shù)的聲明。

當(dāng)你決定使用某個(gè)函數(shù)的時(shí)候,你去查它的幫助信息,都會(huì)看到這個(gè)函數(shù)的聲明是包含在哪個(gè)頭文件的,這樣你就可以把它包含進(jìn)來(lái),從而使用這個(gè)函數(shù)。

具體請(qǐng)查閱c語(yǔ)言對(duì)于include的講解,還有對(duì)于函數(shù),變量的聲明部分。 include stdio.h 是C的輸入輸出函數(shù),但在C++中使用可以省略.

#include math.h 是數(shù)學(xué)函數(shù),譬如你要用到squar()函數(shù)時(shí)就必須添加這個(gè)頭文件.

#include string.h是字符竄函數(shù).

#include stdlib.h呵呵,這個(gè)有點(diǎn)忘記了,好久沒(méi)有用了,不好意思啊

反正這幾個(gè)是常用的,其他還有很多很多,呵呵,自己可以看書后面的幾頁(yè)都有介紹的呢!~ #includeiostream.h:此頭文件申明了所有I/O操作所需的基本服務(wù),即支持流的輸入輸出操作,譬如程序中有cin ,cout

#includeiomanip.h:此頭文件說(shuō)明可以使用控制數(shù)據(jù)的輸出格式,如設(shè)置數(shù)制、填充字符、精度、數(shù)據(jù)寬度等等,譬如使用setw()、setfill() 、setprecision()等

#include string.h是字符竄處理函數(shù)

#includeafx.h程序中要使用CString類

#include stdlib.h程序中要使用C語(yǔ)言系統(tǒng)提供的庫(kù)函數(shù)gets和puts函數(shù)

回答者:雨之淚1988 - 助理 二級(jí) 2-6 08:35

stdio.h是輸入輸出頭文件,所有有關(guān)輸入輸出的語(yǔ)句如"printf","scanf","putchar","getchar"等,都要用該頭文件,頭文件其實(shí)就是定義了這些函數(shù)的文件,它是系統(tǒng)提供給我們的接口

math.h是再進(jìn)行數(shù)學(xué)運(yùn)算時(shí)要包含的頭文件,它提供了取絕對(duì)值,開(kāi)方,求冪等數(shù)學(xué)運(yùn)算

#includeconio.h與#includestdio.h 一樣,是頭文件包含。

這個(gè)頭文件包含有許多庫(kù)函數(shù)像#includestdio.h包含printf與

scanf一樣,getch()也是其中一個(gè)函數(shù),它的功能是無(wú)回顯得到一

字符,常用這個(gè)函數(shù)做密碼之類的程序。在TC中編譯不需要加頭文件

可以,編譯器默認(rèn)包含。就像在TC是不用加#includestdio.h一樣。

但在VC中編譯就要加了。否則系統(tǒng)認(rèn)為你的函數(shù)沒(méi)有定義。

其它頭文件你只要再TC文件夾中看看include這個(gè)文件夾里面的文件就可以了

C語(yǔ)言入門知識(shí)

C語(yǔ)言基礎(chǔ)知識(shí)

1.1 C語(yǔ)言簡(jiǎn)介

C語(yǔ)言于1972年由美國(guó)的Dennis Ritchie發(fā)明,并首次在配備了UNIX操作系統(tǒng)的DEC PDP-11計(jì)算機(jī)上實(shí)現(xiàn)。它由早期的編程語(yǔ)言BCPL(Basic Combind Programming Language)發(fā)展演變而來(lái)。1970年,ATT貝爾實(shí)驗(yàn)室的Ken Thompson根據(jù)BCPL語(yǔ)言設(shè)計(jì)出了較先進(jìn)并取名為B的語(yǔ)言,通過(guò)不斷修改、完善,更先進(jìn)的C語(yǔ)言問(wèn)世了。

C語(yǔ)言是一種功能強(qiáng)大、應(yīng)用廣泛、具有發(fā)展前途的計(jì)算機(jī)語(yǔ)言。它既可用于系統(tǒng)軟件的設(shè)計(jì),也可用于應(yīng)用軟件的開(kāi)發(fā)。許多著名的系統(tǒng)軟件都是由C語(yǔ)言編寫的。C語(yǔ)言具有下列特點(diǎn):

(1)C語(yǔ)言既具有低級(jí)語(yǔ)言直接操縱硬件的特點(diǎn),又具有高級(jí)語(yǔ)言與 自然語(yǔ)言和人的思維邏輯相似的特點(diǎn),C語(yǔ)言程序易編寫、易查錯(cuò),而且實(shí)用性很強(qiáng)。

(2)C語(yǔ)言具有豐富的數(shù)據(jù)類型和運(yùn)算符,語(yǔ)法結(jié)構(gòu)簡(jiǎn)單。

(3)C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,提供了完整的程序控制語(yǔ)句。

(4)C語(yǔ)言是一種模塊化程序設(shè)計(jì)語(yǔ)言,適合大型軟件的開(kāi)發(fā)和研制。

(5)C語(yǔ)言還有一個(gè)突出的優(yōu)點(diǎn)就是適合于多種操作系統(tǒng),如DOS、UNIX,也適用于多種機(jī)型,其程序移植性好。

1.2 C語(yǔ)言的數(shù)據(jù)類型

數(shù)據(jù)是程序處理的對(duì)象,數(shù)據(jù)類型是數(shù)據(jù)的內(nèi)在表現(xiàn)形式。例如,學(xué)生的年齡和成績(jī)具有一般數(shù)值的特點(diǎn),在C語(yǔ)言中稱為數(shù)值型,其中年齡是整數(shù),稱為整型;成績(jī)可以為小數(shù),稱為實(shí)型。而學(xué)生的姓名和性別是文字,在C語(yǔ)言中稱為字符型數(shù)據(jù)。

C語(yǔ)言具有豐富的數(shù)據(jù)類型,其中基本的數(shù)據(jù)類型有整型、實(shí)型、字符型。

1.2.1 變量

變量是在程序執(zhí)行過(guò)程中其值可以被改變的量。

1.變量命名規(guī)則

和人的取名一樣,變量的命名也有一定的規(guī)則。

(1)由字母、數(shù)字和下劃線組成;

(2)必須以字母或下劃線打頭;

(3)字母區(qū)分大小寫(在系統(tǒng)默認(rèn)狀態(tài)下);

(4)前32個(gè)字符有效(在系統(tǒng)默認(rèn)狀態(tài)下)。

例如:a,Book,book,_Make_Cipher都是合法的變量名,且Book與book是不同的變量名,而123A,x+y都不是變量名。

2.變量的數(shù)據(jù)類型

變量可以是任意的一種數(shù)據(jù)類型,如整型變量、字符型變量、指針變量等。C語(yǔ)言中的基本數(shù)據(jù)類型及其特性如表1-1所示。

表1-1 C語(yǔ)言的基本數(shù)據(jù)類型

數(shù)據(jù)類型名 數(shù)據(jù)類型描述 數(shù)據(jù)類型的長(zhǎng)度(字節(jié)) 數(shù)據(jù)取值范圍

char 字符型 1 0~255

int 有符號(hào)整型 2 –32 768~32 767

unsigned int 無(wú)符號(hào)整型 2 0~65 535

short 短整型 2 –32 768~32 767

long 長(zhǎng)整型 4 –2 147 483 648~2 147 483 647

unsigned long 無(wú)符號(hào)長(zhǎng)整型 4 0~4 294 967 295

float 單精度實(shí)數(shù) 4 |3.4×10–38|~|3.4×1038|

double 雙精度實(shí)數(shù) 8 |1.7×10–308|~|1.7×10308|

long double 長(zhǎng)雙精度實(shí)數(shù) 10 |3.4×10–4932|~|3.4×104932|

3.變量的定義

每個(gè)變量在使用前都必須先定義其數(shù)據(jù)類型,定義變量數(shù)據(jù)類型的語(yǔ)法格式如下:

數(shù)據(jù)類型符 變量名1,變量名2,…;

例如:

int age,score; /* 定義年齡和成績(jī)?yōu)檎?*/

char name[20]; /* 定義姓名為至多含20個(gè)字符的字符數(shù)組 */

4.變量的存儲(chǔ)類型

當(dāng)定義某個(gè)變量時(shí),C語(yǔ)言的編譯系統(tǒng)就要給該變量分配若干個(gè)存儲(chǔ)單元用來(lái)存放該變量的值。而在計(jì)算機(jī)中寄存器和內(nèi)存都可以存放數(shù)據(jù),內(nèi)存又可分為臨時(shí)占用和長(zhǎng)期占用。變量的存儲(chǔ)類型是指變量在計(jì)算機(jī)中的存放位置及時(shí)間。

定義變量存儲(chǔ)類型的語(yǔ)法格式如下:

存儲(chǔ)類型符 數(shù)據(jù)類型符 變量名1,變量名2,…;

變量的存儲(chǔ)類型有自動(dòng)型(auto)、寄存器型(register)、靜態(tài)型(static)和外部型(extern),具體特點(diǎn)和使用方法在后面的章節(jié)中詳細(xì)介紹。

在變量定義時(shí),如未說(shuō)明存儲(chǔ)類型,則系統(tǒng)默認(rèn)為自動(dòng)型(auto)。

5.變量的初始化

變量的初始化是給變量賦初值的一種方法,是指在變量定義時(shí)就給變量賦予初始值。變量初始化的方法很簡(jiǎn)單,在變量定義的語(yǔ)句中,在變量名后加一個(gè)等號(hào)和初值即可。

例如:

int x, age=20, score=100;

在上面的定義中,變量x未賦初值,而變量age和score的初值分別為20和100。

在程序中,變量未賦值之前不允許使用,即要遵循“先賦值后使用”的規(guī)則。

1.2.2 常量

常量是在程序運(yùn)行過(guò)程中值不發(fā)生改變的數(shù)據(jù)。例如,圓周率3.1415926就是一個(gè)常量。常量也有數(shù)據(jù)類型,它們是整型常量、實(shí)型常量、字符常量、字符串常量及符號(hào)常量,整型常量及實(shí)型常量的數(shù)據(jù)長(zhǎng)度及取值范圍與變量的規(guī)定相同。

1.整型常量

整型常量用來(lái)表示整數(shù),整型數(shù)據(jù)可以以不同數(shù)制形式來(lái)表示,不同的進(jìn)位制有其不同的表示方式,其表示方式如表1-2所示。

表1-2 整型常量的表示方式

數(shù) 制 表 示 方 式 示 例

十進(jìn)制 一般整數(shù)的寫法 0,–22,55

八進(jìn)制 在八進(jìn)制整數(shù)前加數(shù)字0 00,–072,+0331

十六進(jìn)制 在十六進(jìn)制整數(shù)前加數(shù)字0和字母x 0x0,0x1B5,–0xb3

另外,對(duì)于長(zhǎng)整型常量,應(yīng)當(dāng)在其后加后綴L或l,例如30L。30L和30數(shù)值一樣,但占用內(nèi)存的大小不一樣。30占用2個(gè)字節(jié)的存儲(chǔ)空間,而30L占用4個(gè)字節(jié)的存儲(chǔ)空間。

2.實(shí)型常量

實(shí)型常量只有十進(jìn)制數(shù)表示方式,它沒(méi)有單精度和雙精度之分。其表示方式有定點(diǎn)數(shù)表示和浮點(diǎn)數(shù)表示兩種。具體表示方式如表1-3所示。

表1-3 實(shí)型常量的書寫方法

類 別 表 示 方 式 示 例

定點(diǎn)數(shù) 整數(shù)部分.小數(shù)部分 0.0,1.34,–34.0

浮點(diǎn)數(shù) 尾數(shù)E(或e)指數(shù) 3.57E10,–5.6e–9

說(shuō)明:

(1)浮點(diǎn)數(shù)表示方式相當(dāng)于數(shù)學(xué)中的科學(xué)計(jì)數(shù)法,其換算公式如下:

尾數(shù)E(或e)指數(shù)=尾數(shù)×10指數(shù)

(2)浮點(diǎn)數(shù)中的指數(shù)部分只能是整型數(shù),尾數(shù)可以大于或等于10。

3.字符常量

字符常量是用兩個(gè)單引號(hào)引住單個(gè)字符來(lái)表示的。例如:'A'、'*'、'!'等。使用字符常量時(shí)應(yīng)注意以下幾點(diǎn):

(1)空格也是字符,表示為'a'。

(2)單引號(hào)中必須恰好有一個(gè)字符,不能空缺。如' '是錯(cuò)誤的字符常量。

在C語(yǔ)言中有一類特殊的字符常量,被稱為轉(zhuǎn)義字符。它們用來(lái)表示特殊符號(hào)或鍵盤上的控制代碼,常見(jiàn)的轉(zhuǎn)義字符如表1-4所示。

表1-4 常用轉(zhuǎn)義字符表

轉(zhuǎn) 義 字 符 意 義 轉(zhuǎn) 義 字 符 意 義

\n 回車換行符 \a 響鈴

\t 水平制表符 \" 雙引號(hào)

\v 垂直制表符 \' 單引號(hào)

\b 左退一格 \\ 反斜杠

\r 回車符 \ddd 1~3位八進(jìn)制數(shù)ddd對(duì)應(yīng)的字符

\f 換頁(yè)符 \xhh 1~2位十六進(jìn)制數(shù)hh對(duì)應(yīng)的字符

4.字符串常量

字符串是用雙引號(hào)引住的若干個(gè)字符。例如,"hello!","485769","a"。

字符串可以不含任何字符,稱為空串,表示為""。

字符串中所含的字符個(gè)數(shù)稱為字符串的長(zhǎng)度。例如,"abc123","3",""的長(zhǎng)度分別為6,1,0。計(jì)算字符串長(zhǎng)度時(shí)應(yīng)注意以下幾點(diǎn):

(1)對(duì)于含有轉(zhuǎn)義字符的字符串,應(yīng)將轉(zhuǎn)義字符計(jì)算為1個(gè)字符。例如,"abc\\12\n"的長(zhǎng)度為7,而不是9;"abc\\\12\n"及"abc\\\123\n"的長(zhǎng)度均為6。

(2)在字符串中,反斜杠表示轉(zhuǎn)義字符的開(kāi)始,如果其后面沒(méi)有表1-4中所列出的轉(zhuǎn)義符號(hào),則該反斜杠被忽略,并不參與計(jì)算長(zhǎng)度。例如,"\A"的長(zhǎng)度為1,但"\"是非法的。

5.符號(hào)常量

上面所介紹的常量都是具體數(shù)據(jù),在程序中也可以用特定符號(hào)來(lái)表示某個(gè)常量,這個(gè)符號(hào)被稱為符號(hào)常量。

符號(hào)常量的語(yǔ)法格式如下:

#define 符號(hào)常量名 常量

例如:

#define PI 3.1415926

經(jīng)過(guò)上述定義后,可以在程序中使用PI來(lái)代替3.1415926。

在程序中使用符號(hào)常量有兩個(gè)好處:一是提高了程序的易讀性;二是為修改程序提供了方便。例如,當(dāng)不需要太高精度時(shí),只需要將符號(hào)常量定義修改為

#define PI 3.14

而不需要在程序中去修改每一處的圓周率。

1.3 算術(shù)運(yùn)算符與算術(shù)表達(dá)式

用來(lái)表示各種運(yùn)算的符號(hào)稱為運(yùn)算符。C語(yǔ)言中包括以下七大類的基本運(yùn)算符:算術(shù)運(yùn)算符、邏輯運(yùn)算符、關(guān)系運(yùn)算符、賦值運(yùn)算符、逗號(hào)運(yùn)算符、條件運(yùn)算符和位運(yùn)算符。本節(jié)主要介紹算術(shù)運(yùn)算符,其他的運(yùn)算符將在后續(xù)章節(jié)中詳細(xì)介紹。

1.3.1 算術(shù)運(yùn)算符

C語(yǔ)言中的算術(shù)運(yùn)算符和數(shù)學(xué)中的算術(shù)運(yùn)算相似,是對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算的。算術(shù)運(yùn)算符的運(yùn)算對(duì)象、運(yùn)算規(guī)則及結(jié)合性如表1-5所示。

表1-5 算術(shù)運(yùn)算符

運(yùn)算對(duì)象個(gè)數(shù) 名 稱 運(yùn) 算 符 運(yùn) 算 規(guī) 則 運(yùn)算對(duì)象

數(shù)據(jù)類型 結(jié) 合 性

單目 正 + 取原值 整型或?qū)嵭?自右向左

負(fù) – 取負(fù)值

雙目 加 + 加法運(yùn)算 自左向右

減 – 減法運(yùn)算

乘 * 乘法運(yùn)算

除 / 除法運(yùn)算

模 % 整除取余 整型

單目 增1(前綴) ++ 先加1,后使用 整型、字符型、指針型變量或數(shù)組元素、實(shí)型 自右向左

增1(后綴) ++ 先使用,后加1

減1(前綴) – – 先減1,后使用

減1(后綴) – – 先使用,后減1

在C語(yǔ)言中,參加運(yùn)算的對(duì)象個(gè)數(shù)稱為運(yùn)算符的“目”。單目運(yùn)算符是指參加運(yùn)算的對(duì)象只有一個(gè),如+10,–67,x++。雙目運(yùn)算符是指參加運(yùn)算的對(duì)象有兩個(gè),如2+3,7%3。

相同運(yùn)算符連續(xù)出現(xiàn)時(shí),有的運(yùn)算符是從左至右進(jìn)行運(yùn)算,有的運(yùn)算符是從右至左進(jìn)行運(yùn)算,C語(yǔ)言中,將運(yùn)算符的這種特性稱為結(jié)合性。

加法(+)、減法(–)、乘法(*)與數(shù)學(xué)中的算術(shù)運(yùn)算相同。例如:3.5+4.7結(jié)果是8.2;3.5 – 4.7結(jié)果是–0.8;3.5*4.7結(jié)果是16.45。

除法運(yùn)算(/)與數(shù)學(xué)中的除法不完全相同,它與參加運(yùn)算的對(duì)象的數(shù)據(jù)類型相關(guān)。當(dāng)參加運(yùn)算的兩個(gè)對(duì)象均為整型數(shù)據(jù)時(shí),其運(yùn)算結(jié)果為數(shù)學(xué)運(yùn)算結(jié)果的整數(shù)部分。如7/4結(jié)果為1,而不是1.75。若參加運(yùn)算的兩個(gè)對(duì)象有一個(gè)是實(shí)型或兩個(gè)都是實(shí)型,那么運(yùn)算結(jié)果為實(shí)際運(yùn)算的值,如7/5.0的運(yùn)算結(jié)果為1.4。

模運(yùn)算的運(yùn)算對(duì)象必須為整型,結(jié)果是相除后的余數(shù),如7%5結(jié)果為2。

增1減1運(yùn)算符都是單目運(yùn)算符,用來(lái)對(duì)整型、實(shí)型、字符型、指針型變量或數(shù)組元素等變量進(jìn)行加1或減1運(yùn)算,運(yùn)算的結(jié)果仍是原類型。

1.3.2 常用數(shù)學(xué)函數(shù)

C語(yǔ)言系統(tǒng)提供了400多個(gè)標(biāo)準(zhǔn)函數(shù)(稱為庫(kù)函數(shù)),設(shè)計(jì)程序時(shí)可以直接使用它們。庫(kù)函數(shù)主要包括數(shù)學(xué)函數(shù)、字符處理函數(shù)、類型轉(zhuǎn)換函數(shù)、文件管理函數(shù)及內(nèi)存管理函數(shù)等幾類。下面介紹常用的數(shù)學(xué)函數(shù),其他類型的函數(shù)將在后面章節(jié)中陸續(xù)介紹。

1.函數(shù)名:abs

原型:int abs(int i);

功能:求整數(shù)的絕對(duì)值。

例如,設(shè)x=abs(5),y=abs(–5),z=abs(0),則x=5,y=5,z=0。

2.函數(shù)名:labs

原型:long labs(long n);

功能:求長(zhǎng)整型數(shù)的絕對(duì)值。

例如,設(shè)x=labs(40000L),y=labs(–5),z=labs(0),則x=40000,y=5,z=0。

3.函數(shù)名:fabs

原型:double fabs(double x);

功能:求實(shí)數(shù)的絕對(duì)值。

例如,設(shè)x=fabs(5.3),y=fabs(–5.3),z=fabs(0),則x=5.3,y=5.3,z=0。

4.函數(shù)名:floor

原型:double floor(double x);

功能:求不大于x的最大整數(shù),它相當(dāng)于數(shù)學(xué)函數(shù)[x]。

例如,設(shè)x=floor(–5.1),y=floor(5.9),z=floor(5),則x= –6,y=5,z=5。

5.函數(shù)名:ceil

原型:double ceil(double x);

功能:求不小于x的最小整數(shù)。

例如,設(shè)x=ceil(–5.9),y=ceil(5.1),z=ceil(5),則x = –5,y=6,z=5

6.函數(shù)名:sqrt

原型:double sqrt(double x);

功能:求x的平方根。

例如,設(shè)x=sqrt(4),y=sqrt(16),則x=1.414214,y=4.0

7.函數(shù)名:log10

原型:double log10(double x);

功能:求x的常用對(duì)數(shù)。

8.函數(shù)名:log

原型:double log(double x);

功能:求x的自然對(duì)數(shù)。

9.函數(shù)名:exp

原型:double exp(double x);

功能:求歐拉常數(shù)e的x次方。

10.函數(shù)名:pow10

原型:double pow10(int p);

功能:求10的p次方。

例如,設(shè)x=pow10(3),y=pow10(0),則x=1000,y=1

11.函數(shù)名:pow

原型:double pow(double x, double y);

功能:求x的y次方。

例如,設(shè)x=pow(3,2),y=pow(–3,2),則x=9,y=9

12.函數(shù)名:sin

原型:double sin(double x);

功能:正弦函數(shù)。

13.函數(shù)名:cos

原型:double cos(double x);

功能:余弦函數(shù)。

14.函數(shù)名:tan

原型:double tan(double x);

功能:正切函數(shù)。

1.3.3 算術(shù)表達(dá)式

由算術(shù)運(yùn)算符和運(yùn)算對(duì)象連接形成的式子稱為算術(shù)表達(dá)式。

算術(shù)運(yùn)算符的優(yōu)先級(jí)從高到低規(guī)定如下:

++ – –

* / %

+ –

位于同一行的運(yùn)算符的優(yōu)先級(jí)相同。

1.4 數(shù)據(jù)類型轉(zhuǎn)換規(guī)則

對(duì)數(shù)據(jù)進(jìn)行運(yùn)算時(shí),要求參與運(yùn)算的對(duì)象的數(shù)據(jù)類型相同(運(yùn)算得到的運(yùn)算結(jié)果的類型與運(yùn)算對(duì)象也相同)。因此,在運(yùn)算過(guò)程中常常需要對(duì)變量或常量的數(shù)據(jù)類型進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換的方法有兩種,一種是系統(tǒng)自動(dòng)轉(zhuǎn)換(又稱為隱式轉(zhuǎn)換);另一種是在程序中強(qiáng)制轉(zhuǎn)換(又稱為顯式轉(zhuǎn)換)。

1.4.1 自動(dòng)轉(zhuǎn)換規(guī)則

在不同類型數(shù)據(jù)的混合運(yùn)算中,由系統(tǒng)自動(dòng)實(shí)現(xiàn)轉(zhuǎn)換。轉(zhuǎn)換規(guī)則如下:

(1)若參與運(yùn)算的數(shù)據(jù)的類型不同,則應(yīng)先轉(zhuǎn)換成同一類型,然后進(jìn)行運(yùn)算。

(2)將低類型數(shù)據(jù)轉(zhuǎn)換成高類型數(shù)據(jù)后進(jìn)行運(yùn)算。如int型和long型運(yùn)算時(shí),先把int型轉(zhuǎn)換成long型后再進(jìn)行運(yùn)算。

類型的高低是根據(jù)其所占空間的字節(jié)數(shù)按從小到大的順序排列的,順序如下:

char,int,long,float,double。

(3)所有的浮點(diǎn)運(yùn)算都是按照雙精度進(jìn)行運(yùn)算的,即使僅含float型單精度量運(yùn)算的表達(dá)式,也要先轉(zhuǎn)換成double型,再作運(yùn)算。

(4)char型和short型參與運(yùn)算時(shí),必須先轉(zhuǎn)換成int型。

例如,設(shè)有:

float PI=3.14;

int s,r=7;

s=r*r*PI;

因?yàn)镻I為單精度型,s和r為整型,在執(zhí)行s=r*r*PI語(yǔ)句時(shí),r和PI都轉(zhuǎn)換成double型后再進(jìn)行計(jì)算,運(yùn)算結(jié)果也為double型,右邊的運(yùn)算結(jié)果為153.86,但由于s為整型,故應(yīng)將賦值號(hào)右邊的運(yùn)算結(jié)果轉(zhuǎn)換成整型(舍去小數(shù)部分),因此s的值為153。

1.4.2 強(qiáng)制類型轉(zhuǎn)換

強(qiáng)制類型轉(zhuǎn)換是通過(guò)類型轉(zhuǎn)換運(yùn)算來(lái)實(shí)現(xiàn)的,其語(yǔ)法格式如下:

(類型說(shuō)明符)(表達(dá)式)

其功能是把表達(dá)式的運(yùn)算結(jié)果強(qiáng)制轉(zhuǎn)換成類型說(shuō)明符所表示的類型。例如: (float) a 把a(bǔ)轉(zhuǎn)換為實(shí)型;(int)(x+y) 把x+y的結(jié)果轉(zhuǎn)換為整型;而(int)x+y 則只將x轉(zhuǎn)換為整型。

在使用強(qiáng)制類型轉(zhuǎn)換時(shí)應(yīng)注意以下問(wèn)題:

(1)類型說(shuō)明符和表達(dá)式都必須加括號(hào)(單個(gè)變量可以不加括號(hào)),如把(int)(x+y)寫成(int)x+y則只是把x轉(zhuǎn)換成int型之后再與y相加。

(2)對(duì)于被轉(zhuǎn)換的單個(gè)變量而言,無(wú)論是強(qiáng)制轉(zhuǎn)換還是自動(dòng)轉(zhuǎn)換,都只是為了本次運(yùn)算的需要而對(duì)變量的數(shù)據(jù)長(zhǎng)度進(jìn)行臨時(shí)性轉(zhuǎn)換,而不會(huì)改變變量定義時(shí)所聲明的類型。

例如,設(shè)有:

float f = –5.75;

int x;

x= (int)f;

將f強(qiáng)制轉(zhuǎn)換成整數(shù)–5,因此x = –5,而f本身的類型并未改變且其值仍為–5.75。

1.5 程序結(jié)構(gòu)

1.5.1 主函數(shù)結(jié)構(gòu)

每一個(gè)C源程序都是一系列函數(shù)的集合。其中,必須有且只能有一個(gè)主函數(shù),其函數(shù)名為main,其結(jié)構(gòu)如下:

void main(void)

{

}

其中,void main(void) 稱為函數(shù)說(shuō)明部分(又稱函數(shù)頭),而

{

}

稱為函數(shù)體,函數(shù)體中的每個(gè)語(yǔ)句行末尾都必須用分號(hào)結(jié)束。

1.5.2 文件包含命令

C語(yǔ)言系統(tǒng)提供了400多個(gè)庫(kù)函數(shù),并將這些函數(shù)根據(jù)其功能分成了若干組,每組都有一個(gè)組名。如數(shù)學(xué)類函數(shù)組的組名為math。在C語(yǔ)言系統(tǒng)所安裝文件夾的下級(jí)文件夾中有一個(gè)與其相對(duì)應(yīng)的文件math.h,這些擴(kuò)展名為.h的文件稱為頭文件。

include稱為文件包含命令,當(dāng)用戶在程序中使用到系統(tǒng)的標(biāo)準(zhǔn)庫(kù)函數(shù)中的函數(shù)時(shí),需要在程序中(一般在程序的首部)增加一條預(yù)處理語(yǔ)句如#includestdio.h,以便告知系統(tǒng)需要使用某個(gè)頭文件中的函數(shù)。

1.5.3 C語(yǔ)言程序基本結(jié)構(gòu)

一個(gè)完整的C語(yǔ)言源程序由如下5個(gè)部分構(gòu)成:

(1)預(yù)處理命令;

(2)全局變量說(shuō)明;

(3)函數(shù)原型說(shuō)明;

(4)主函數(shù);

(5)其他子函數(shù)。

一個(gè)簡(jiǎn)單的C語(yǔ)言源程序只需要(1)和(4)兩個(gè)部分,其中“預(yù)處理命令”一般是一系列文件包含命令,即include命令。

關(guān)于程序結(jié)構(gòu),應(yīng)當(dāng)注意以下幾方面的問(wèn)題:

(1)可由若干個(gè)函數(shù)構(gòu)成,其中必須有且只有一個(gè)以main命名的主函數(shù),可以沒(méi)有其他函數(shù)。每個(gè)函數(shù)完成一定的功能,函數(shù)與函數(shù)之間可以通過(guò)參數(shù)傳遞信息。main()函數(shù)可以位于原程序文件中任何位置,但程序的執(zhí)行總是從main函數(shù)開(kāi)始,main函數(shù)執(zhí)行完畢時(shí)程序執(zhí)行結(jié)束。

(2)子函數(shù)的結(jié)構(gòu)與主函數(shù)相同,即分為函數(shù)說(shuō)明部分和函數(shù)體兩個(gè)部分。

(3)函數(shù)中的每個(gè)語(yǔ)句最后要有一個(gè)分號(hào),作為語(yǔ)句結(jié)束標(biāo)記。但某些特殊的語(yǔ)句行末尾不需要分號(hào),有時(shí)還不能有分號(hào)。

(4)“/*”和“*/”括住的任意一段字符稱為“程序注釋”,用來(lái)對(duì)程序作說(shuō)明,可以插入到程序的任何地方,且可以跨行使用。程序注釋不影響程序運(yùn)行結(jié)果。

(5)函數(shù)的書寫格式很靈活,在一行中可以書寫多個(gè)語(yǔ)句(每個(gè)語(yǔ)句末尾都要有分號(hào)),一個(gè)語(yǔ)句也可以寫在多行中。在程序的任何地方都可以插入空格或回車符。

(6)主函數(shù)可以調(diào)用任何子函數(shù)但不能調(diào)用它自己,任何子函數(shù)之間也可以相互調(diào)用,但是子函數(shù)不能調(diào)用主函數(shù)。

下面是一個(gè)簡(jiǎn)單的C語(yǔ)言源程序:

【例1-1】 求圓的面積。

#include stdio.h

void main(void)

{

float r,s,p=3.14;

r=10.5;

s=r*r*p;

printf("圓的面積是:%f ",s);

}

下面是一個(gè)較完整的C語(yǔ)言源程序:

【例1-2】 較完整的C語(yǔ)言程序示例。

#includestdio.h

#includeconio.h

int y,z;

void abc(int x);

void main(void)

{

int x;

clrscr();

x=10;

y=20;

z=30;

printf("ok1: x=%d y=%d z=%d \n",x,y,z);

abc(x);

printf("ok2: x=%d y=%d z=%d \n",x,y,z);

getch();

}

void abc(int x)

{

int y;

printf("ok3: x=%d y=%d z=%d \n",x,y,z);

x=100;

y=200;

z=300;

printf("ok4: x=%d y=%d z=%d \n",x,y,z);

}

網(wǎng)站標(biāo)題:數(shù)學(xué)函數(shù)c語(yǔ)言視頻,數(shù)學(xué)函數(shù)C語(yǔ)言
URL分享:http://chinadenli.net/article43/dsehoes.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司面包屑導(dǎo)航網(wǎng)站改版動(dòng)態(tài)網(wǎng)站微信公眾號(hào)網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作