實驗3 函式

2022-09-10 09:33:09 字數 3018 閱讀 9559

實驗任務一

//

利用區域性static變數的特性,計算階乘

#include

long

long fac(int

n);int

main()

//函式定義

插入**printf("p  = %lld\n",p);後,

//

利用區域性static變數的特性,計算階乘

#include

long

long fac(int

n);int

main()

//函式定義

練習:區域性static變數特性

#include

int func(int,int); //

函式宣告

intmain()

//函式定義

1、實驗執行結果與理論分析得到的結果一致;

實驗任務二

2-1迭代

#include void printsymbol(int n,char symbol);   //

函式宣告

2-2 遞迴

#include void printsymbol(int n,char symbol);   //

函式宣告

針對這個具體程式設計問題,對比兩種實現方式,我認為迭代的實現方式更好,因為此問題的要求較為簡單,使用迭代的方法只需for迴圈即可完成,更加方便易懂。

實驗任務三

#include long

long fun(int n); //

函式宣告

實驗任務四

#include #include 

int isprime(int

n);int

main()

}printf("\n

");printf(

"101~200之間一共有%d個非素數

",i);

return0;

}int isprime(int

n)

if(p//

有非自身的因數

實驗任務五

實驗任務六

#include double fun(int n);  //

宣告double myabs(int

實驗總結

1、收穫的具體知識點:利用實驗學習了區域性static變數的特性;了解了迭代與遞迴這兩種方法的不同處;使用遞迴法時應先找到第n項與第n-1項的關係,並以此為根據設計演算法;

2、本次實驗的體會:動手敲**之前一定要先理解題目的要求,理清邏輯、想清用什麼演算法之後再動手書寫,若寫完後再重新修改演算法邏輯會很麻煩;

3、尚存的問題:實驗任務六試了很多別的演算法都不行,但也找不出錯誤之處;(如:若將每項的正負判斷放進第二個自定義的函式,得出的執行結果不正確;以及 若不在第乙個呼叫的函式中用「1/myabs(t)」來表示每一項,而是

在第二個呼叫的函式中用"1/(a*myabs(a-1))"來確定每一項的值,執行結果也不正確。

實驗3 函式

實驗任務1 利用區域性static變數的特性,計算階乘 includelong long fac int n 函式宣告 intmain return0 函式定義 static變數p使p僅在編譯時被賦值一次1,在後續執行中用於參與累乘 新增一行列印p的值後 實驗任務2 實現方式1 迭代思維 實現方式2...

實驗3 函式

task 1 include include include include define n 80 void printtext int line,int col,char text void printspaces int n void printblanklines int n int mai...

C 實驗3 友元函式

一 問題及 檔名稱 友元函式 作 者 潘雨佳 完成日期 2016年4月8日 版 本 號 vc6.0 對任務及求解方法的描述部分 實現求距離函式的三種版本,分別利用成員函式 友元函式和一般函式求兩點間距離的函式,並設計main 函式完成測試 輸入描述 輸入兩點的座標 問題描述 求兩點的距離 程式輸出 ...