3307:【例52.1】 不與最大數相同的數字之和
不與最大數相同的數字之和
題目描述
輸出一個整數數列中不與最大數相同的數字之和。
輸入格式
輸入分為兩行:
第一行為 \(N\)(\(N\) 為接下來數的個數,\(N \le 100\));
第二行為 \(N\) 個整數,數與數之間以一個空格分開,每個整數的範圍是 \(-1000,000\) 到 \(1000,000\)。
輸出格式
輸出為 \(N\) 個數中除去最大數其餘數字之和。
樣例 #1
樣例輸入 #1
3
1 2 3
樣例輸出 #1
3
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
int a[n];
int max;
for(int i=0;i<n;i++){
cin>>a[i];
}
max = a[0];
for(int i=0;i<n;i++){
if(max<a[i]) max=a[i];
}
int sum=0;
for(int i=0;i<n;i++){
if(a[i]!=max){
sum+=a[i];
}
}
cout<<sum;
}
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,max,sum=0;
cin>>n;
int a[n];
for(int i=0;i<n;i++){
cin>>a[i];
if(i==0) max=a[i];
if(max<a[i]) max=a[i];
}
for(int i=0;i<n;i++){
if(a[i]!=max){
sum+=a[i];
}
}
cout<<sum;
}
3309:練52.1 輸出成績
輸出成績
題目描述
給定n個小朋友的數學成績,求這n個小朋友的平均成績,以及輸出所有高於平均成績的數學成績(按輸入的順序輸出)。
輸入
第一行一個整數n,接下來n行每行一個小於等於100的整數(n≤1000)。
輸出
第一行是n個成績的平均值,保留3位小數。
接下來若干行輸出高於平均分的成績,每行一個數。
輸入樣例
5
10
20
30
40
60
輸出樣例
32.000
40
60
#include<bits/stdc++.h>
using namespace std;
int main(){
int n; //數字個數
double pingjun=0; // 平均分
cin>>n; //輸入數字個數
int a[n]; //定義陣列a[n]
for(int i=0;i<n;i++){ //遍歷輸入陣列元素,並累加求和pinjun
cin>>a[i];
pingjun+=a[i];
}
pingjun = pingjun/n; //計算平均分
cout<<fixed<<setprecision(3)<<pingjun<<endl; //保留3位小數輸出平均分
for(int i=0;i<n;i++){ //遍歷輸出陣列元素(大於平均分的陣列元素)
if(pingjun<a[i]){
cout<<a[i]<<endl;
}
}
}
3310:練52.2 陣列間的比較大小
題目描述
有兩個陣列\(a\)和\(b\),各有\(10\)個元素,將它們對應的逐個比較(即\(a[0]\)與\(b[0]\)比,\(a[1]\)與\(b[1]\)比,餘此類推)。
如果\(a\)陣列中的元素大於\(b\)陣列中的相應元素的數目多於\(b\)陣列中元素大於\(a\)陣列中相應元素的數目(例如\(a[i]>b[i]6\)次,而\(b[i]>a[i]3\)次),則判定\(a\)陣列大於\(b\)陣列。
請寫一個程式判斷\(a\)陣列和\(b\)陣列的大小關係,並統計出兩個陣列對應元素大於、等於、小於的次數。
輸入
有兩行,每一行有\(10\)個用空格隔開的整數,表示\(a\)陣列和\(b\)陣列
輸出
首先在第一行內輸出\(a\)陣列中元素與\(b\)陣列中對應元素的大於、等於、小於的次數,用空格隔開。\n若\(a\)陣列大於\(b\)陣列,則在第二行中輸出“a>b
”;若\(a\)陣列小於\(b\)陣列,則輸出“a<b
”;若兩個陣列相等,則輸出“a=b
”。\n請注意不需要輸出引號,並請注意行尾輸出換行。
輸入樣例
1 3 5 7 9 8 6 4 2 0
5 3 8 9 -1 -3 5 6 0 4
輸出樣例
4 1 5
a<b
#include<bits/stdc++.h>
using namespace std;
int main(){
int a[10],b[10];
int d=0,e=0,l=0;
for(int i=0;i<10;i++){
cin>>a[i];
}
for(int i=0;i<10;i++){
cin>>b[i];
}
for(int i=0;i<10;i++){
if(a[i]>b[i]) d++;
else if(a[i]==b[i]) e++;
else l++;
}
cout<<d<<" "<<e<<" "<<l<<endl;
if(d>l) cout<<"a>b";
else if(d==l) cout<<"a=b";
else cout<<"a<b";
}