2024年4月27日 C++上课记录

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";
}
posted @ 2024-04-28 11:22  Pudding10335  阅读(9)  评论(0编辑  收藏  举报