2012年海淀区中小学生信息学奥林匹克竞赛
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2012年海淀区中小学生信息学奥林匹克竞赛
小学组上机试题(共72分)
姓名____________年级______学校_________准考号________成绩__________
说明:(1)请同学们运行QBASIC语言环境(BC7.0版本)或C语言环境;
(2)以各自题目的名称,如:shulie.bas或shulie.c或shulie.cpp,将源文件存盘;
(3)将最后写好的源文件,存入D:\TEST文件夹中。
如:D:\TEST
shulie.bas
fenshu.bas
sushu.bas
tuxing.bas
……….
……….
一、数列计算(题目名称: shulie.bas/shulie.c/shulie.cpp)(12分)【题目描述】有一组序列的数是:1、2、9、33、126、477,……,请同学们认真观察数值的规律。现要求:指定项数为任意的N项,计算:
1)第N项的数据;
2)输出前N项数据的和。
【输入文件】文件名:shulie.in
文件中只有一行,包含1个整数N(其中3<=N<=15)为这个序列的项数。【输出文件】文件名:shulie.out
文件中共有二行:
第一行为这个序列第N项的数据;
第二行为这个序列前N项的数据和。
【要求】每一行的输出数据都从第一列开始。
【样例输入】 shulie.in的内容为:
6
【样例输出】shulie.out的内容为:
477
648
又如:
【样例输入】 shulie.in的内容为:
10
【样例输出】shulie.out的内容为:
98577
133893
二、分数段统计(题目名称:fdtj.bas/fdtj.c/fdtj.cpp)(12分)【题目描述】小红所在的班级进行了数学考试,老师请小红同学帮忙进行名次排序和各分数段的人数统计工作。现要求如下:将N名同学的考试成绩放在A数组中,
各分数段的人数存到B数组中:成绩为100的人数存到B(1)中,成绩为90
到99的人数存到B(2)中,成绩为80到89的人数存到B(3)中,成绩为70
到79的人数存到B(4)中,成绩为60到69的人数存到B(5)中,成绩为60
分以下的人数存到B(6)中。
【输入文件】文件名:fdtj.in
文件中共有二行:
第一行:为小红所在班级的人数N(其中1<=N<=30);
第二行:为N个用1个空格隔开的数学分数(其中分数为整数)。
【输出文件】文件名:fdtj.out
文件中共有若干行:
前N行:每行一个整数是从高到低排序的数学分数;
最后一行:是6个按要求,存放到数组B(1)--B(6)中各分数段的人数(各
数据之间以1个空格为间隔)。
【要求】每一行的输出数据都从第一列开始输出。
【样例输入】 fdtj.in的内容为:
10
93 85 77 68 59 100 43 94 75 82(数据之间空1格)
【样例输出】 fdtj.out的内容为:
100
94
93
85
82
77
75
68
59
43
1 2 2 2 1 2(数据之间空1格)
三、求素数(题目名称:sushu.bas/sushu.c/sushu.cpp)(12分)【题目描述】在三位自然数中有这样一些特点的数:
(1)它们是素数;
(2)它们中满足:十位数字是偶数,个位数字为3,
如:223,283,383,443,463…….等。
求出在三位自然数的任意区间M ~N内所有满足上述条件的素数,
并统计个数。
【输入文件】文件名:sushu.in
文件中只有一行,包含两个用空格隔开的任意自然数M和N
(其中100<=M 【输出文件】文件名:sushu.out 文件中共有若干行: 前若干行每行一个数,为满足条件的素数; 【要求】每一行的数据都从第一列开始输出。 【样例输入】 sushu.in的内容为: 200 400(两个数据之间空一格) 【样例输出】 sushu.out的内容为: 223 263 283 383 四、打印图形(题目名称: tuxing.bas/tuxing.c/tuxing.cpp) (12分)【题目描述】由键盘输入任意一个自然数N,输出如下图规律的图形。 【输入文件】文件名为:tuxing.in 文件中只有一个整数N,为图形上半部分的行数(其中2<=N<=9) 【输出文件】文件名为:tuxing.out 文件中为输出的图形。 【要求】图形的最左侧从第一列开始输出。 【样例输入】 tuxing.in中有: 5 【样例输出】 tuxing.out中有下图所示的图形。 5 8 4 7 3 6 2 5 1 4 4 1 5 2 6 3 7 4 8 5 五、字符串(题目名称:zfc.bas/zfc.c/zfc.cpp) (12分) 【题目描述】从键盘输入一个长度大于10的字符串,现要求:将字符串中的所有大小写字母都改写成该字母的下一个字母。如:最后一个小写字母z改写成字母a; 最后一个大写字母Z改写成A,其他字符依照原有顺序不变。 【输入文件】文件名:zfc.in 文件中只有一行,包含1个任意的字符串(其长度L>10) 【输出文件】文件名:zfc.out 文件中只有一行,即为满足条件的字符串。 【要求】输出数据从第一列开始输出。 【样例输入】zfc.in的内容为: ABCDZ123abcdefz 【样例输出】zfc.out的内容为: BCDEA123bcdefga