第二次作業


作業要求https://edu.cnblogs.com/campus/hljkj/CS201802/homework/2292

PTA作業

第三次作業 題目3-1 計算存款利息

1.實驗代碼

題目:本題目要求計算存款利息,計算公式為interest=money×(1+rate)。輸入在一行中順序給出三個正實數money、year和rate,以空格分隔。在一行中按“interest = 利息”的格式輸出,其中利息保留兩位小數。

代碼:

#include <stdio.h>
#include <math.h>
int main ()
{
  int money;
  double year,rate,interest;
  
  scanf("%d %lf %lf",&money,&year,&rate);
  interest=money*pow(1+rate,year)-money;
  printf("interest = %.2lf\n", interest);
  return 0;
}

 

代碼代碼代碼​year​​money,其中interest為存款到期時的利息(稅前),mon2222.解題思路  

(1)算法
    第一步:編譯預處理命令。調用庫函數時,要用#include命令將相應的頭文件包含到源程序中。因為程序中需要調用輸入輸出函數和數學函數,所以要加入#include<stdio.h>和#include<math.h>
    第二步:定義主函數main()
    第三步:定義一個整型變量money
    第四步:定義三個雙精度浮點型變量double year,rate,interest
    第五步:調用輸入函數scanf()函數輸入money,year,rate的值
    第六步:調用數學函數計算interest
    第七步:調用輸出函數printf()輸出interest的計算結果
    第八步:返回一個整數0

(2)流程圖

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

  問題:使用輸入函數scanf()時沒有在變量名前加“&”符號,編譯結果如圖所示


  經過一系列調試,我找出了錯誤。

  解決辦法:通過查找相關書籍,知道了錯在沒有加“&”符號,於是添加了“&”符號后,錯誤得以解決。

 

 

第四次作業 題目4-2 高速公路超速處罰

1.實驗代碼

題目:按照規定,在高速公路上行使的機動車,達到或超出本車道限速的10%則處200元罰款;若達到或超出50%,就要吊銷駕駛證。請編寫程序根據車速和限速自動判別對該機動車的處理。輸入在一行中給出2個正整數,分別對應車速和限速,其間以空格分隔。在一行中輸出處理意見:若屬於正常行駛,則輸出“OK”;若應處罰款,則輸出“Exceed x%. Ticket 200”;若應吊銷駕駛證,則輸出“Exceed x%. License Revoked”。其中x是超速的百分比,精確到整數。

代碼:

 

#include<stdio.h>
int main(void)
{
  int v,l,a;
  double b;
  scanf("%d %d",&v,&l);
  a = v - l;
  b = a * 100.0 / l;
  if(b<10)
  printf("OK");
  else if(10<=b && b<50)
  printf("Exceed %.0f%%. Ticket 200",b);
  else
  printf("Exceed %.0f%%. License Revoked",b);
  return 0;
}

 


2 解題思路  

(1)算法
    第一步:程序中需要調用輸入輸出函數,要加入#include<stdio.h>
    第二步:定義主函數main()
    第三步:定義三個整型變量v(實際速度),l(限速度),a(達到或超出本車道限速的速度)
    第四步:定義一個雙精度浮點型變量b(達到或超出本車道限速的百分比)
    第五步:由題意得應運用多分支結構,所以我采用了else-if結構,將題中情況分為三類,分別為正常行駛,達到或超出本車道限速的10%,達到或超出本車道限速的50%
    第六步:返回一個整數0

(2)流程圖

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

   問題:錯誤添加分號:在“if(b<10)”后錯誤的多加了一個分號,編譯結果如圖所示


   經過調試和查閱相關書籍,我找到了錯誤的地方。

   解決辦法:通過查找相關書籍,知道了else-if結構的一般形式為: if(表達式1)
                                                      語句1;
                                                     else if(表達式2)
                                                      語句2;
                                                     ...
                                                     else if(表達式n-1)
                                    語句n-1;
                                                     else
                                                      語句n;

             於是我刪去了“;”符號后,錯誤得以解決。

 

 

個人總結

(1) *本周我學習到的內容:輸入函數scanf(),用if-else語句實現的二分支結構和用else-if語句,嵌套的if語句,嵌套的if-else語句實現的多分支結構。

     *收獲:學習了許多C語言的知識,對C語言有了更深的了解。

           認識到了自己查閱資料的重要性。當遇到不會的地方,就要靠自己翻書或上網查資料來解決問題。

           發現自己有丟三落四的壞習慣,在以后的學習生活中要努力克服並改正。

(2)*難點:if-else語句,else-if語句的異同和熟練使用。

          對題目的理解不到位,有時面對一道題無從下手。

    *措施:多看相關的書籍,多打代碼多練習。

          仔細審題,遇到難懂的地方就反復認真地多讀幾遍,要有知難而上的精神。

 

 

累積代碼行數、累積博客字數:

第幾周 代碼行數 博客字數
第一周 27 0
第二周 34 200
第三周 21 600

 

 

   

 

 

  https://www.cnblogs.com/mayijing/p/9905748.html

     https://www.cnblogs.com/zst1/p/9912320.html

        https://www.cnblogs.com/chumengGTRlhz/p/9885207.html

 


免責聲明!

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



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