(1)實驗代碼(奇偶分家)
#include<stdio.h> int main() { int n,i,a,b,c; b=c=0; scanf("%d\n",&n); for(i=1;i<=n;i++){ scanf("%d",&a); if(a%2!=0&&a!=0) b++; else c++; } printf("%d %d",b,c); return 0; }
2 設計思路
(1)文字描述
第一步:仔細讀題設計實驗,首先定義變量用於存放數據,以及控制循環。
第二步:在循環中加入判斷奇數還是偶數的算法,若是奇數,奇數的計數器加1否則偶數計數器加1。最后輸出奇數和偶數分別多少即可。
(2)流程圖

3.本題調試過程碰到問題及解決辦法

經過我反復仔細的檢查,把改代碼復制到devc++上發現,在scanf程序里,沒有輸入&,所以沒有地址導致錯誤。經修改即可,都是小錯誤,因為程序比較簡單,確實找不到其他的錯誤了。
(1)實驗代碼(尋找最小值)
#include<stdio.h> int main(void) { int n,i,a,b; scanf("%d",&n); scanf("%d",&a); b=a; for(i=1;i<=n;i++){ scanf("%d",&a); if(b>a) b=a; } printf("min = %d",b); return 0; }
2 設計思路
(1)文字描述
第一步:仔細讀題想想需要幾個變量分別用來干什么,定義變量之后,在設計程序。
第二部:首先輸入的值要先存放在一個變量中,在進行循環輸入值與第一個值一一作比較,把較小的之賦值給第一個值,往此循環。得到最小值。
(2)流程圖

3.本題調試過程碰到問題及解決辦法

把改代碼放入devc++中調試,分部查看變量的值發現if條件中的判斷反了應該改為b>a,最后得到的才是最小值,否則得到的是最大值。並且改代碼中沒有給b一個值,之前應該再加上b=a,把第一次輸入的a值存到b中,再一次一次作比較。這樣更加嚴謹。
二、總結和學習進度條
1、總結這幾周所學內容、遇到的問題以及解決方法。
最近幾周老師在課上教的循環也好分支結構也好,首先我覺得理解上面很有困難,在面對一個編程題目的時候無從下手,僅僅是停留在可以按照書上打代碼的階段,不能進行獨立的思考,沒有整體的編程概念。通過mooc上的視頻進行反復了解。聽完實體課,再聽網課,反復進行訓練。顯示書上的習題搞懂之后,再進行適當的改變過程。在網上也能找到初學者可以進行編寫的c語言程序,進行反復練習,最后達到可以基本掌握這些結構和基本的題目解題思路。
2、點評3個同學的本周作業(在作業中給出被點評同學博客的超鏈接!超鏈接!),並邀請3名同學點評你的作業,無點評作業倒扣該題分數。
陶國寧作業評價超鏈接 李呈祥作業評價超鏈接 於海龍作業評價超鏈接
3、請用表格和折線圖呈現你這幾周的代碼行數和時間、博客字數和時間、涉及的知識點。


