第三次作业

例子1:成绩计算
定义长度为5的数组,存储一个班同学的成绩(分数大家任意赋值),清问该班级同学的
总分和平均分分别是多少?(注意掌握数组赋值的2种形式)
数据的读取写入
例子2:成绩统计
期末考试结束,王老师想知道这次考试中成绩优秀的同学有多少人(考试成绩大于或等于
90表示成绩优秀),请你编程帮助王老师来计算出成绩优秀的人数。
写法一:先做一个循环,读入数组每个元素的值,再做一个循环,统计优秀分数的个数
写法二:每读入一个分数,就判断该分数是否是优秀的!

#include<iostream>
using namespace std;
int main()
{
	int a[9];
	int n = 5;
	for(int i  = 0;i<n;i++)
	{
		cin>>a[i];
	}
	int sum = 0;
	for(int i = 0;i<n;i++)
	{
		sum = sum+a[i];
	}
	cout<<sum<<endl;
	cout<<sum/n;

查找支撑数
题目描述
在已知一组整数中,有这样一种数非常怪,它们不在第一个,也不在最后一个,而且刚好都比左边和
右边相邻的数大,你能找到它们吗?
输入
第一行为整数m,表示输入的整数个数。( 3<= m <=100 )
第二行为m个整数。
输出
若干个支撑数,每行一个。
输入复制
14
1 3 2 4 1 5 3 9 7 10 8 23 85 43
输出复制
3
4
5
9
10
85 

#include<iostream>
using namespace std;
int main()
{
	int a[100];
	int n = 0;
	cin>>n;
	for(int i = 0;i<n;i++)
	{
		cin>>a[i];
	}
	int cnt = 0;
	for(int i = 0;i<n;i++)
	{
		if(a[i]>=90)
		{
			cnt++;
		}
	}
	cout<<cnt;
}

排除异形基因
题目描述
神舟号飞船在完成宇宙探险任务回到地球后,宇航员张三感觉身体不太舒服,去了医院检查,医生诊
断结果:张三体内基因已被改变,原有人体基因序列中已经被渗入外星球不明异形生物基因,但可喜
的是,这些异形基因都有一个共同的特征,就是该基因序号的平方除以7的余数都是1,要赶快清除掉,
否则会危害整个人类。赶快行动吧。
输入
第一行是一个整数n(基因个数,3<=n<=200) 第二行是n个整数(张三的基因序列)
输出
去除异形基因后的正常序列,空格隔开
输入复制
4
6 2 8 12
输出复制
2 12 

#include<iostream>
using namespace std;
int main()
{
	int a[110];
	int n;
	cin>>n;
	for(int i = 0;i<n;i++)
	{
		cin>>a[i];
	}
	for(int i = 0;i<n;i++)
	{
		if(a[i]*a[i]%7 != 1)
		{
			cout<<a[i]<<" ";
		}
	}
}

打折优惠
题目描述
商场周末大优惠,规定凡购物超过100元时,超过100元那部分便可打9折。小雄同妈妈一起购买了一
大批物品,你能帮他算出最终的应付款吗?
输入
第一行一个整数N,表示所买物品的个数。 (N<=100)
第二行N个空格隔开的整数,表示N件物品要付的元数。
输出
最终的应付款。(保留两位小数)
输入复制
5
60 80 50 30 20
输出复制
226.00 

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int a[9];
	int n = 5;
	cin>>n;
	for(int i  = 0;i<n;i++)
	{
		cin>>a[i];
	}
	int sum = 0;
	for(int i = 0;i<n;i++)
	{
		sum = sum + a[i];
		if(sum>100)
		{
			
			cout<<sum*0.9<<fixed<<setprecision(2)<<endl;
		}
		
	}
}

题目描述
陶陶家的院子里有一棵苹果树,每到秋天树上就会结出10个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶
陶有个30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。
现在已知10个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到
的苹果的数目。假设她碰到苹果,苹果就会掉下来。
输入
包括两行数据。第一行包含10个100到200之间(包括100和200)的整数(以厘米为单位)分别表示10个苹果到地
面的高度,两个相邻的整数之间用一个空格隔开。第二行只包括一个100到120之间(包含100和120)的整数(以
厘米为单位),表示陶陶把手伸直的时候能够达到的最大高度。
输出
包括一行,这一行只包含一个整数,表示陶陶能够摘到的苹果的数目。
输入复制
100 200 150 140 129 134 167 198 200 111
110
输出复制

#include<iostream>
using namespace std;
int main()
{
	int a[20];
	for(int i = 0;i<10;i++)
	{
		cin>>a[i];
	}
	int h;
	cin>>h;
	int cnt = 0;
	for(int i = 0;i<10;i++)
	{
		if(a[i]<=h+30)
		{
			cnt++;
		}
	}
	cout<<cnt;
}

求和
题目描述
输入n( 1 <= n <= 5000 )个正整数,每个数都在1到20000之间;要求对这n个数中
的奇数和偶数分别求和。
输入
第一行,一个正整数n(1 <= n <= 5000 ); 第2-
n+1行,每行一个正整数,每个数都在1到20000之间。
输出
输出文件共有二行,每行包含一个整数,第一行为
所有奇数之和,第二行为所有偶数之和。
输入复制
5
3
10
7
5
8
输出复制
15
18 

#include<iostream>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int a[5200];
	for(int i = 0;i<n;i++)
	{
		cin>>a[i];
	}
	int sum = 0;
	int cnt = 0;
	for(int i = 0;i<n;i++)
	{
		if(a[i]%2 == 0)
		{
			
			sum = sum+a[i];
		}
	    if(a[i]%2 !=0)
		{
			cnt = cnt+a[i];
		}
	}
	cout<<cnt<<endl;
	cout<<sum;
}

完美偶数
题目描述
完美偶数指的是,如果一个数本身是偶数,且这个数是偶数位的数,且这个数的各个位也是偶数,
那么这个数就可以称为完美偶数;比如:28就是完美偶数,而246就不是,因为246是一个3位数。
请你编程求出,从键盘读入的n个数中,哪些数是完美的偶数,输出他们。
输入
第一行是一个整数n(n<=100)
第二行是n个整数(这些整数都是1~9999范围内的整数)
输出
按顺序输出这n个数中的完美偶数,每个数一行
输入复制
5
26 4286 228 32
1280
输出复制
26
4286 

#include<iostream>
using namespace std;
int main()
{
	int a[110];
	int n;
    cin>>n;
	for(int i = 0;i<n;i++)
	{
		cin>>a[i];
	}
	int sum = 0;
	for(int i = 0;i<n;i++)
	{
		int g = a[i]%10;
		int s = a[i]/10%10;
		int b = a[i]/100%10;
		int q = a[i]/1000%10;
		if((g+s+b+q)%2 == 0)
		{
			cout<<a[i]<<endl;
		}
	}
}

输出奇数和偶数
题目描述
输入n个整数,将其中的奇数和偶数分别显示出来(1 < n < 30)
输入
第一行:一个整数n。第二行:n个空格隔开的整数。
输出
第一行:若干个奇数。第二行:若干个偶数。(每个数前面都有一个空格)
输入复制
10
21 12 33 43 59 68 77 18 19 40
输出复制
21 33 43 59 77 19
12 68 18 40 

#include<iostream>
using namespace std;
int main()
{
	int a[50];
	int n;
	cin>>n;
	for(int i = 0;i<10;i++)
	{
		cin>>a[i];
	}
	for(int i = 0;i<n;i++)
	{
		if(a[i]%2 == 1)
		{
			cout<<a[i]<<" ";
			
		}
	} 
	cout<<endl;
	for(int i = 0;i<n;i++)
	{
		if(a[i]%2==0)
		{
			cout<<a[i]<<" ";
		}
	}
}

拿到某个数的概率是多少?
题目描述
老师在一个不透明的纸袋里放入一些乒乓球,每个乒乓球上都有一个数字,当球放入之后,让小明
从中随机拿一个。在球放入之后,小明抽之前,老师想让您帮忙编程先计算一下,拿到某个数字x的
概率是多少?
比如:老师向袋子里面放入了5个球,对应的数字分别是2 3 2 4 2,那么拿到数字2的概率为3 / 5 =
0.6,拿到数字3的概率为1 / 5 = 0.2。(8.2)
输入
第一行是一个整数n代表袋子里球的个数(n<=100)
第二行n个数,代表袋子里每个球上面的数字的值
第三行一个整数x,是要计算出现概率的数字(x不一定在第
二行的n个数中出现,也就是说x对应的球可能在袋子里没
有)
输出
x被拿到的概率(结果保留2位小数)
输入复制
5
2 3 2 4 2
2
输出复制
0.60 

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int a[110];
	int n;
	cin>>n;
	for(int i = 0;i<n;i++)
	{
		cin>>a[i];
	}
	int b;
	cin>>b;
	int cnt = 0;
	for(int i = 0;i<n;i++)
	{
		if(b == a[i])
		{
			cnt++;
		}
	}
	cout<<fixed<<setprecision(2)<<1.0*cnt/n;
}

找找谁的身高超过全家的平均身高
题目描述
找找谁的身高超过全家的平均身高。全家n口人,输入输出数据如下: (平均身高保留一位小数)
输入
第一行有一个整数n( 1 < n < 11 )。第二行是n个整数,用空格隔开。
输出
第一行为全家的平均身高(保留一位小数);第二行有若干个数,为超过平均身高的人的身高厘米数。
输入复制
7
175 160 172 158 178 162 142
输出复制
AVE=163.9
1:175 3:172 5:178

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int a[15];
	int n;
	cin>>n;
	for(int i = 0;i<n;i++)
	{
		cin>>a[i];
	}
	int sum = 0;
	for(int i = 0;i<n;i++)
	{
		sum = sum +a[i];
	}
	float avg  = 1.0*sum/n;
	cout<<"AVE="<<fixed<<setprecision(1)<<avg<<endl;
	cout<<fixed<<setprecision(0);
	for(int i = 0;i<n;i++)
	{
		if(a[i]>avg)
		{
			cout<<i+1<<":"<<a[i]<<" ";
		}
	}

考试成绩的分布情况
题目描述
期末考试结束,小明的语文老师想知道,这次考试的成绩分布情况,主要计算如下几个数据:平
均分、>=平均分的总人数、<平均分的总人数,请你写程序帮助小明的语文老师来计算一下!
输入
第一行,一个整数n代表有n个人的成绩(n<=100)
第二行,n个人的语文成绩
输出
3个值,分别代表平均分、>=平均分的总人数、<平均分的总人数,请注意,平均分保留1位小数!
输入复制
5
100 98 97 99 90
输出复制
96.8 4 1

橘子称重
学校买回来一大箱橘子,有m个(m>=100 && m <= 1000),橘子大小比较均匀,学校想称一下总共有多重,
发现大称坏掉了还没有修好,只有一个小的弹簧秤。学校又不想分开称,那样太慢了。
小明想了一个办法,由于橘子大小比较均匀,可以从中拿n个出来(n>=5 && n<=20),这n个橘子的重量弹
簧秤是可以称出来的,有了这n个橘子的重量,就可以计算出平均一个橘子有多重,这样就能知道整箱大约有多
重了。
请编写程序,从键盘读入橘子总数m,小明称的橘子的个数n以及这n个橘子的重量,计算出这箱橘子总共约有多
重(结果保留1位小数)。(4.1.52)
输入
2行,第一行2个整数m和n,分别代表一箱橘子的
总个数以及小明称的橘子的个数。
第二行为n个橘子的重量(整数)。
输出
一箱橘子的重量(保留1位小数)
输入复制
100 7
84 83 82 81 80 79 79
输出复制
8114.3

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
	int a[1100];
	int m,n;
	cin>>m>>n;
	for(int i = 0;i<n;i++)
	{
		cin>>a[i];
	}
	int sum = 0;
	for(int i = 0;i<n;i++)
	{
		sum = sum+a[i];
	}
	cout<<1.0*sum/n*m;
}

哪个厂家的零件更标准?
题目描述
在统计描述中,方差用来计算每一个变量(观察值)与总体均数之间的差异。比如:甲乙2个厂商生产
某零件,一批零件要求在尺寸合格的情况下,大小越一致越好,由于生产工艺的问题,零件生产厂商生
产的零件不可能一模一样。
为了检测甲乙两个厂商,那个厂商生产的零件更符合标准,分别从2个厂商生产的零件中抽取5个样品尺
寸如下:
甲:100 101 102 100 99
乙:98 100 105 103 96
假设零件尺寸在95~110之间都算合格,那么两批零件都是合格的。
青少年编程
V 13201376357
哪个厂家的零件更标准?
如果按照平均数计算,两组数据的平均值都是100.4
但如果将两组数据画到数轴上:
从两个厂抽检的零件分布图可以看出,甲厂的零件大小更加一致,更加符合标准。
为了方便计算数据的离散程度,我们引入方差的概念,方差的计算公式为:
青少年编程
V 13201376357
哪个厂家的零件更标准?
其中x1~xn代表一组数据中的每个元素,代表这组数据的平均值。
按照公式,甲厂零件的方差为:
(100-100.4)2+(101-100.4)2+(102-100.4)2+(100-100.4)2+(99-100.4)2=5.2
乙厂零件的方差为:
(98-100.4)2+(100-100.4)2+(105-100.4)2+(103-100.4)2+(96-100.4)2=53.2
从方差上也可以看出,甲厂的零件更符合标准!
现从键盘读入2个厂生产的零件尺寸(假设零件的尺寸都是合格的),请计算哪个厂的零件尺寸更加一致
(方差更小)?
输入
第一行为一个整数n,代表2个厂抽检的零件的个数!(n在5~100之间)
第二行为甲厂的n个零件的尺寸
第三行为乙厂的n个零件的尺寸
输出
哪个厂的零件更加符合标准,甲厂请输出“jia”,乙厂请输出“yi”
输入复制
5
100 101 102 100 99
98 100 105 103 96
输出复制
jia

#include<iostream>
using namespace std;
int main()
{
	int a[110];
	int b[110];
	int n;
	cin>>n;
	int suma = 0;
	int sumb = 0;
	for(int i = 0;i<n;i++)
	{
		cin>>a[i];
		suma = suma+a[i];
	}
	for(int i = 0;i<n;i++)
	{
		cin>>b[i];
        sumb = sumb+b[i];
	}
	float avga = 1.0*suma/n;
	float avgb = 1.0*sumb/n;
	float fa = 0;
	float fb = 0;
	for(int i = 0;i<n;i++)
	{
		fa = fa+(a[i]-avga)*(a[i]-avga);
		fa = fb+(b[i]-avgb)*(b[i]-avgb);
		
	}
	if(fa>fb)
	{
		cout<<"jia";
	}
	if(fa<fb)
	{
		cout<<"yi";
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值