吉林大学超星MOOC学习通高级语言程序设计 C++ 实验01 顺序程序设计(2021级)
1.?(程序題)
題目編號:Exp01-Basic02,GJBook3-02-04【計2015級期中試題】
題目名稱:溫度轉換
題目描述:已知攝氏溫度(℃)與華氏溫度(℉)的轉換關系是:
? ? ? ? ? ? ??? ? ? ?
編寫一個攝氏溫度(℃)與華氏溫度(℉)進行轉換的程序,輸入攝氏溫度,輸出華氏溫度。
輸入:從鍵盤隨機輸入一個攝氏溫度數據。題目保證測試數據符合要求。
輸出:輸出對應的華氏溫度數據,保留小數點后3位。
提示:OJ環境要求程序運行時輸入和輸出要和樣例一模一樣,因此在此平臺上提交的程序不要有多余的輸入提示信息和換行,否則會判錯哦。
樣例1:
輸入:
5??
輸出:
41.000
樣例2:
輸入:
27?
輸出:
80.600
#include <iostream> #include <iomanip> using namespace std;int main() {double c,f;cin >> c;f = (9.0 / 5.0)*c + 32;cout << fixed << setprecision(3) << f << endl;system("pause");return 0; }ps:有細心的小伙伴一定看到了多了一個<iomanip>的頭文件,它其實是幫助我們輸出保留小數點后3位的華氏溫度
C++里面標準輸出控制小數點后幾位稍微有些麻煩
不像C里那么直接用printf輸出即可(c++也可以用這種方法)
printf("%.3f",f);2.?(程序題)
題目編號 :Exp01-Enhance01,GJBook3-02-11
題目名稱:點到平面距離
題目描述:
從點(x, y, z ) 到平面 Ax+By+Cz+D=0 的距離 d 的公式是
編程序,輸入點的坐標 x、y、z及平面方程系數 A 、B 、C 、D,計算并輸出d。
提示:math.h頭文件中包含fabs和sqrt函數分別用來求解絕對值和平方根。
輸入:從鍵盤隨機第一行輸入一個三維點坐標,第二行依次讀入直線方程系數A、B、C和D。
輸出:輸出對應的點到面的距離,保留小數點后3位。
樣例1:
輸入: 1?1?1 1?2?3?4 輸出: 2.673樣例2:
輸入: -3.1?0.2?3.4 5.3?1.8?0.1?0輸出: 2.810 #include <iostream> #include <iomanip> #include <cmath>using namespace std;int main() {double x, y, z,d;double A,B,C,D;cin >> x >> y >> z;cin >> A >> B >> C >> D;d = fabs(A * x + B * y + C * z + D) / sqrt(A * A + B * B + C * C);cout << fixed << setprecision(3) << d << endl;return 0; }<cmath>頭文件用于進行數學公式運算
3.?(程序題)
題目編號 :Exp01-Basic04,GJBook3-02-05題目名稱:五則運算題目描述:
編寫程序,輸入兩個整數,分別求它們的和、差、積、商、余數并輸出。
輸入:
從鍵盤隨機輸入兩個整數。題目保證測試數據符合要求。
輸出:
依次為所輸入的兩個整數的和、差、積、商和余數5個整數, 數字之間以1個英文空格間隔。
樣例1:
輸入: 10??3 輸出: 13?7?30?3?1樣例2:
輸入: 9??2 輸出: 11?7?18?4?1 #include <iostream>using namespace std;int main() {int x, y;cin >> x >> y;cout << x + y << " " << x - y << " " << x * y << " " << x / y << " " << x % y;return 0; }4.?(程序題)
題目編號 :Exp01-Enhance02
題目名稱:時間轉換
題目描述:編程序,輸入午夜后的某秒數,輸出該秒的小時:分種:秒。
輸入:從鍵盤輸入秒數。
輸出:秒數轉換后的小時:分種:秒,其中小時、分鐘、秒都都是兩位整數,數位不足用零補充。
樣例1:
輸入: 50000 輸出: 13:53:20樣例2:
輸入: 96 輸出: 00:01:36ps:不要把簡單問題復雜化(看到有的同學開始用if條件了)
#include <iostream> #include <iomanip>using namespace std;int main() {int a;int x, y, z;cin >> a;x = a % (3600 * 24) / 3600;y = a % 3600 / 60;z = a % 60;cout << setfill('0') << setw(2) << x << ":";cout << setfill('0') << setw(2) << y << ":";cout << setfill('0') << setw(2) << z << endl;return 0; }ps:
C++數位不足用0補充的方法:<iomanip>頭文件
setfill('x')設置填充字符
stew()? 設置
C數位不足用0補充就直接用printf即可
printf("%0ad",n);0代表不夠位數用0補充
a表示輸出長度為a的整數
5.?(程序題)
題目編號:Exp01-Basic03,GJBook3-02-06
題目名稱:求平均值
題目描述:
編寫程序,輸入3個浮點數,求它們的平均值并輸出。
輸入:
從鍵盤隨機輸入3個浮點數。
輸出:
輸出3個浮點數的平均值,小數點后保留3位。
樣例1:
輸入: 1.5??1.7??3.1 輸出: 2.100樣例2:
輸入: 1??2??3 輸出: 2.000 #include <iostream> #include <iomanip>using namespace std;int main() {double a, b, c;double d;cin >> a >> b >> c;d = (a + b + c) / 3;cout << fixed << setprecision(3) << d << endl;return 0; }6.?(程序題)
題目編號:Exp01-Basic01,GJBook3-02-03
題目名稱:前驅后繼字符
題目描述:編寫程序,輸入一個大寫字母,然后順序輸出該字母的前驅字母、該字母本身、它的后繼字母,此題不考慮輸入字母為‘A’和‘Z’的情況。
輸入:從鍵盤輸入任何一個不是‘A’或‘Z’的大寫字母。題目已保證測試數據符合要求。
輸出:所輸入字母的前驅、本身和后繼三個字母,字母間無間隔符號。
樣例1:
輸入: B 輸出: ABC樣例2:
輸入: W 輸出: VWX #include <iostream> #include <iomanip>using namespace std;int main() {char a,b,c = 0;cin >> a;b = a - 1;c = a + 1;cout << b << a << c << endl;return 0; }ASCII碼入門
總結
以上是生活随笔為你收集整理的吉林大学超星MOOC学习通高级语言程序设计 C++ 实验01 顺序程序设计(2021级)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux ifconfig命令参数及用
- 下一篇: 给UIWebView增加搜索栏