1. 求平均值
【問題描述】
在一次運動會方隊表演中,學校安排了十名老師進行打分。對於給定的每個參賽班級的不同打分(百分制整數),按照去掉一個最高分、去掉一個最低分,再算出平均分的方法,得到改班級的最后得分。
【樣例輸入】
90 89 92 90 93 95 88 90 89 88
【樣例輸出】
90.125
#include <iostream> #include <iomanip> using namespace std; int main(){ //min:最小值 max:最大值 score:每次輸入的分數 sum:總分 double min=1001, max=-1, score, sum=0; for(int i=0;i<10;i++){ cin >> score; //求和已經有了 sum += score; if(min > score){ min = score; } if(max < score){ max = score; } } double avg = (sum-min-max)/8; cout << fixed << setprecision(3) << avg << endl; return 0; }
2. 打印水仙花數
【問題描述】
編程求出所有的水仙花數。水仙花數是一類特殊的三位數,它們每一個數位上的數字的立方和恰好等於這個三位數本身。
例如: 153 = 1*1*1 +5*5*5 + 3*3*3。
【樣例輸出】
153 370 371 407
#include <iostream> using namespace std; int main(){ int a, b, c; for(int i=100;i<1000;i++){ a = i/100; b = i%100/10; c = i%10; if(a*a*a+b*b*b+c*c*c==i){ cout << i << " "; } } return 0; }
3. 求平均年齡
【問題描述】
班上有學生若干名,給出每名學生的年齡(整數),求班上所有學生的平均年齡,保留到小數點后兩位
輸入:第一行有一個整數n(1<= n <= 100),表示學生的人數。其后n行每行有1個整數,表示每個學生的年齡,取值為15到25。
輸出:輸出一行,該行包含一個浮點數,為要求的平均年齡,保留到小數點后兩位。
【樣例輸入】
2
18
17
【樣例輸出】
17.50
#include <iostream> #include <iomanip> using namespace std; int main(){ int n, m; double sum=0.0; cin >> n; for(int i=0;i<n;i++){ cin >> m; sum += m; } cout << fixed << setprecision(2) << sum/n << endl; return 0; }
4. 同時被3,5,7整除的數
【問題描述】
輸出m和n之間(包括m和n)所有能夠同時被3,5,7整除的數,其中0 <= m < n <= 1000。
輸入:一行,包含兩個整數m和n,其間以一個空格間隔;
輸出:如果0到n之間沒有能同時被3,5,7整除的數,輸出0;如果有就輸出這些數字。
【樣例輸入1】
0 100
【樣例輸出1】
0
【樣例輸入2】
100 300
【樣例輸出2】
105 210
#include <iostream> using namespace std; int main(){ int m, n; int k=0; cin >> m >> n; for(int i=m;i<=n;i++){ if(i%105==0){ cout << i << " "; k++; } } if(k==0){ cout << 0 << endl; } return 0; }
5. 滿足條件的數累加
【問題描述】
將正整數 m 和 n 之間(包括 m 和 n)能被 17 整除的數累加。其中,0 < m < n < 1000。
輸入:一行,包含兩個整數m和n,其間,以一個空格間隔。
輸出:輸出一行,包行一個整數,表示累加的結果。
【樣例輸入】
50 85
【樣例輸出】
204
#include <iostream> using namespace std; int main(){ int m, n, sum = 0; cin >> m >> n; for(int i=m;i<=n;i++){ if(i%17==0){ sum += i; } } cout << sum << endl; return 0; }