我是一名高二中學生,初中時接觸電腦,非常酷愛電腦技術,自己百度學習了有兩年多了,編程語言也零零散散的學習了一點,想在大學學習計算機專業,所以現在准備系統的學習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次以達到x的y次方
b=x:用來保證底數不變
c=c*b:前面c已經被賦值為x,第一次循環時c被作為底數,底數與底數自乘,之后是作為底數被相乘y-1次的結果來與底數相乘
如此簡單地程序講解的這么粗糙,我都有些不好意思發了,但還是下定決心發了,希望看到的大牛給我指點指點,新手看不懂的地方也告訴我一下,我在改進下講解方法,謝謝。