C語言求x的y次方,自定義函數,自己的算法


 

我是一名高二中學生,初中時接觸電腦,非常酷愛電腦技術,自己百度學習了有兩年多了,編程語言也零零散散的學習了一點,想在大學學習計算機專業,所以現在准備系統的學習C語言,並在博客中與大家分享我學習中的心得與思路。希望大牛路過的時候指點指點。

可以說是第N次學習C語言了,都是學到數組和函數這里停止了,這次下定了決心要學完C語言,不光要學完,還要學好
下面是利用自定義函數寫的一個模仿pow()函數工作的一個小程序[求x的y次方]
 1 #include<stdio.h>
 2 
 3 int main(void)
 4 {
 5 
 6     double power(double x, double y);
 7     double x, y;
 8     printf("請輸入底數后按回車\n");
 9     scanf("%lf", &x);
10     printf("請輸入指數后按回車\n");
11     scanf("%lf", &y);
12     printf("%lf的%lf次方是%lf", x, y, power(x, y));
13     return 0;
14 
15 }
16 
17 double power(double x, double y)
18 {
19     double a, b ,c=x;
20     for( a = 1; a < y; a++)
21     {
22         b = x;
23         c = c*b;
24     }
25 
26     return c;
27 }
上面代碼的大體思路是這樣的
利用scanf()函數接受用戶輸入的底數x,指數y。並賦值給x,y,在printf()函數中調用power()[自定義函數]
power()[自定義函數]是這樣工作的:
a變量:儲存結束循環的值
b變量:用來保證底數不變
c變量:用來保證底數相乘y-1次的結果
for()循環:
a<y:來保證x自乘y次以達到xy次方
b=x:用來保證底數不變
c=c*b:前面c已經被賦值為x,第一次循環時c被作為底數,底數與底數自乘,之后是作為底數被相乘y-1次的結果來與底數相乘

如此簡單地程序講解的這么粗糙,我都有些不好意思發了,但還是下定決心發了,希望看到的大牛給我指點指點,新手看不懂的地方也告訴我一下,我在改進下講解方法,謝謝。



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM