題目一:
2.設計思路(包括流程圖),主要描述題目演算法
//由題目,設計思路如下
1.該題目可以將乙個公式拆分為三個子函式
2.宣告乙個fact()子函式用於求分子n!;然後多次呼叫這個函式
3.最後在主函式中呼叫三次函式組合成乙個公式就可的到最終的結果
4.流程圖如下:
最終的**如下:
#includedouble fact(int i);3.本題除錯過程碰到的問題及pta提交的情況說明(**注意:除錯過程必須截圖說明如何除錯,如何解決問題,pta提交的列表中的每乙個錯誤詳細說明為什麼及如何解決)編譯上傳之後出現部分錯誤,多次修改之後還是有錯誤,與同學對比,也沒有結果,便不了了之main()
double fact(int i)
題目二:
2.設計思路(包括流程圖),主要描述題目演算法
//由題目,設計思路如下
1.利用for()迴圈語句和數學公式sqrt(),先宣告乙個函式用於求2的指數冪之和
2.在主函式中需要定義整型變數n,result;
3.輸入n的值,並且把n的值傳遞給子函式
4.最後根據題目要求輸出子函式返回的值
5.流程圖如下:
最終的**如下:
#include#include3.本題除錯過程碰到的問題及pta提交的情況說明(**注意:除錯過程必須截圖說明如何除錯,如何解決問題,pta提交的列表中的每乙個錯誤詳細說明為什麼及如何解決)一開始忘記參照題目格式,出現格式錯誤,後來修改之後,便正確了double fact(int
i);main()
printf(
"result = %d
",result);
}double fact(int
i)
題目三:
2.設計思路(包括流程圖),主要描述題目演算法
//由題目,設計思路如下
1.該題目可以將乙個公式拆分為兩個子函式
2.宣告乙個sushu()子函式用於判斷素數,另外乙個用來控制迴圈
3.最後在主函式中函式
4.流程圖如下:
最終的**如下:
#include#include3.本題除錯過程碰到的問題及pta提交的情況說明(**注意:除錯過程必須截圖說明如何除錯,如何解決問題,pta提交的列表中的每乙個錯誤詳細說明為什麼及如何解決)在第一次編寫之後,總是執行不出正確答案,後來發現,自己粗心,把1當做素數來判斷,導致出現問題,後加以修改,便成功的出所要的語句。二、同學**互評int ss(int
m)main()
for(m=0;m)
}
1.我的**:
#include#include2.同學:李嘉林同學的**:int ss(int
m)main()
for(m=0;m)
}
#include#include3.我和同學的**有哪些不同?各自有哪些優勢?你更喜歡那種**的風格?李同學的**更短,也更簡單,我思考問題複雜化了,我的更適合新手,比較喜歡她的**三、截圖本週題目集的pta最後排名int sushu(int
n) }
return1;
} int
main()
for(i=0;i)
else printf("
no\n");
}}
四、本週學習總結
1.本週你學會了什麼?
1.本週學會簡單的宣告乙個函式,呼叫函式;
2.以及宣告函式過程的引數的選擇
3.學會了如何把乙個複雜的函式拆分為多個簡單的函式
2.本週的內容,還有那些內容不會?
1. 一些較複雜的函式還不會如何宣告,比如指數型的函式,對於引數總是容易弄錯
pta實驗作業
題目二陣列練習 void main int x,i,j 6 printf 原來的陣列從小到大順序如下 n printf 12,17,20,25,28,30 n printf 請輸入要插的數 n scanf d x a 0 x i j while a i x a i x j for i 1 i j i...
一 PTA實驗作業
本週要求挑選3道題目寫設計思路,除錯過程。設計思路用偽 描述。題目選做要求 順序表選擇一題 6 2,6 3,7 1選一題 單鏈表選擇一題 6 1不能選 有序表選擇一題 6 3 jmu ds 順序表刪除重複元素 6 2 jmu ds 單鏈表逆置 7 1 兩個有序鍊錶序列的合併 二.設計思路 偽 或流程...
實驗二作業
1.問題 1 用floyd演算法求解下圖各個頂點的最短距離。寫出floyd演算法的偽 和給出距離矩陣 頂點之間的最短距離矩陣 按實驗報告模板編寫演算法。2 對於下圖使用dijkstra演算法求由頂點a到頂點h的最短路徑,按實驗報告模板編寫演算法。2.解析 1 floyd 若則dist i k dis...