#605. CSP-J1模拟题
CSP-J1模拟题
一、单项选择题(共 20 题,每题 1.5 分,共计 30 分;每题且仅有一个正确选项)
1、计算机如果缺少( ),将无法正常启动。
{{ select(1) }}
- 内存
- 鼠标
- U 盘
- 摄像头
2.一片容量为 8GB 的 SD 卡能存储大约( )张大小为 2MB 的数码照片。 {{ select(2) }}
- 1600
- 2000
- 4000
- 16000
3.有人认为,在个人电脑送修前,将文件放入回收站中就是已经将其删除了。这种想法是( )。 {{ select(3) }}
- 正确的,将文件放入回收站意味着彻底删除、无法恢复
- 不正确的,只有将回收站清空后,才意味着彻底删除、无法恢复
- 不正确的,即使将回收站清空,文件只是被标记为删除,仍可能通过恢复软件找回
- 不正确的,只要在硬盘上出现过的文件,永远不可能被彻底删除
4.主存储器的存取速度比中央处理器(CPU)的工作速度慢得多,从而使得后者的效率受到影响。而根据局部性原理,CPU 所访问的存储单元通常都趋于聚集在一个较小的连续区域中。于是,为了提高系统整体的执行效率,在 CPU 中引入了( )。 {{ select(4) }}
- 寄存器
- 高速缓存
- 闪存
- 外存
5.十进制数 0.5 与八进制数( )值相等。 {{ select(5) }}
- 0.8
- 0.5
- 0.1
- 0.4
6. 计算机用户可以根据需要安装软件,那么计算机的软件系统一般分为( ) {{ select(6) }}
- 系统软件和应用软件
- 管理软件和控制软件
- 军用软件和民用软件
- 高级软件和一般软件
7.关于互联网,下面的说法哪一个是正确的( )。 {{ select(7) }}
- 新一代互联网使用的 IPv6 标准是 IPv5 标准的升级与补充。
- 互联网的入网主机如果有了域名就不再需要 IP 地址。
- 互联网的基础协议为 TCP/IP 协议。
- 互联网上所有可下载的软件及数据资源都是可以合法免费使用的
8.关于程序设计语言,下面哪个说法是正确的: {{ select(8) }}
- 加了注释的程序一般会比同样的没有加注释的程序运行速度慢。
- 高级语言开发的程序不能使用在低层次的硬件系统(如:自控机床)或低端手机上。
- 高级语言相对于低级语言更容易实现跨平台的移植。
- 以上说法都不对。
9、已知大写字母 A 的 ASCII 编码为 65(十进制),则大写字母 J 的十进制 ASCII 编码为: {{ select(9) }}
- 71
- 72
- 73
- 74
10.广域网的英文缩写是( )。 {{ select(10) }}
- LAN
- WAN
- MAN
- LNA
11.如果 a 和 b 都是整形,a 的值为 5,b 的值为 2,那么 a/b 运算结果为( )。 {{ select(11) }}
- 2
- 2.5
- 5
- 1
12.在 c++中使用 cin 和 cout 应该调用( )库。 {{ select(12) }}
- iostream
- cstdio
- cmath
- stack
13.整形变量 a 和 b,a 的值为 5,执行语句 b=++a 后,b 的值为( ) {{ select(13) }}
- 5
- 6
- 0
- 1
14.n 是一个三位数,那 n 的十位数为( ) {{ select(14) }}
- (n%10)/10
- (n/100)%10
- (n/100)%100
- (n%100)/10
15.C++中 x 取值范围大于 1 并且小于 100 正确表示方法( ) {{ select(15) }}
- x>1&&x<100
- x>1||x<100
- x>1&x<100
- x>1##x<100
16.读入一个整数 a,如果 a 为偶数在屏幕上输出“yes”,如果 a 为奇数在屏幕上输出“no”。为实现该功能程序①处应该填写( ) {{ select(16) }}
- a/2= =1
- a/2= =0
- a%2=0
- a%2= =0
#include <iostream>
using namespace std;
int main() {
int a;
cin>>a;
if (① )
cout<<"yes";
else
cout<<"no";
}
17.如果 a 的值为 2,执行以下代码段输出( )
switch(a) {
case 1:cout<<1;
case 2:cout<<2;
case 3:cout<<3;
default:cout<<"error";
} {{ select(17) }}
- 23 error
- 2
- 23
- error
18.编写程序计算 2+12+22+……102+……1002,①处应该填写( )
#include<iostream>
using namespace std;
int main()
{
int i,s;
s=0;
for(i=2;i<=1002; ①)
s=s+i;
cout<<s;
} {{ select(18) }}
- i=i+1
- i=i+10
- i=i+2
- i=i+100
19.执行以下程序段输出( )
for(i=1;i<=5;i=i+1) {
if (i= =3)
continue;
cout<<i;
} {{ select(19) }}
- 45
- 12
- 12345
- 1245
20.执行以下程序段输出( )
a=123;
s=0;
while(a>0)
{
s=s+a%10;
a=a/10;
}
cout<<s; {{ select(20) }}
- 6
- 123
- 3
- 12
二、程序阅读(每题 4 分,共 40 分)
1.楼梯有 N 阶,上楼可以一步上一阶,也可以一步上二阶,计算上楼共有多少种不同的走法。当 N=1 时,只有 1 种走法;N=2 时有 2 种走法;N=5 时,有 8 种走法。 {{ select(21) }}
- 正确
- 错误
2. A 队和 B 队各有 5 名选手围坐一桌进行比赛,比赛规定相同队伍选手必须相隔就坐,即每个 A 队选手左右旁都是 B 队选手,每个 B 队选手左右旁都是 A 队选手。那么,这一桌一共有 1440 种不同的就坐方案。 注:如果在两个方案中,每个选手左右相邻的选手相同,则视为同一种方案。 {{ select(22) }}
- 正确
- 错误
#include<iostream>
using namespace std;
int main()
{
int a,b,c,d;
cin>>a>>b;
a=a+b;
b=a%10;
c=a-b;
d=a/10;
cout<<a<<endl;
cout<<b<<endl;
cout<<c<<endl;
cout<<b*10+d<<endl;
}
输入:15
23
输出:
38
8
30
83 {{ select(23) }}
- 正确
- 错误
4.
#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
if (a>b&&b>c)
cout<<a<<' '<<b<<' '<<c<<' '<<endl;
if (a>c&&c>b)
cout<<a<<' '<<c<<' '<<b<<' '<<endl;
if (b>a&&a>c)
cout<<b<<' '<<a<<' '<<c<<' '<<endl;
cout<<"over";
}
输入:3 2 1
输出:
3 2 1 {{ select(24) }}
- 正确
- 错误
5.
#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b;
c=a;
while(c%b!=0)
{
c=c+a;
cout<<c<<endl;
}
}
输入:12 15
输出:
60
{{ select(25) }}
- 正确
- 错误
6.
#include<iostream>
using namespace std;
int main()
{
int i,j;
for(i=1;i<=4;i++)
{
j=4;
while(i<=j)
{
cout<<i*10+j<<" ";
j--;
}
cout<<endl;
}
return 0;
}
输出:
14 13 12 11
24 23 22
34 33
44
{{ select(26) }}
- 正确
- 错误
#include <iostream>
using namespace std;
int a,b;
int work(int a,int b){
if (a%b) return work(b,a%b); return b; }
int main(){ cin >> a >> b;
cout << work(a,b) << endl;
return 0;
}
输入: 20 12
输出: _______ {{ select(27) }}
- 5
- 20
- 4
- 12
输入: 2 3 5
输出: _______
{{ select(28) }}
- 512
- 39
- 45
- 416
输入: 11 2
输出: {{ select(29) }}
- 782
- 783
- 781
- 780
输入: NOIP 3
输出:
{{ select(30) }}
- NPOI
- PNIO
- OIPN
- INPO
三、程序完成题(每题 3 分,共 30 分)
1. 数列输出
输入两个整数 m 和 n,输出从 m 到 n 的数列。
例如
输入: 3 5,输出序列为:3 4 5;
输入:5 3 则输出:5 4 3。
① {{ select(31) }}
- n
- x
- 空白
- y
② {{ select(32) }}
- . >
- . > =
- <
- =
③ {{ select(33) }}
- i--
- i
- i=i+2
- i++
④ {{ select(34) }}
- n
- m
- m+1
- 1
⑤ {{ select(35) }}
- i--
- i
- i=i+2
- i++
2. 同行列对角线的格
输入三个自然数 n,x,y(1<=x<=n,1<=y<=n),输出在一个 n*n 格的棋盘中(行列均从 1 开始编号),与格子(x,y)同行、同列、同一对角线的所有格子的位置。如:n=4,x=2,x=3 表示了棋盘中的第二行第三列的格子,如下图:
当 n=4,x=2,y=3 时,输出的结果是:
(2,1) (2,2) (2,3) (2,4)
同一行上格子的位置
(1,3) (2,3) (3,3) (4,3)
同一列上格子的位置
(1,2) (2,3) (3,4)
左上到右下对角线上的格子的位置
(4,1) (3,2) (2,3) (1,4)
左下到右上对角线上的格子的位置
① {{ select(36) }}
- i+1
- i
- y
- y+1
② {{ select(37) }}
- end
- x
- endl
- y
③ {{ select(38) }}
- y-x
- i+x-y
- x-y
- i+y-x
④ {{ select(39) }}
- i>=1
- i>1
- i>0
- i<0
⑤ {{ select(40) }}
- x+y
- x+y-i
- i+y-x
- i+x-y
Statistics
Related
In following contests: