第十一届全国青少年信息学奥林匹克联赛初赛试题(普及组c++)

文档属性

名称 第十一届全国青少年信息学奥林匹克联赛初赛试题(普及组c++)
格式 rar
文件大小 105.4KB
资源类型 教案
版本资源 通用版
科目 信息技术(信息科技)
更新时间 2009-09-22 20:01:00

图片预览

文档简介

NOIP2005普及 C++
第十一届全国青少年信息学奥林匹克联赛初赛试题
( 普及组 C++ 语言 二小时完成 )
●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效 ●●
一.选择一个正确答案代码(A/B/C/D/E),填入每题的括号内 (每题1.5分, 共30分)
1. 在字符串“ababacbabcbdecced”中出现次数最多的字母出现了( )次。
A. 6 B. 5 C. 4 D. 3 E. 2
2. 设全集 I = {a, b, c, d, e, f, g, h},集合 A = {a, b, c, d, e, f},B = {c, d, e},C = {a, d},那
么集合 A ∩ B∩ ~ C为( )。
A. {c, e} B. {d, e} C. {e} D. {c, d, e} E. {d, f}
3. 和十进制数 23的值相等的二进制数是( )。
A. 10110 B. 11011 C. 11011 D. 10111 E. 10011
4. 完全二叉树的结点个数为 11,则它的叶结点个数为( )。
A. 4 B.3 C.5 D. 2 E. 6
5. 平面上有五个点 A(5, 3), B(3, 5), C(2, 1), D(3, 3), E(5, 1)。以这五点作为完全图 G的顶点,
每两点之间的直线距离是图 G 中对应边的权值。以下哪条边不是图 G 的最小生成树中
的边( )。
A. AD B. BD C. CD D. DE E. EA
6. Intel的首颗 16位处理器是( )。
A. 8088 B. 80386 C. 80486 D. 8086 E. Pentium
7. 处理器 A每秒处理的指令数是处理器 B的 2倍。某一特定程序 P分别编译为处理器 A
和处理器 B的指令,编译结果处理器 A的指令数是处理器 B的 4倍。已知程序 P在处
理器 A上执行需要 1个小时,那么在输入相同的情况下,程序 P在处理器 B上执行需
要( )小时。
A. 4 B. 2 C. 1 D. 1 / 2 E. 1 / 4
8. 以下哪个不是计算机的输出设备( )。
A. 音箱 B. 显示器 C. 打印机 D. 扫描仪 E. 绘图仪
9. 下列活动中不属于信息学奥赛的系列活动的是( )。
A. NOIP B. NOI C. IOI D. 冬令营 E. 程序员等级考试
10. 以下断电之后仍能保存数据的是( )。
1 中国计算机学会
NOIP2005普及 C
A. 硬盘 B. 寄存器 C. 显存 D. 内存 E. 高速缓存
11. 以下哪个软件不是即时通信软件( )。
A. 网易泡泡 B. MSN Messenger C. Google Talk D. 3DS Max E. QQ
12. 下列关于高级语言的说法错误的是( )。
A. Fortran是历史上的第一个面向科学计算的高级语言
B. Pascal和 C都是编译执行的高级语言
C. C++是历史上的第一个支持面向对象的语言
D. 编译器将高级语言程序转变为目标代码
E. 高级语言程序比汇编语言程序更容易从一种计算机移植到另一种计算机上
13. 下列设备不具有计算功能的是( )。
A. 笔记本电脑 B. 掌上电脑 C. 智能手机
D. 电子计算器 E. 液晶显示器
14. 常见的邮件传输服务器使用( )协议接收邮件。
A. HTTP B. SMTP C. TCP D. FTP E. POP3
15. 下列浏览器中,由微软公司开发的浏览器是( )。
A. Internet Explore B. Netscape C. Opera D. Firefox E. Mozilla
16. 一位艺术史学家有 20000幅真彩色图像,每幅图像约占 3M空间。如果将这些图像以位
图形式保存在 CD光盘上(一张 CD光盘的容量按 600M计算),大约需要( )张 CD
光盘。
A. 1 B. 10 C. 100 D. 1000 E. 10000
17. 设 A = true,B = false,C = false,D = true,以下逻辑运算表达式值为真的是( )。
A. (A∧B)∨(C∧D) B. ((A∧B)∨C)∧D C. A∧((B∨C) ∧D)
D. (A∧(B∨C))∨D E. (A∨B)∧(C∧D)
18. (3725)8 + (B)16的运算结果是( )。
A. (3736)8 B. (2016)10 C. (1111110000)2 D. (3006)10 E. (7B0)16
19. 二叉树 T的宽度优先遍历序列为 A B C D E F G H I,已知 A是 C的父结点,D是 G的
父结点,F 是 I 的父结点,树中所有结点的最大深度为 3(根结点深度设为 0),可知 F
的父结点是( )。
A. 无法确定 B. B C. C D. D E. E
20. 设栈 S的初始状态为空,元素 a, b, c, d, e, f, g依次入栈,以下出栈序列不可能出现的是
( )。
A. a, b, c, e, d, f, g B. b, c, a, f, e, g, d C. a, e, d, c, b, f, g
D. d, c, f, e, b, a, g E. g, e, f, d, c, b, a
2 中国计算机学会
NOIP2005普及 C
二.问题求解 (请在空格处填上答案,每空5分,共10分)
1. 将数组{32, 74, 25, 53, 28, 43, 86, 47}中的元素按从小到大的顺序排列,每次可以交换任
意两个元素,最少需要交换 次。
2. 有 3个课外小组:物理组,化学组和生物组。今有张、王、李、赵、陈 5名同学,已知
张、王为物理组成员,张、李、赵为化学组成员,李、赵、陈为生物组成员。如果要在
3个小组中分别选出 3位组长,一位同学最多只能担任一个小组的组长,共有 种
选择方案。
三.阅读程序(共 4题,每题 8分,共计 32分)
1.
int main() {
int a, b;
cin>>a;
b = (a * (a * a)) + 1;
if (b%3 == 0) b = b / 3;
if (b%5 == 0) b = b / 5;
if (b%7 == 0) b = b / 7;
if (b%9 == 0) b = b / 9;
if (b%11 == 0) b = b / 11;
if (b%13 == 0) b = b / 13;
if (b%15 == 0) b = b / 15;
cout<<(100*a-b)/2<return 0;
}
输入:10
输出:
2.
int main() {
char str[20] = “Today-is-terrible!”;
int i;
for (i = 6; i <= 10; i++)
if (str[i] == ‘-‘) str[i – 1] = ‘x‘;
for (i = 12; i >= 0; i--)
if (str[i] == ‘t’) str[i + 1] = ‘e’;
cout<return 0;
}
输出:
3.
3 中国计算机学会
NOIP2005普及 C
int main() {
int a, b, c, p, q, r[3];
cin>>a>>b>>c;
p = a / b / c;
q = b – c + a + p;
r[0] = a * p / q * q;
r[1] = r[0] * (r[0] – 300);
if (3 * q – p % 3 <= r[0] && r[2] == r[2])
r[1] = r[r[0] / p % 2];
else
r[1] = q % p;
cout<return 0;
}
输入:100 7 3
输出:
4.
int main(){
char str[60];
int len, i, j, chr[26];
char mmin = 'z';
cin>>str;
len = strlen(str);
for (i = len - 1; i >= 1; i--)
if (str[i - 1] < str[i]) break;
if (i == 0) {
cout<<"No result!\n"; return 0;
}
for (j = 0; j < i - 1; j++) cout<memset(chr, 0, sizeof(chr));
for (j = i; j < len; j++) {
if (str[j] > str[i - 1] && str[j] < mmin)
mmin = str[j];
chr[str[j] - 'a']++;
}
chr[mmin - 'a']--;
chr[str[i - 1] - 'a']++;
cout<for(i = 0; i < 26; i++)
for(j = 0; j < chr[i]; j++)
cout<4 中国计算机学会
NOIP2005普及 C
return 0;
}
输入:zzyzcccbbbaaa
输出:
四.完善程序 (前 4空,每空 2分,后 5空,每空 4分,共 28分)
1.判断质数
题目描述:
给出一个正整数,判断这个数是否是质数。
输入:
一个正整数n(1 ≤ n ≤ 10000)。
输出:
如果n是质数,输出”YES”;否则,输出”NO”。
输入样例:
10
输出样例:
NO
程序:
int main() {
int ① ;
cin>>n;
if (n == 2) cout<<( ② );
else if ( ③ || n % 2 == 0)c out<<"NO";
else {
i = 3;
while (i * i <= n) {
if ( ④ ) {
cout<<"NO"; return 0;
}
i = i + 2;
}
cout<<"YES";
}
return 0;
}
2.木材加工
题目描述:
木材厂有一些原木,现在想把这些木头切割成一些长度相同的小段木头,需要得到的小
段的数目是给定的。当然,我们希望得到的小段越长越好,你的任务是计算能够得到的小段
木头的最大长度。
木头长度的单位是 cm。原木的长度都是正整数,我们要求切割得到的小段木头的长度
5 中国计算机学会
NOIP2005普及 C
也是正整数。
输入:
第一行是两个正整数N和K(1 ≤ N ≤ 10000,1 ≤ K ≤ 10000),N是原木的数目,
K是需要得到的小段的数目。
接下来的N行,每行有一个1到10000之间的正整数,表示一根原木的长度。
输出:
输出能够切割得到的小段的最大长度。如果连1cm长的小段都切不出来,输出”0”。
输入样例:
3 7
232
124
456
输出样例:
114
程序:
int n, k, len[10000];
int isok(int t) {
int num = 0, i;
for (i = 0; i < n; i++) {
if (num >= k) break;
num = ① ;
}
if ( ② ) return 1;
else return 0;
}
int main() {
int i, left, right, mid;
cin>>n>>k;
right = 0;
for (i = 0; i < n; i++) {
cin>>len[i];
if (right < len[i]) right = len[i];
}
right++;
③ ;
while ( ④ < right) {
mid = (left + right) / 2;
if ( ⑤ ) right = mid;
else left = mid;
}
cout<return 0;
}
6 中国计算机学会
NOIP2005普及 C
赛区 市 学校 姓名
========================== 密 封 线 ==========================
第十一届全国青少年信息学奥林匹克联赛初赛试题
普及组答卷纸
阅 卷 记 录
总阅卷人 总 得 分
第 一 大 题 得 分 第二大题得分
题号 1 2 3 4 5 6 7 8 9 10 第三大题得分
得分 1) 2) 3) 4)
题号 11 12 13 14 15 16 17 18 19 20 第四大题得分
得分 (1) (2)
============================ 以下由考生填写 ==========================
答卷部分
一. 选择一个正确答案代码(A/B/C/D),填入每题的括号内 (每题 1.5分,多选无分, 共 30
分)
题号 1 2 3 4 5 6 7 8 9 10
选择
题号 11 12 13 14 15 16 17 18 19 20
选择
二.问题解答 (每题 5分,共 10分)
1. 答:
2. 答:
三. 阅读程序,并写出程序的正确运行结果:(每题 8分,共 32分)
(1) 程序的运行结果是:
(2) 程序的运行结果是:
7 中国计算机学会
NOIP2005普及 C
赛区 市 学校 姓名
========================== 密 封 线 ==========================
(3) 程序的运行结果是:
(4) 程序的运行结果是:
四.根据题意, 将程序补充完整 (前 4空,每空 2分,后 5空,每空 4分,共 28分)
C 语言
=================
1.




2.





8 中国计算机学会
同课章节目录