全国入门组 CSP-J 初赛模拟试题 (6)
一、单项选择题 (共15题,每题2分,共计30分;每题有且仅有一个正确选项)
1) 在计算机内部用来传送、存贮、加工处理的数据或指令都是( )形式进行的。




查看答案
2) 计算机的软件系统通常分为( )。




查看答案
3) 关于软盘读写孔,正确的说法是( )。




查看答案
4) 一棵二叉树的中序遍历为 DGBAECHF.后序遍历为 GDBEHFCA,则前序遍历是( )。




查看答案
5) 下列叙述中错误的是( )。




查看答案
6) 计算机网络最主要的优点是( )。




查看答案
7) 下列4个不同进制表示的数中,最大的一个数是( )。




查看答案
8) 为了区分汉字与 ASCII 码,计算机中汉字编码的最高位为( )。




查看答案
9) 一般来说,TCP/IP的IP提供的服务是( )。




查看答案
10) 通信时,模拟信号也可以用数字信道来传输,能实现模拟信号与数字信号之间转换功能的是( )。




查看答案
11) 一个栈的输入顺序为 1、2、3、4、5,下列序列中可能是栈的输出序列是( )。




查看答案
12) 不属于Internet的功能是( )。




查看答案
13) 下列描述计算机病毒的特性中,( )不是正确的。




查看答案
14) 下面不属于网络操作系统的是( )。




查看答案
15) 根据《计算机软件保护条例》,中国公民开发的软件享有著作权的是( )。




查看答案
二、阅读程序 (程序输入不超过数组或字符串定义的范围;除特殊说明外,判断题1.5分,选择题4分,共计40分)
#include <bits/stdc++.h>
using namespace std;
const int Maxn=10005;
int n, b[Maxn];
inline void mergesort(int *a,int l,int r) {
if(l==r) return;
int mid =l+r>>1;
mergesort(a,1,mid), mergesort(a,mid+1,r);
int i=l,j=mid+1,cnt=0;
while (i<=mid && j<=r) {
if(a[i]<=a[j]) b[++cnt]=a[i++];
else b[++cnt] =a[j++];
}
while(i<=mid) b[++cnt] =a[i++];
while(j<=r) b[++cnt]=a[j++];
for (i=l; i<=r; i++) a[i]=b[i-l+1];
}
int a[Maxn];
int main(void) {
cin>>n;
for (int i=1; i<=n; i++)cin >>a[i];
mergesort(a, 1,n);
for (int i=1; i<=n; i++) cout<<a[i]<<(i==n?'\n':' ');
return 0;
}
16) 该算法中“int *a”没有传值。( )

查看答案
17) 该算法会换行。( )

查看答案
18) 该算法中 mergesort函数时间复杂度为O(nlogn)。( )

查看答案
19) 如果输入为“5 4 3 9 7 8”则输出为 3 4 7 8 9\n。( )

查看答案
20) 下面哪句与“i==n?'\n':' '”相同( )




查看答案
21) 该算法的最劣复杂度与哪个排序算法相同( )




查看答案
#include <bits/stdc++.h>
using namespace std;
int i,j,k,n,m,f[10010],p1,p2,p3;
int find(int k) {
if(f[k]==k)return k;
return f[k]=find(f[k]);
}
int main()
{
cin>>n>>m;
for (i=1; i<=n; i++) f[i]=i;
for (i=1; i<=m; i++) {
cin>>p1>>p2>>p3;
if(p1==1)
f[find(p2)]= find(p3);
if(p1==2)
if(find(p2)==find(p3))
printf("Y\n");
else
printf("N\n");
}
return 0;
}
22) 该算法中p1的作用是确定操作类型。( )

查看答案
23) 去掉for(i=1;i<=n;i++) f[i]=i;对该算法没有影响。( )

查看答案
24) 输入2 2 1 1 2 2 1 2 输出为Y。( )

查看答案
25) 输人2 1 2 1 2 输出为N。( )

查看答案
26) 该算法时间复杂度为( )




查看答案
27) 把 return f[k]=find(f[k]);改成 return find(f[k]); 最差时间复杂度为()




查看答案
int t,x[100],a[100];
void work(int d,int i,int n) {
int k;
if(n==1)
{
for(k=0; k<d; k++)
printf("%3d" ,a[k]);
printf("\n");
}
else
for(k=i; k<t; k++)
if(n%x[k]==0)
{
a[d]=x[k];
work(d+ 1,k,n/x[k]);
}
}
int main() {
int i,k,n;
cin>>n;
for(i=n; i>1; i--) if(n%i==0) x[t++]=i;
work(0,0,n);
}
28) for(int i=n; i>1; i--) if (n%i==0) x[t++]=i ;的作用是求出 n 的所有因数。( )

查看答案
29) 该程序的作用是对n进行质因数分解。( )

查看答案
30) printf("%3d" ,a[k]);中去掉3对程序没有影响。( )

查看答案
31) 去掉if(n%x[k]==0)对程序有影响。( )

查看答案
32) 如果输人为2,那么输出为( )




查看答案
33) 如果输入为72,那么输出的非回车字符有多少行( )




查看答案
三、完善程序 (单选题,每题3分,共计30分)
(坐标统计)输入n个整点在平面上的坐标。对于每个点,可以控制所有位于它左下方的点(即x、y坐标都比它小),它可以控制的点的数目称为“战斗力”。依次输出每个点的战斗力,最后输出战斗力最高的点的编号(如果若干个点的战斗力并列最高,输出其中最大的编号)
#include <iostream>
using namespace std;
const int SIZE = 100;
int x[SIZE],y[SIZE],f[SIZE];
int n,i,j,max f ,ans;
int main()
{
cin>> n;
for(i=1; i<=n; i++) cin>>x[i]>>y[i];
max_f=0;
for(i=1; i<=n; i++)
{
f[i]= ___(1)___;
for(j=1; j<=n; j++)
{
if(x[j]<x[i]&& ___(2)___)
___(3)___;
}
if (___(4)___)
{
max_f=f[i];
___(5)___;
}
}
for (i=1; i<=n; i++) cout<<f[i]<<endl;
cout<<ans<<endl;
return 0;
}
34) ①处应填( )




查看答案
35) ②处应填( )




查看答案
36) ③处应填( )




查看答案
37) ④处应填( )




查看答案
38) ⑤处应填( )




查看答案
(排列数)输人两个正整数n,m(1<n<20,1<m<n),在1~n中任取m个数,按字典序从小到大输出所有这样的排列。
例如:
输入:
3 2
输出:
1 2
1 3
2 1
2 3
3 1
3 2

#include <iostream
#include <cstring>
using namespace std;
const int SIZE=25;
bool used[SIZE];
int data[SIZE];
int n,m,i,j,k;
bool flag;
int main()
{
cin>> n>> m;
memset(used,false, sizeof(used));
for(i=1; i<=m; i++)
{
data[i]=i;
used[i]=true;
}
flag= true;
while(flag)
{
for(i=1; i<=m-1; i++)
cout<< data[i]<<" ";
cout<<data[m]<<endl;
flag= ___(1)___ ;
for(i=m; i>=1; i--)
{
___(2)___ ;
for(j=data[i]+1; j<=n; j++)
if(!used[j])
{
used[j]= true;
data[i]= ___(3)___ ;
flag= true;
break;
}
if(flag)
{
for(k=i+1; k<=m; k++)
for(j=1; j<= ___(4)___; j++)
if(!used[i])
{
data[k]=j;
used[j]=true;
break;
}
___(5)___;
}
}
}
return 0;
}
39) ①处应填( )




查看答案
40) ②处应填( )




查看答案
41) ③处应填( )




查看答案
42) ④处应填( )




查看答案
43) ⑤处应填( )




查看答案
增值服务权益

1. 试题参考答案和解析查看;
2. 试卷模拟测试;
3. 随机组题测试;
4. 试卷PDF文件下载;
5. 赠送等值学豆;

  订阅  
学员服务
教研服务

小鹏STEM教研服务系统是面向教师的一站式教研、教学和知识管理系统。
订阅服务后,所有题目均可无限制查看和服务。

  详情