C语言实现计算数的整数次幂
C語(yǔ)言實(shí)現(xiàn)計(jì)算數(shù)的整數(shù)次冪
程序分析:
1、while循環(huán)。輸入1.22,5,scanf()成功讀取兩值,并返回2,循環(huán)繼續(xù)。
因?yàn)閟canf()跳過(guò)空白,所以可以像輸出示例那樣,分多行輸入。
但是輸入q會(huì)使scanf()的返回值為0,因?yàn)閝與scanf()中的轉(zhuǎn)換說(shuō)明%lf不匹配。
scanf()將返回0,循環(huán)結(jié)束。
2、現(xiàn)在分析一下與函數(shù)相關(guān)的內(nèi)容。
power()函數(shù)在程序中出現(xiàn)了3次。
首次出現(xiàn)是:
double power(double n,intp);//ANSI函數(shù)原型這是power()函數(shù)的原型,它聲明程序?qū)⑹褂靡粋€(gè)名為power()的函數(shù)。
開頭的關(guān)鍵字double表明power()函數(shù)返回一個(gè)double類型的值。
圓括號(hào)中的double n,intp表示power()函數(shù)的兩個(gè)參數(shù)。第1個(gè)參數(shù)應(yīng)該是double類型的值,第2個(gè)參數(shù)應(yīng)該是int類型的值。
第2次出現(xiàn)是:
pow=power(x,exp);//函數(shù)調(diào)用程序調(diào)用power(),把兩個(gè)值傳遞給它。該函數(shù)計(jì)算x的exp次冪,并把計(jì)算結(jié)果返回給主調(diào)函數(shù)。在主調(diào)函數(shù)中,返回值將被賦給變量xpow。
第3次出現(xiàn)是:
double power(double n,intp)//函數(shù)定義這里,power()有兩個(gè)形參,一個(gè)是double類型,一個(gè)是int類型,分別由變量n和變量p表示。
注意,函數(shù)定義的末尾沒(méi)有分號(hào),而函數(shù)原型的末尾有分號(hào)。
4、power()函數(shù)用for循環(huán)計(jì)算n的p次冪,并把計(jì)算結(jié)果賦給pow,然后返回pow的值,
如下所示:
return pow;//返回pow的值求哪一個(gè)數(shù)的多少次冪函數(shù):*******
double power(double n, int p)//函數(shù)定義 {double pow = 1;for (int i = 0; i < p; i++){pow *= n;}return pow;//返回pow的值 }程序如下:
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> double power(double n, int p);//函數(shù)原型 int main() {double x, xpow;//定義浮點(diǎn)型變量int exp;//定義變量表示幾次方printf("請(qǐng)輸入x,與exp的值:(輸入q退出)\n");while (scanf("%lf%d", &x, &exp) == 2){xpow = power(x, exp);//函數(shù)調(diào)用printf("%.2lf的%d次方為:%.5lf\n", x, exp, xpow);printf("請(qǐng)?jiān)俅屋斎離,與exp的值:(輸入q退出)\n");}return 0; } double power(double n, int p)//函數(shù)定義 {double pow = 1;for (int i = 0; i < p; i++){pow *= n;}return pow;//返回pow的值 }輸出結(jié)果如下:
?
總結(jié)
以上是生活随笔為你收集整理的C语言实现计算数的整数次幂的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: dcat-admin oss图片上传
- 下一篇: 简谐振动的能量与合成(大学物理笔记)