- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五次上机解题报告
晴天小猪的新故事
A 晴天小猪的数学题II
Problem Description
冬天之后,晴天小猪就要读四年级了,这也意味着他要面临更难的数学题。晴天小猪在
做作业的时候又遇到了困难,希望你能帮帮他。
数学题是这样的:告诉你一个数列a 和一个数列b ,两个数列都由N 个整数组成,请你
构造一个新数列c,使得Ci=Ai+Bi 。
你能直接告诉晴天小猪数学题的答案么?
Input
多组测试数据。每组测试数据有三行,第一行为一个整数N (1=N=100),表示a、
b 、c 三个数列都包含N 个数,第二行有N 个1~100 的整数,表示a 数列,第三行也是N 个
1~100 的整数,表示b 数列。
Output
对于每组数据输出一行,为c 数列,两两数字之间用空格隔开,注意不要在最后输出多
余的空格。
Sample Input
4
1 2 3 4
5 6 7 8
1
1
2
Sample Output
6 8 10 12
3
考察知识点:一维数组的输入和输出
难易度:易
关于本题:这是一道很基本的题,过的人也很多。知道数组是怎么一回事就能解决,稍微要
注意的是不要输出多余的空格,可以对要打印的n 个数先打印n-1 个数,最后一个数单独打
印,就不会打出多余的空格了
解题思路:解法一:模拟。就是题目要怎么做咱就把他“翻译”成代码就行了。
标准程序:采用解法一
#include iostream
using namespace std;
int main()
{
int n;
int a[110];
int b[110];
int c[110];
int i;
while(cinn)
{
for (i=1;i=n;i++) cina[i];
for (i=1;i=n;i++) cinb[i];
for (i=1;i=n;i++) c[i]=a[i]+b[i];
for (i=1;in;i++) coutc[i] ;
coutc[n]endl;
}
return 0;
}
B 晴天小猪的兔子II
Problem Description
上次说到,晴天小猪养了一群兔子,可是随着时间的推移,兔子越来越多,他家实在住
不下了,于是他决定送三只兔子给上机成绩排前三的同学。送哪三只兔子呢,当然是选最重
的三只兔子,因为他们吃得最多~
现在告诉你晴天小猪家每只兔子的重量,请找出体重最重的三只兔子。
Input
多组测试数据。每组测试数据有二行,第一行为一个整数N (3=N=100 ),表示总共
有N 只兔子,第二行有N 个1~100 的整数,每个整数表示第N 只兔子的体重。
Output
对于每组输入数据,输出一行结果,按从大到小的顺序输出最重的三只兔子的序号 (第
一只兔子序号记为1,第二只记为2,依次类推),对于体重相同的兔子输出序号靠前的。
用空格隔开,注意最后不要输出多余的空格。
Sample Input
3
1 2 3
5
10 50 30 40 20
Sample Output
3 2 1
2 4 3
考察知识点:一维数组的查找
难易度:易
关于本题:很抱歉由于我的疏忽导致题面的有一个错误,使得很多同学结果错误,不好意思。
题意是找到数组中最大的三个数。很多人在想要怎么找到这些数,像这样的东西书上是没有
的,只能靠平时训练的积累经验找到“感觉”。而且这种东西最好是自己想到,不然就得不
到锻炼。
解题思路:解法一:先找到最大的数,然后把这个数变成0,接着再在数组里找最大的数(因
为第一大的数已经变为0 了,所以现在找到的就是第二大的数字),然后也把它变为0,然
后再同上,找第三大的数
解法二:直接对数组排序,然后前三大的数字就很容易找到了。排序是个很重要的知识,方
法很多,大家可以自己去学习
标准程序:采用解法一
#include iostream
using namespace std;
int main()
{
int n;
int a[110];
int maxa,maxb,maxc;
int temp;
int i;
while(cinn)
{
for (i
文档评论(0)