一、PTA實驗作業
題目1.溫度轉換
本題要求編寫程序,計算華氏溫度150°F對應的攝氏溫度。計算公式:C=5×(F−32)/9,式中:C表示攝氏溫度,F表示華氏溫度,輸出數據要求為整型。
1.實驗代碼
int fahr,celsius;
fahr=150;
celsius=5*(fahr-32)/9;
printf("fahr = %d, celsius = %d",fahr,celsius);
2.設計思路
- 第一步:定義變量C表示攝氏溫度,定義整數類型變量F表示華氏溫度。
- 第二步:將150賦值給fahr。
- 第三步:列出計算公式 celsius=5*(fahr-32)/9來計算攝氏溫度。
- 第四步:按照格式"fahr = %d, celsius = %d"輸出150°F對應的攝氏溫度。
3.本題調試過程碰到問題及解決辦法
- (1)printf有時會漏了f寫成print導致錯誤,解決方法:多打代碼多練習。
- (2)輸出時格式錯誤,解決方法:將輸出內容從題目中復制下來。
題目2.將x的平方賦值給y
假設x的值為3,計算x的平方並賦值給y,分別以“y = x ∗ x”和“x ∗ x = y”的形式輸出x和y的值。
1.實驗代碼
int x,y;
x = 3;
y = x * x;
printf("%d = %d * %d\n",y,x,x);
printf("%d * %d = %d",x,x,y);
2.設計思路
- 第一步:定義兩個整形變量x,y。
- 第二步:將3賦值給x。
- 第三步:列出計算公式y = x * x來計算。
- 第四步:按格式輸出“y = x ∗ x”以及“x ∗ x = y”兩個內容。
3.本題調試過程碰到問題及解決辦法
- (1)題目輸出格式指出輸出一個結果后換行我沒有換行導致多次錯誤,解決方法:認真審題,認真看清題目要求。
- (2)輸出時x,y,x+y順序錯亂,解決方法:將printf”“后的內容按%d對應的順序填寫。
題目3:是不是太胖了
據說一個人的標准體重應該是其身高(單位:厘米)減去100、再乘以0.9所得到的公斤數。已知市斤是公斤的兩倍。現給定某人身高,請你計算其標准體重應該是多少?(順便也悄悄給自己算一下吧……)
1.實驗代碼
int H;
double W;
scanf("%d",&H);
W=(H-100)*0.9*2;
printf("%.1f",W);
2.設計思路
- 第一步:定義一個整數類型變量H表示身高以及一個雙精度浮點型的變量W表示體重。
- 第二步:輸入H。
- 第三步:通過公式W=(H-100)0.9 2來計算。
- 第四步:輸出W,並且保留一位小數。
3.本題調試過程碰到問題及解決辦法
- (1)輸出結果錯誤,小數部分被省略,解決方法:將W定義成double類型的變量,並且輸出時將%d改為%f。
- (2)輸出結果沒有保留一位小數,解決方法:將%f變為%.1f表示保留一位小數。
- (3)在scanf中忘記&,導致不能編譯,解決方法:認真查看代碼,多寫,記住它。
題目4: 輸出各位數字
給定一個三位正整數,輸出其百位數字、十位數字及個位數字。
1.實驗代碼
int a,b,c,d;
scanf("%d",&a);
b=a/100;
c=(a/10)%10;
d=a%10;
printf("%d,%d,%d",b,c,d);
2.設計思路
- 第一步:定義四個整數類型a表示正整數,b表示百分位,c表示十分位,d表示個位。
- 第二步:輸入a。。
- 第三步:用b表示百分位,並列出算式b=a/100進行計算。
- 第四步:用c表示十分位,並列出算式c=(a/10)%10進行計算。
- 第五步:用d表示個位,並列出算式d=a%10進行計算。
- 第六步:按照百分位十分位個位的順序輸出。
3.本題調試過程碰到問題及解決辦法
- (1)不知道怎么表示百分位十分位以及個位,解決方法:詢問同學。
- (2)常將"打錯,解決方法:換成英文打出即可。
二、截圖本周題目集的PTA提交列表及最后排名
提交列表:
最后排名:
三、本周學習總結
1.你學會了什么?
我學會了運用不同的數據類型進行數據表達,例如double,int,了解了順序控制結構,分支控制結構以及循環控制結構,學會了如何運用運用順序控制結構以及if的分支控制結構,了解了C語言中的主要單詞與簡單的語句,對算法有了一定的了解,學會了編寫簡單的程序以及程序的編譯與運行,還學會了運用常用的數學函數。最重要的是我寫出了人生的第一個小程序!!!
# include<stdio.h>
int main (void)
{
printf("Hello World!\n");
return 0 ;
}
2.本周的內容,你還不會什么?
對於如何寫算法還有點摸不到門路,寫算法時有點想當然,寫的不夠具體,例如我會寫列出算式進行計算或者按照格式輸出,但沒有寫出算式以及沒有寫出到底是什么格式。對於不同類型的變量運算時,還有點掌握的不透徹,例如double型的變量與int型的變量計算以及輸入輸出時的格式。
3.你碰到什么困難,打算如何解決?
對於如何寫算法不太理解,打算自己上網百度搜索關於算法進行學習。對於不同類型的變量掌握不夠透徹,我打算先認真的看慕課再多找一些題目例如翁愷在pta上的題目做,通過不斷地做題讓自己掌握透徹。