一、PTA實驗作業
1.溫度轉換
本題要求編寫程序,計算華氏溫度150°F對應的攝氏溫度。計算公式:C=5×(F−32)/9,式中:C表示攝氏溫度,F表示華氏溫度,輸出數據要求為整型。
(1).實驗代碼
int celsius,fahr;
fahr=150;
celsius=5*(fahr-32)/9;
printf("fahr = 150, celsius = %d",celsius);
(2)設計思路
- 定義整數變量fahr,celsius,fahr存入華氏溫度,celsius存入攝氏溫度
- 賦值fahr=150
- 進行運算
(3)調試問題及解決方法
- 在scanf的語句中忘記在變量前面加入&
- 沒有在main函數的最后加上return 0;
- 沒有按照題目要求的輸出
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%d * %d = %d",y,x,x,x,x,y);
(2)設計思路
- 先定義整數變量x,y
- 賦值x=3
- 計算y=x*x的值
- 按題目要求,以“y = x ∗ x”和“x ∗ x = y”的形式輸出x和y的值
(3)調試問題及解決方法
- 在Devc++中編譯時發現出錯,原因是有一個中文字符的;
- %d的%錯寫成&
- %d與變量沒有一一對應
3.是不是太胖了
據說一個人的標准體重應該是其身高(單位:厘米)減去100、再乘以0.9所得到的公斤數。已知市斤是公斤的兩倍。現給定某人身高,請你計算其標准體重應該是多少?(順便也悄悄給自己算一下吧……)
(1).實驗代碼
int height;
double weight;
scanf("%d",&height);
weight=(height-100)*0.9*2;
printf("%.1f",weight);
(2)設計思路
- 定義整數變量height(身高),雙精度浮點型變量weight(體重)
- 輸入height(身高)的值
- 按公式weight=(height-100)0.92進行運算得出weight(體重)的值
- 以保留一位小數點的形式輸出weight(體重)的值
(3)調試問題及解決方法
- PTA的格式錯誤,原因是在scanf語句前多了一句提示輸入的printf語句
- 把體重一起定義成了整數型變量
4.輸出各位數字
給定一個三位正整數,輸出其百位數字、十位數字及個位數字。
(1).實驗代碼
int a;
scanf("%d",&a);
printf("%d,%d,%d",a/100,(a/10)%10,(a%100)%10);
(2)設計思路
- 定義整數變量a
- 若要輸出三位正整數的百位數字,則要將三位正整數乘0.01,因為變量形式的關系,小數點后的數字會被舍去
- 若要輸出三位正整數的十位數字,則要將三位正整數乘0.1,再求10的余數,就能輸出十位數
- 若要輸出三位正整數的個位數字,則要將三位正整數先求100的余數,再求10的余數,就能輸出個位數
- 簡化程序,將計算放在printf語句里進行,並用逗號隔開三個數字
(3)調試問題及解決方法
- 數學表達式在寫成代碼的計算中出的錯,如a/10%10之類
- 在scanf語句之前又寫了個printf語句
二、截圖本周題目集的PTA提交列表及最后排名。
1、PTA提交列表

2、PTA排名

三、本周學習總結
1.你學會了什么?
- 學習了如何寫出簡單的代碼語句,以及如何使用Dev c++進行簡單的程序調試,
- 學習了如何用代碼表達出數學的表達式,
- 學習了scanf、printf、if-else語句的簡單應用,
- 明白了如何使用int、float、double之類的變量類型。
2.本周的內容,你還不會什么?
- 循環語句的應用
- 對各個變量類型所對應的讀入所使用的 "%" 還不是很清楚
3.你碰到什么困難,打算如何解決?
- 對題目的思考程度不夠深,總是要重復多次才能做對;多看書本,多思考題目的要求
