C語言I—2019秋作業03


1.PTA實驗作業(15分)

1570839164168

1.1為了提倡居民節約用電,某省電力公司執行“階梯電價”,安裝一戶一表的居民用戶電價分為兩個“階梯”:月用電量50千瓦時(含50千瓦時)以內的,電價為0.53元/千瓦時;超過50千瓦時的,超出部分的用電量,電價上調0.05元/千瓦時。請編寫程序計算電費。

1.1.1實驗代碼截圖:

1570839271944

1.1.2數據處理

  • 數據表達:使用x和cost兩個變量,分別表示用電量與應付電費,類型為雙精度浮點型。

  • 數據處理:利用了if-else語句,屬於分支結構,表達式為cost=(x-50)0.58+500.53和cost=x*0.53。

    1.1.3 PTA提交列表及說明

    1570840005596

    Q1:在編譯器嘗試編譯時容易掉逗號,空格數會點多,小括號用着用着就多了或者少了 A1:與同學答案對比,一步步·看,眼睛都快瞎了

1.2本題要求編寫程序,根據輸入的三角形的三條邊a、b、c,計算並輸出面積和周長。注意:在一個三角形中, 任意兩邊之和大於第三邊。三角形面積計算公式:area=√s(s−a)(s−b)(s−c),其中s=(a+b+c)/2。

1.2.1實驗代碼截圖:

img

1.2.2數據處理

  • 數據表達:使用a,b,c,s四個整型變量與area,perimeter兩個雙精度浮點型變量。

  • 數據處理:if-else語句,分支結構,表達式為area=sqrt(s(s-a)(s-b)(s-c)),perimeter=a+b+c,cost=x*0.53。

    1.2.3 PTA提交列表及說明

    15708403875901570840422417

    1570840351948

    Q1:以第二題為例子,最開始答案錯誤,找不到,最后到處該,連編譯都弄錯了,最后還是看書尋找答案,以及同座一起完成

    A1:洗把臉,喝口水穩定心態,不斷的干,不慫

    注:1570840691139

    不知道為什么我看不了自己的提交列表,沒辦法發所有提交圖

    1.3中國有句俗語叫“三天打魚兩天曬網”。假設某人從某天起,開始“三天打魚兩天曬網”,問這個人在以后的第N天中是“打魚”還是“曬網”?

    1.3.1實驗代碼截圖:

    img

1.3.2數據處理:

  • 數據表達:N和x兩個整型變量來分別表示第N天與N除5的余數x,余數為1時打魚,余數為2,3時曬網。

  • 數據處理:if-else語句,分支結構,表達式為x=N%5。

    1.3.3 PTA提交列表及說明:

    1570840939984

    Q1:編譯器嘗試編譯的時間主要還是空格把握問題 A1:細心!細心!細心!重要事情說3便

    22.閱讀代碼(-5——5分)

    找一份優秀代碼,理解代碼功能,並講出你所選代碼有點及可以學習的地方。

    #include<stdio.h>
    #include<math.h>
    int main()
    {
       int sushu(int n);
       int huiwen(int n);
       int n,a,b,c,i;
       scanf("%d",&n);
       while(n--)
      {
           c=0;
           scanf("%d%d",&a,&b);
           for(i=a;i<=b;i++) {
               if(sushu(i)&&huiwen(i)) {
                   printf("%d\n",i);
                   c=1;
              }
          }
           if(c==0)
               printf("Not found\n");
      }

    }

    int sushu(int n)
    {
       int i,flag=1;
       if(n==1 || n==0)
           flag=0;
       for(i=2;i<=sqrt(n);i++)
           if(n%i==0) {
               flag=0;
               break;
          }
       return flag;
    }

    int huiwen(int n)
    {
       int p,k=0;
       p=n;
       while(p!=0)
      {
           k=k*10+p%10;
           p/=10;
      }
       if(k==n)
           return 1;
       else
           return 0;
    }
  • 代碼網址

  • 輸出指定范圍內的同時是素數與回文數的數據,如果沒有,輸出“Not found

  • 優點:學習到多種函數表達方式

    3.學習總結(15分)

    3.1 學習進度條(5分)

    周/日期 這周所花的時間 代碼行 學到的知識點簡介 目前比較迷惑的問題
    9.16~9.22 6h 20 初步了解編程如何進行 編程開始的單詞有什么作用,編譯是如何進行的
    9.23~10.6 30h 30 學會運用markdown語法和了解博客園作業格式 如何在博客隨筆字體加顏色
    10.7~10.11 48h 235 學會了if語句和編程的數學函數怎么寫 while語句如何使用和電腦上表格和why手機上順序不一樣

    3.2 累積代碼行和博客字數(5分)

    時間 博客字數 代碼行數
    9.16~9.22 637 20
    9.23~10.6 1964 30
    10.7~10.11 3327 235

    img

3.3 學習感悟(5分)

請回顧自己的本周的學習過程,如果你有新的想法或者新的方法,請及時記錄下來。

  • 學習計算機語言最好的方法是什么?答曰:讀程序。 沒錯,讀程序是學習C語言入門最快,也是最好的方法。如同我,現在學習新的J#,C#等其他語言,不再是抱着書本逐行啃,而是學習它們的例程。當然,對於沒有學過任何計算機語言的初學者,最好還是先閱讀教程,學習完每一章,都要認真體會這一章的所有概念,然后不放過這一章中提到的所有例程,然后仔細研讀程序,直到每一行都理解了,然后找幾個編程題目,最好是和例程類似的或一樣的,自己試圖寫出這段已經讀懂的程序,不要以為例程你已經讀懂了,你就可以寫出和它一樣的程序,絕對不一定,不相信你就試一試吧,如果寫不出來,也不要着急,回過頭來再繼續研究例程,想想自己為什么寫不出來,然后再去寫這段程序,反反復復,直到你手到擒來為止

  •  


免責聲明!

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



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