1. 程式人生 > >博客作業01—分支、順序結構

博客作業01—分支、順序結構

有時 問題 class 暑假 天數 也有 one 定義 res

1.本章學習總結

?1.1 思維導圖

技術分享圖片

?1.2本章學習體會及代碼量學習體會

?1.2.1學習體會

這周 對c語言的學習 明顯與其他同學相比較有些滯後,覺得很大原因是暑假沒有看教學視頻,課前沒有預習課本。
現在經過自己的自學以及老師的指導已經能跟上節奏了,感覺我們上課進度略微有點快,還沒教怎麽操作就直接做題了。

?1.2.2代碼累計

技術分享圖片

2.PTA總分

?2.1

技術分享圖片

技術分享圖片

? 2.2我的總分

順序結構:100
分支結構:125
總分:225

3.PTA實驗作業

?3.1PTA題目1

買U盤的那題 求可購買U盤的最大數量(當時死活算不出來)

?3.1.1算法分析

1.我是用double 定義活動的經費 funds

,U盤的單價priceint定義數量num
2.scanf輸入moneyprice的值,關鍵就是地址符& (有時候就會忘加)
3.計算num=funds/price,由於精度的偏差,需要在funds/price後面+0.000001進行計算
4.輸出num

?3.1.2代碼截屏

技術分享圖片

?3.1.3測試數據

/ 輸入1 輸入2 輸出
變量 funds price num
數據1 660.8 47.2 14
數據2 504.9 19.8 25

? 3.1.4PTA提交列表及說明

技術分享圖片

Q1:不知道輸入格式空格也有誤差,題目中運算符號兩邊都有空格
A1:經過請教學長,才得知此誤差在於空格並加了上去
Q2:對於printf()中 , 後面的字母有點不解??
A1:原來是定義的變量 ??

? 3.2PTA作業2

計算天數 要求編寫程序計算某年某月某日是該年中的第幾天。

? 3.2.1算法分析

1.需要用到for 循環語句,使月份的轉換和輸出是一個重復的操作
2.並且需要用到switch語句,它可以處理多分支問題,這道題 分為一般的三種情況,所以用兩個break 分開
3.二月比較特殊,因為閏年和非閏年不一樣,所以用if else語句將其進行篩選
4.輸入年/月/日
5.switch,break,break進行分類,case1、3、5....12,case 4、6、9、11
6.if else語句判別是否閏年
7.輸出days

? 3.2.2代碼截屏

技術分享圖片

技術分享圖片

? 3.2.3測試數據

/ 輸入樣例1 輸入樣例2 輸出樣例1 輸出樣例2
數據 2009/03/02 2000/03/02 61 62

?3.2.4PTA提交列表及說明

技術分享圖片

Q1:不知道 要用switch 語句做
A1:後面知道要用switch語句才能解決這種多分支問題了??
Q2:但是後面 用了之後還是有一些小錯誤,例如忘記加地址符等
A1:語句用對了,但還是 不夠細心,後面仔細檢查; 和空格等細節後,終於滿分了 ??

? 3.3PTA題目3

輸出三角形面積和周長

? 3.3.1算法分析

1.要用到函數math.h
2.用int定義 a,b,c;double定義面積和周長和s
3.輸入三個整數,用if else語句判別 是否能夠構成三角形
4.公式中用到sqrt求出area的值:area=sqrt(s(s-a)(s-b)*(s-c))
5.如果符合條件則用公式計算出並輸出結果,輸出結果保留兩位小數所以用%.2f

? 3.3.2代碼截屏

技術分享圖片

? 3.3.3測試數據

/ 三邊 輸出數據
數據1 5 5 3 area = 7.15;perimeter = 13.00
數據2 1 4 1 These sides do not correspond to a valid triangle

?3.3.4PTA提交列表及說明

技術分享圖片

Q1:首先,這是我做到最多次的一道題,最開始不知道要加math.h這個函數
A1:後面看書上有寫這種用到數學公式運算的要引入math.h函數
Q2:這次 地址符都記得加了,但是一直顯示編輯錯誤 ??
A1:原來是邏輯運算符沒用對,後面加上去就滿分了 ??

4.點評同學博客

評論 1
技術分享圖片

評論 2
技術分享圖片

評論 3
技術分享圖片

評論 4
技術分享圖片

評論5
技術分享圖片

以上是我對這一周學習內容的總結以及分析,同學們可以在評論區說出我的好處以及我的不足之處,大家一起學習 ??

博客作業01—分支、順序結構