作业 一堆数组

歌唱比赛评分

题目描述

四(1)班要举行一次歌唱比赛,以选拔更好的苗子参加校的歌唱比赛。评分办法如下:设N个评委,打N个分数(0 <= 每个分数<= 10),去掉一个最高分,去掉一个最低分,剩下的评委的平均分即为该选手的最后得分。但是选手太多了,靠人工计算每个选手的得分太慢太麻烦。你能不能帮帮他们,设计一个程序让计算机来算出选手的最后得分呢?

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int n,b=0,c=11,d=0;
	int a[20];
	cin>>n;
	for(int i =0;i<n;i++)
	{
		cin>>a[i];
		if(a[i]>b)
		{
			b=a[i];
		}
		d=d+a[i];
	}
	for(int i =0;i<n;i++)
	{
		cin>>a[i];
		if(a[i]<c)
		{
			c=a[i];
		}
	}
	cout<<fixed<<setprecision(2)<<(d-c-b)/(n-2);
}

最大数

题目描述n个数中最大的那个数在哪里?输出其位置,若有多个最大数则都要输出

输入

第一行:n(3 <= n <= 10)第二行:空格隔开的n个数

输出

输出若干个数,表示最大数的位置,每行一个。

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int n,b=0,d=0;
	int a[20];
	cin>>n;
	for(int i =0;i<n;i++)
	{
		cin>>a[i];
		if(a[i]>b)
		{
			b=a[i];
			d=i;
		}
	}
	cout<<d<<endl;
}

摘苹果

题目描述

小红来到苹果园,帮园长摘苹果,园长请小红把摘完的苹果的最小的那个去掉(如果有多个最小的苹果,那么都要去掉),剩余的苹果算一下平均一个苹果有多重?(平均重量请保留1位小数

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int n,b=11,d=0;
	int a[110];
	cin>>n;
	for(int i =0;i<n;i++)
	{
		cin>>a[i];
		if(a[i]<b)
		{
			b=a[i];
		}
		d=d+a[i];
	}
	cout<<fixed<<setprecision(1)<<(d-b)/(n-1);
}

 最小数

题目描述

输入n个整数的数列,请找出数列中最小数所在的位置(若有多个最小数,则选最左边的那个最小数),把它与数列的第一个数对调,其他数的位置不动,输出此数列。

输入

数组数的个数n(N<=200)一行n个数,用空格分开(都<=32767)

输出

第一行:最小数所在的位置(只需要输出最左边的一个的位置)

第二行:交换后的数组(一个空格隔开

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int m;
	int a[10];
	cin>>m;
	for(int i =0;i<m;i++)
	{
		cin>>a[i];
	}
	for(int i = m;i>=0;i--)
	{
		cout<<a[i]<<" ";
	}
}

移动数组元素

题目描述

在一个不重复的数组中,请将这个数组的最小数和数组第一个数交换,最大数和数组最后一个数交换!

输入

有两行第一行有一个整数n ( 5 <= n <= 100 )第二行有n个不重复的整数!

输出
移动位置后的数组!

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int n,b=0,c=100;
	int a[110];
	cin>>n;
	for(int i = 0;i<n;i++)
	{
		cin>>a[i];
		if(a[i]<c)
		{
			c=a[i];
		}
		b=a[0];
	}
	cout<<c;
	for(int i = 0;i<n;i++)
	{
		cout<<a[i+1]<<" ";
	}
	cout<<b;
}

低于平均身高人的数量

题目描述

体育课上,有一个班级的同学站成了一队,体育老师想统计一下低于平均身高的童鞋有多少人,请编程实现!

输入

第一行有一个整数n代表该班级的总人数(n≤100)

第二行有n个数,代表每个人的身高

输出

低于平均升高的人数

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int n,b=0,c,d=0;
	int a[110];
	cin>>n;
	for(int i =0;i<n;i++)
	{
		cin>>a[i];
		b=b+a[i];
	}
	c=b/n;
	for(int i =0;i<n;i++)
	{
		cin>>a[i];
		if(a[i]<c)
		{
			d=d+1;
		}
	}
	cout<<d;
}

奇偶逆序

题目描述

有n个数的序列,他的最大值、最小值之和如果为偶数,则逆序输出该序列否则输出原序列

输入

第一行有一个整数n

第二行有n个数

输出

逆序或者正序输出

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int n,b=0,c=100,d;
	int a[110];
	cin>>n;
	for(int i =0;i<n;i++)
    {
	cin>>a[i];
	if(a[i]>b)
	{
		b=a[i];
	}
    }
	for(int i =0;i<n;i++)
	{
		cin>>a[i];
		if(a[i]<c)
		{
		   c=a[i];
		}
	}
	d=c+b;
	if(d%2==0)
	{
		for(int i =0;i<n;i++)
		{
			cin>>a[i];
			cout<<a[i];
		}
	}
	else
	{
		for(int i =n-1;i>=0;i--)
		{
			cin>>a[i];
			cout<<a[i];
		}
	}
	cout<<d;
}

最高得分统计

题目描述

数学老师想知道竞赛项目中,同学们的最高得分是多少,拿到最高分的有多少人?

输入

第一行一个整数n,代表参赛人数

第二行有n个整数,表示n个人的成

输出

2行

第一行输出最高得分

第二行输出最高得分的人数

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int n,b=0,c=0;
	int a[110];
	cin>>n;
	for(int i =0;i<n;i++)
    {
	    cin>>a[i];
		if(a[i]>b)
		{
			b=a[i];
		}
	}
	for(int i =0;i<n;i++)
	{
		cin>>a[i];
		if(a[i]==b)
		{
			c=c+1;
		}
	}
	cout<<c;
}

要完成这个任务,首先需要理解问题的需求:小红要从摘完的苹果去掉最小的苹果,如果最小的苹果有多个,则全部去掉。然后计算剩余苹果的平均重量。 在C++,可以通过以下步骤实现这个任务: 1. 创建一个数组或vector来存储所有苹果的重量。 2. 对这个数组或vector进行排序,以便找到最小的苹果。 3. 遍历排序后的数组,找出最小苹果的重量,并统计有多少个这样的苹果。 4. 根据最小苹果的数量,从总数减去这些苹果的重量和数量,得到剩余苹果的总重量。 5. 计算剩余苹果的平均重量,并保留一位小数。 下面是一个简单的C++代码示例: ```cpp #include <iostream> #include <vector> #include <algorithm> #include <iomanip> int main() { // 假设已经有一个包含所有苹果重量的vector std::vector<int> apples = {120, 130, 110, 110, 140}; // 示例数据 int minWeight = *std::min_element(apples.begin(), apples.end()); // 找到最小重量 int countMin = std::count(apples.begin(), apples.end(), minWeight); // 最小重量的苹果数量 double totalWeight = 0; // 去掉最小的苹果重量 for (int weight : apples) { if (weight != minWeight) { totalWeight += weight; } } // 计算平均重量 double averageWeight = totalWeight / (apples.size() - countMin); // 输出结果,保留一位小数 std::cout << std::fixed << std::setprecision(1) << averageWeight << std::endl; return 0; } ``` 这段代码会计算并输出剩余苹果的平均重量,结果保留一位小数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值