第一次作業


分支結構中題目7-8計算個人所得稅:

1.實驗代碼:

 

# include <stdio.h> 
# include <math.h> 
int main()
{
  float s,y;
  scanf("%f",&s);
  if (s <= 1600)
  {
    y = 0;
  }
 else if ((s > 1600)&&(s<=2500)){
    y = (s - 1600) * 0.05;
  }
 else if ((s > 2500)&&(s<=3500)){
    y = (s - 1600) * 0.1;
  }
 else if ((s > 3500)&&(s<=4500)){
    y = (s - 1600) * 0.15;
  }
else{
    y =(s - 1600) * 0.2;
  } 
  printf("%.2f",y);
  return 0;
}

2 設計思路:用else-if語句將多種情況分開,需調用數學函數<math.h>

第一步:取兩個浮點數s(薪水)y(個人所得稅),輸入s。

第二步:利用if 語句判斷是否滿足 s<=1600的情況,若滿足執行該語句輸出為0,若不滿足則進入下列語句判斷條件是否滿足,以此類推。最終輸出結果保留兩位小數“%.2f"。

流程圖:

 

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

1)沒有用到與的邏輯關系符。

2)忘記打&。

3)else-if語句不熟練。

解決方案,尋找並修改錯誤,將代碼重復寫了幾遍,找了幾道類似的else-if語句的題進行解決。

 循環結構1 7-1 統計學生平均成績與及格人數

1.實驗代碼:

#include<stdio.h>
#include<math.h>
int main()
{
  int n,i,a,count=0,sum = 0;
  float d;
  scanf("%d", &n);
  if ( n == 0)
  {
    printf("average = 0.0\n");
    printf("count = 0");
  }else
  {
    for (i = 0; i < n; i++)
  {
    scanf("%d", &a);
    sum = sum + a;
    if (a >= 60)
    count++;
  }
  d = (float)sum /(float) n;
  printf("average = %.1f\n", d);
  printf("count = %d", count);
  }
}

2 設計思路:利用循環結構輸入一批學生的成績,計算平均成績,並統計不及格人數。

1)定義n為輸入數據數,i為循環變量,a輸入的學生成績,count計數初始值為0,sum成績和值,平均值d。

2)判斷輸入人數是否為0,若為0輸出count=0,d=0。只有當輸入人數不為0時才有d=sum/n。

3)添加一個for循環,若輸入人數不為0,進入該循環,計算成績和值(sum=sum+a)如果成績大於60即為及格成績,count+1。

4)計算平均值,輸出平均值保留1位小數,輸出及格人數。

流程圖:

 

 

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

結構錯誤:在判斷成績是否及格后計算sum值。

解決方法將"sum=sum+a;"輸入a值的語句之后,先對sum進行計算后判斷成績是否及格,並進行統計。

循環2 7-7 尋找250:

1.實驗代碼:

#include <stdio.h>
int main()
{
  int n,count=0;
  while(n!=250){
    scanf("%d",&n);
    count++;
  }
  printf("%d",count);
  return 0;
}

2 設計思路:

1)定義一個n,利用循環尋找n=250,當n=250時停止輸入,count初始值為0,用來記錄輸入的第幾個數是250。

2) 沒輸入一個值count=count+1直到n=250時。

3)輸出count值。

流程圖:

3.本題調試過程碰到問題及解決辦法:語句的不熟練出現的一些小錯誤和題目中給出的是計數從1開始,就將count定義為0。

解決方案將count=0。

 

總結學習進度條:

1、總結這幾周所學內容、遇到的問題以及解決方法:

這幾周主要重新復習了之前講過的知識,和一些作業題目。把while for do while語句的一些使用

例如:

(1)循環次數已知使用for循環語句實現比較好

(2)循環次數未知,但循環條件在進入循環時明確使用while循環語句實現比較好

(3)循環次數未知,且循環條件在進入循環時未知,需要在循環體中明確使用do while循環語句實現比較好

遇到的問題還是對一些作業中的題目不理解,知道可以這么做,但不知道為什么這么做,暫且的解決方法還是將題目多次拿出來看。

我點評的三名同學:

1)李銳同學:

2)楊士奇同學:

3)李睿淇同學:

 

 

 


免責聲明!

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



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