全国入门组 CSP-J 初赛模拟试题 (3)
一、单项选择题 (共15题,每题2分,共计30分;每题有且仅有一个正确选项)
1) 在网络上,若某台电脑的设备及数据可由其他电脑共享,这台电脑称为( )。




查看答案
2) 下列抢占不同数制的数中,最大的一个数是( )。




查看答案
3) 字母在计算机中是以编码形式表示的,通用的编码是 ASCII码,字母 “A”的 ASCII码 65 ,字母“E”的ASCII码是 ( )。




查看答案
4) 连接 internet 上的每台计算机必须有1个 ( ) 地址,该地址共含( )字节。前面若干个子节表示( );后面若干个子节表示( )。为了避免使用数字,人们经常用字母替代,这些名字称为( )。




查看答案
5) 在 TCP/IP协议中,TCP和IP分别提供什么服务( )。




查看答案
6) 一棵树T有 2 个度数为2 的结点、有1个度数为3的结点、有3个度数为4的结点,那么树T有( )个树叶。




查看答案
7) 在一个图中,所有顶点的度数之和等于所有边数的( )倍。




查看答案
8) 下列IP地址中止确的是( )。




查看答案
9) 设有100个顶点,利用二分法查找时,最大比较次数是( ) 。




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




查看答案
11) 下面合法的电子邮件地址是( )。




查看答案
12) Internet给我们提供了资源共享、浏览、检索信息和远程登录等多种服务,下面几个选项中用于远程登录的是( )。




查看答案
13) 在数捉结构中,链表是( )。




查看答案
14) C++ 程序运行时,是在哪个存储器上进行的?( )




查看答案
15) 当 A>=B && B>=C 的取值为真时,表达式A>C||B==C的值( )。




查看答案
二、阅读程序 (程序输入不超过数组或字符串定义的范围;除特殊说明外,判断题1.5分,选择题4分,共计40分)
#include <iostream>
#include<cstdio>
using namespace std;
int i,j,n;
int x[101],y[101];
int main()
{
cin>>n;
for(i=1; i<=n; i++) cin>>x[i];
for(i=1; i<=n-1; i++)
for (j=i+1; j<=n; j++)
if(x[i]>x[j])
y[j]++;
else if (x[i]<x[j])
y[i]++;
for(i=1; i<=n; i++)
printf("%5d ",y[i]);
cout<<endl;
return 0;
}
16) (1分)把第13行与第15行互换位置,结果不会改变。()

查看答案
17) (1分)第14行把if(x[i]<x[j]) 删掉效果一样。()

查看答案
18) 第11行把 i+1 改成1,数组y每个元素的值增加1倍。()

查看答案
19) 数组y[i]中存的是x[i]在数列中从大到小的次序。()

查看答案
20) 此程序的时间复杂度是( )




查看答案
21) 此程序如果n输入4,然后输入2 4 1 3,输出结果是( )。




查看答案
#include <iostream>
#include<cstdio>
using namespace std;
int n,i, x;
int d[11];
int main()
{
cin>>n;
for(i=1; i<=n; i++)
{
cin>>x;
d[x]=d[x]+1;
}
d[0]=0;
for(i=1; i<=10; i++)
d[i]=d[i-1]+d[i];
for(i=1; i<=10; i++)
if(d[i]!=d[i-1])
printf("%3d:%4d ",i,d[i-1]+1);
return 0;
}
22) (1分)输入的x值应在[0,n-1]的范围内。

查看答案
23) (1分)把第12行改成“d[x]++”,不影响程序运行结果。( )

查看答案
24) 对任意在[1,9]之间的数 i,都有d[i-1]<d[i]<d[i+1]。( )

查看答案
25) 把第18行改成“if(d[i]> d[i-1])”,程序运行的结果会发生改变。( )

查看答案
26) 输人n=10后,接着输入:1 3 4 5 2 4 3 5 2后,程序输出结果为( )。




查看答案
27) 把程序第19行改成“print("%3d" ,i);"后,输入n=10后,接首输入: 1 3 4 1 5 4 4 3 5 1后,程序输出结果为( )。




查看答案
#include <iostream>
#include<cstdio>
using namespace std;
int j,i,m;
int a[10];
int main()
{
for(i=2; i<=6; i++)
a[i]=i+1;
do
{
m=2;
for (i=3; i<=6; i++)
if(a[m]>a[i]) m=i;
a[m]=a[m]+m;
m=1;
for(i=2; i<=5; i++)
for(j=i+1; j<=6; j++)
if (a[i]<a[j]) m=0;

}while(m==0);
printf("%d",a[2]);
return 0;
}
28) 程序结束时,a[2]的值一定是数组a中的最大值。( )

查看答案
29) 第21行 “m==0” 成立时,数组a[i] (2≤i≤6)从大到小排序: ( )

查看答案
30) 程序输出时,a数组满足:对任意的2≤i<6,有a[i]>a[i+1]。( )

查看答案
31) 删除第16行代码“m=1"程序结果会发生改变。( )

查看答案
32) 程序的输出结果为( )




查看答案
33) 此程序的时间复杂度是( )。




查看答案
三、完善程序 (单选题,每题3分,共计30分)
菲波拉契数列为1,1,2,3,5,8,13,21,...其元素产生的规则是前两个数为1,从第三个数开始每个数等于它前面两个数之和。已知任意一个正整数可以表示为若干个互不相同的菲波拉契数之和。例如:36=21+13+2。
下面的程序是由键盘输入一个正整数n,输出组成n的互不相同的菲波拉契数。
算法说明:(1)寻找小于等于n的最大菲波拉契数a,并以a作为组成n的一个数。
(2)若n≠a,则以n-a作为n的新值,重复步骤(1)。若a=n,则结束。
#include<iostream>
#include<cstdio>
using namespace std;
int n;
bool first;
int find(int n)
{
int a,b,c;
a=1;b=1;
do
{
c=a+b;
___(1)___;
}while(b<n);
if(___(2)___)
return b;
else
___(3)___;
}
void p(int n)
{
int a;
a=find(n);
if(first)
{
printf("%4d",a);
first=false;
}else
___(4)___;
if(a<n) ___(5)___;
}
int main()
{
cin>>n;
first=true;
printf("%5d = ",n);
p(n);
cout<<endl;
return 0;
}
34) ①处应填( )




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




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




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




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




查看答案
现在政府计划在某个区城的城市之间建立高速公路,以使得其中任意两个城市之间都有
直接或间接的高速公路相连。费用为每千米为一个单位价格,求最小费用。
输入:n(n< = 100,表示城市数目)。
接下来n行,每行两个数xi.yi.表示第个城市的坐标,(单位:千米)。)rp 2
输出:最小费用(保留2位小数)。
程序如下:
#include<iostream>
#include<cstdio>
using namespace std;
const int maxn=101;
struct tcity
{
float x,y;
};
tcity c[maxn];
float d[maxn][maxn],a,minf;
int p[maxn],n,i,j,k;
int main()
{
cin>>n;
for(i=l; i<=n; i++)
cin>>c[i].x>>c[i].y;
for(i=1; i<=n; i++)
for(j=i; j<=n; j++)
d[i][j]=___(1)___;
p[1]=0;
for(i=2; i<=n; i++) ___(2)___;
for(i=1; i<=n-1; i++)
{
minf=1E10;
for(j=1; j<=n; j++)
{
if(___(3)___)
{
minf = d[p[i]][j];
(___(4)___)
}
}
a=a+d[p[k]][k];
p[k]=0;
for(j=1; j<=n; j++)
if (___(5)___) p[i]=k;
}
printf("%0.2f",a);
return 0;
}
39) ①处应填( )




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




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




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




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




查看答案
增值服务权益

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

  订阅  
学员服务
教研服务

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

  详情