用C语言程序设计:求x的n次方的函数。

double pow(double x, double y);

pow()用来计算以x 为底的 y 次方值,然后将结果返回

可能导致错误的情况:

如果底数 x 为负数并且指数 y 不是整数,将会导致 domain error 错误。

如果底数 x 和指数 y 都是 0,可能会导致 domain error 错误,也可能没有;这跟库的实现有关。

如果底数 x 是 0,指数 y 是负数,可能会导致 domain error 或 pole error 错误,也可能没有;这跟库的实现有关。

如果返回值 ret 太大或者太小,将会导致 range error 错误。

错误代码:

如果发生 domain error 错误,那么全局变量 errno 将被设置为  EDOM;

如果发生 pole error 或 range error 错误,那么全局变量 errno 将被设置为 ERANGE。

注意,使用 GCC 编译时请加入-lm。

#include<stdio.h>

#include<math.h>

intmain()

{ printf("7 ^ 3 = %f
",pow(7.0,3.0));

printf("4.73 ^ 12 = %f
",pow(4.73,12.0));

printf("32.01 ^ 1.54 = %f
",pow(32.01,1.54));

return0;}

输出结果:

7 ^ 3 = 343.000000

4.73 ^ 12 = 125410439.217423

32.01 ^ 1.54 = 208.036691



  • c++缂栫▼:缂栧啓绋嬪簭,杈撳叆瀹炴暟x,n,璁$畻x鐨刵娆℃柟,涓嶅厑璁歌皟鐢╬ow鍑芥暟姹傚箓_鐧...
    绛旓細C璇█涓绠x鐨刵娆℃柟鍙互鐢ㄥ簱鍑芥暟鏉ュ疄鐜般俤oublepow(doublex锛宒oubley)锛沺ow()鐢ㄦ潵璁$畻浠涓哄簳鐨剏娆℃柟鍊硷紝鐒跺悗灏嗙粨鏋滆繑鍥炲彲鑳藉鑷撮敊璇殑鎯呭喌锛氬鏋滃簳鏁皒涓鸿礋鏁板苟涓旀寚鏁皔涓嶆槸鏁存暟锛屽皢浼氬鑷磀omainerror閿欒銆傚湪C璇█涓紝10鐨刵娆℃柟鍙互琛ㄧず涓簆ow(10锛宯)銆傚叾涓璸ow鍑芥暟鍦ㄥご鏂囦欢math.h涓紝鎵浠ヨ皟鐢ㄨ鍑芥暟鐨...
  • c璇█寰幆缁撴瀯姹俋鐨凬娆℃柟
    绛旓細include "stdio.h"void main(){...//鍦╩ain鍑芥暟閲屽紩鐢ㄤ笅闈㈢殑鍑芥暟}//寰幆姹俋鐨凬娆℃柟鐨勫嚱鏁癲ouble power(double x, int n){ double val=1.0; //锛堝垵濮嬪寲杩斿洖鍊硷級while(n--) //锛堝惊鐜疦娆★紝N娆℃柟锛塿al=val*x; //锛堟瘡娆′箻浠锛岀浉褰撲簬涔樹互1娆℃柟锛塺eturn(val); //锛堣繑鍥炵粨鏋滐級}...
  • 缂栫▼C璇█:缂栦竴涓嚱鏁,璁$畻X鐨凬娆℃柟,N鏄潪璐熸暣鏁,璋冪敤姝ゅ嚱鏁拌绠7.01...
    绛旓細include<stdio.h>#define N 5float xdeN(float x, int k);void main(){ float a=7.01,b;int i;b=xdeN(a,N);printf("%f\n",b);}float xdeN(float x, int k){ int i;float sum=1;for(i=1;i<=k;i++)sum=sum*x;return sum;} 鎴戝啓鐨勭▼搴忔姣旇緝绠鍗曪紝鑳藉瀹炵幇绋嬪簭鐨瑕佹眰...
  • 绋嬪簭瀹炵幇璋冪敤鍑芥暟power姹倄鐨刵娆℃柟,鐢–璇█
    绛旓細include <stdio.h> void main(){ int m,n;scanf("%d%d",&m,&n);int power(int x,int y);printf("%d\n",power(m,n));} int power(int x,int y){ int c;if(y==1)c=x;else if(y<=0)printf("閿欒");else c=power(x,y-1)*x;return c;} ...
  • C璇█ 鍑芥暟鍔熻兘鏄绠x鐨刵娆℃柟
    绛旓細C璇█涓绠x鐨刵娆℃柟鍙互鐢ㄥ簱鍑芥暟鏉ュ疄鐜般傚叿浣撶殑浠g爜濡備笅锛歩nclude <stdio.h> include <math.h> int main( ) {printf("%f",pow锛坸锛宯)锛夛紱return 0锛泒 C璇█鏄竴绉嶇粨鏋勫寲璇█锛屽畠鏈夌潃娓呮櫚鐨勫眰娆★紝鍙寜鐓фā鍧楃殑鏂瑰紡瀵绋嬪簭杩涜缂栧啓锛屼笖c璇█鐨勫鐞嗗拰琛ㄧ幇鑳藉姏閮介潪甯哥殑寮哄ぇ锛屼緷闈犻潪甯稿叏闈㈢殑杩愮畻绗...
  • 鐢–璇█绋嬪簭璁捐 姹倄鐨刵娆℃柟鐨勫嚱鏁
    绛旓細math.h搴撻噷鏈夎繖涓嚱鏁帮紝pow(x,n)锛屼篃鍙互鑷繁鐢ㄥ惊鐜潵鍐 long fun(int x,int n){ long p=1; int i;for (i=1;i<=n;i++)p*=x;return p;} 鍦ㄤ富鍑芥暟main()涓紝鐩存帴璋冪敤fun鍑芥暟鍗冲彲
  • 杈撳叆瀹炴暟x鍜屾鏁存暟n,璁$畻x鐨刵娆℃柟 姹c璇█
    绛旓細鐢╢or璇彞锛歩nclude <stdio.h>void main(){int i,n;float x,s=1;scanf("%f%d",&x,&n);for(i=1;i<=n;i++)s*=x;printf("璁$畻缁撴灉: %f",s);}鐢╳hile璇彞锛歩nclude <stdio.h>void main(){int i,n;float x,s=1;scanf("%f%d",&x,&n);while(i<=n) {s*=x;i++;}...
  • C璇█閲X鐨凬娆℃柟
    绛旓細鍦ㄥ墠闈㈠姞涓婃暟瀛﹀嚱鏁扮殑澶存枃浠#include"math.h"璋冪敤鍑芥暟pow 瀹氫箟double x,n;鐒跺悗灏嗕竴涓彉閲忕瓑浜巔ow(x,n)锛岄偅涓彉閲忓氨鏄X鐨凬娆℃柟
  • C璇█ 鐢ㄩ掑綊鏂规硶姹俋鐨刵娆℃柟
    绛旓細include<stdio.h> int power(int x,int n){ if(n==0)return 1;elseif(n%2==1)return x*power(x,n-1);else{ int y=power(x,n/2);return y*y;} } int main(){ int a,b,c;printf("enter x and n:");setvbuf(stdout,NULL,_IONBF,0);scanf("%d%d",&a,&b);c=power(a...
  • 缂栫▼:缂栧啓涓涓姹倄鐨刵娆℃柟鐨勫嚱鏁(鍑芥暟鍚嶄负power),鍦ㄤ富鍑芥暟涓緭鍏鍜宯鐨...
    绛旓細include<stdio.h>double power(double x, int n){ double p=1.0; while(n>0) { p=p*x; n--; } return p;}int main(void){ double x; int n; scanf("%lf %d",&x,&n); printf("%lf\n",power(x,n)); return 0;} ...
  • 扩展阅读:c++语言入门自学 ... 一节课学会c++原视频 ... 一节课学习c++的视频 ... c语言计算x的n次幂 ... c++入门程序代码 ... c++视频教程 ... 学习c++的视频 ... c十十编程要学多久 ... cnc编程必背50个程序 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网