普及组初赛模拟

1 CPU 指的是计算机的( )部分
A 、运算器
B 、控制器
C 、运算器和控制器
D 、运算器、控制器和内存
2 计算机网络是一个( )系统
A 、管理信息系统
B 、管理数据系统
C 、编译系统
D 、在协议控制下的多机互连系统
3 在互联网上浏览网页时,网页中的图片是通过 _______ 协议传输的。
A TCP
B UDP
C HTTP
D FTP
4 用十六进制、八进制和十进制写一个等式 52-19=33 ,式中三个数是各不相同进位制的数,
52 19 33 分别为( )
A 、八进制数、十进制数、十六进制数
B 、十进制数、十六进制数、八进制数
C 、八进制数、十六进制数、十进制数
D 、十进制数、八进制数、十六进制数
5 在参加 NOI 系列竞赛过程中,下列哪种行为是允许的( )
A 、携带书写工具,手表和不具有通讯功能的电子词典进入赛场。
B 、在联机测试中通过手工计算出可能的答案并在程序里直接输出答案来获取分数
C 、通过互联网搜索取得解题思路。
D 、在提交的程序中启动多个进程以提高程序的执行效率
6 已知小写字母‘ m ’的十六进制的 ASCII 码值是 6D ,则小写字母‘
c ’的十六进制的 ASCII
码是( )
A 98
B 6
C 99
D 63
7 十进制算术表达式: 3*512+7*64+4*8+5 的运算结果,用二进制表示为( )
A 10111100101 B 11111100101 C 11110100101 D 11111101101
8 一个具有 2019 个结点的二叉树的高 h 为( )
A 11
B 10
C 10~2018
D 11~2019
9 存储一幅没有压缩过的 1024*768 像素、 256 色的图像大约需要的字节数位( )
A 192k
B 768k
C 1.5M
D 2.25M
10 设栈 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 g,e,f,d,c,b,a
11 将数组 {1,2,3,4,5,6,7,8} 中的元素用插入排序的方法按从大到小的顺序排列,需要比较的
次数是()
A 7
B 27
C 28
D 64
12 递归过程或函数调用时,处理参数和返回地址,通常使用一种称为( )的数据结构。
A 、队列
B 、多维数组
C 、线性表
D 、栈
13 鸽巢原理是组合数学中最简单也是最基本的原理,也叫抽屉原理。即“若有 n 个鸽子巢,
n+1 只鸽子,则至少有一个巢内有至少有两只鸽子。”请应用上面这个原理,来回答下面的
问题:我们学校有 367 个同学,至少有几个同学的生日是一样的?()
A 、没有一样的
B 2
C 3
D 4
14 a 为整形变量,不能正确表达数学关系: 10<a<15 C++ 表达式是()
A 10<a<15 B a==11||a==12||a==13 C a>10&&a<15 D !(a<=10)&&!(a>=15)
15 下列说法正确的是()
A C++ for 语句的三个表达式都可以省略,而且分号也可以省略。
B 、宏替换比函数调用的执行速度慢
C 、实质上, C++ 中的指针就是一个变量的地址
D C++ 中的任何函数都可以由程序员命名 16 、设变量 a b c d 、和 y 都已正确定义并赋值。若有以下 if 语句
16
if(a<b)
if(c==d)y=0;
else y=1;
该语句所表示的含义是()。
17 排序算法最稳定的意思是关键码相同的记录排序前后相对位置不发生变化,下列哪种排序算法是不稳定的()
A 、冒泡排序
B 、插入排序
C 、归并排序
D 、快速排序
18 G 是由 5 个顶点构成的完全图,则从 G 中删去( )条边可以得到树。
A 6
B 5
C 8
D 4
19 如图,汉诺塔问题是指有 3 根杆, A,B,C B 杆上有若干个碟子,把所有碟子从 B 杆移到
A 杆上,每次只能移动一个碟子,大的碟子不能叠在小的碟子上面。把 B 杆上的 4 个碟子全
部移到 A 杆上,最少需要移动().
A 12
B 15
C 17
D 19
20
#include <bits/stdc++.h>
using namespace std;
int f(int b[],int n)
{
int r=1;
for(int i=0;i<=n;i++)r=r*b[i];
return r;
}
int main()
{
int x,a[]={2,3,4,5,6,7,8,9};
cout<<f(a,3)<<endl;
}
上面程序的输出结果是(
A 720
B 120
C 24
D 6
21 30030 能被 ___________ 个不同的偶数整除 .
22 一群人开舞会,每人头上都带着一顶帽子。帽子只有黑白两种,黑的至少有一顶。每个 人都能看到其他人帽子的颜色,却看不到自己的。主持人让大家看看别人戴的什么帽子,一
关灯,如果有人认为自己戴的黑帽子就打自己耳光。第一次关灯没声音,于是再开灯,大家
再看一遍,关灯时依然鸦雀无声。知道第三次关灯,才有啪啪的声音响起。这说明一共有—
________ 人戴黑帽子。
23
#include<iostream>
using namespace std;
int main()
{
int x1=3,x2=8,x;
for(int i=1;i<=5;i++)
{
x=(x1+x2)*2;
x1=x2;
x2=x;
}
cout<<"x="<<x<<endl;
}
输出: _____________
24
#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int ans=0,sum=0;
while(n)
{
sum=sum*10+n%10;
n/=10;
ans+=sum;
}
cout<<ans<<endl;
}
输入: 123
输出: ___________
25
#include<iostream>
using namespace std;
int main()
{
int a[100]; int n;
cin>>n;
for(int i=1;i<=n;i++)cin>>a[i];
int ans=0,sum=0;
for(int i=1;i<=n;i++)
{
if(sum>0)sum+=a[i];
else sum=a[i];
if(sum>ans)ans=sum;
}
cout<<ans<<endl;
}
输入:
2
2 -1 3 4 -9 7
输出: __________
26
#include <bits/stdc++.h>
using namespace std;
int ans,n,m;
int a[100];
int f(int n,int m)
{
if(n<1||m<1)return 0;
if(n==1||m==1)return 1;
if(n<m)return f(n,n);
if(n==m)return f(n,m-1)+1;
return f(n,m-1)+f(n-m,m);
}
int main()
{
int n,m;
cin>>n>>m;
cout<<f(n,m)<<endl;
}
输入: 8 8
输出: __________
27 、(造素数)现在给你 n 个数,你需要从中选出 m 个数,使得这 m 个数的和为素数,求
出可选方案数。例如有从 1 2 3 三个数中选 2 个数,有 1+2=3 2+3=5 两种选法。下面代码
用搜索搜出所有可能并进行判断。
#include <bits/stdc++.h>
using namespace std;
int ans,n,m;
int a[100];
bool isPrime(int x){
        int y=sqrt(x);
        if(y*y== (1) ) return false;
        for(int i=2;i<=y;i++){
                if( (2) ==0)return false;
        }
        return (3) ;
}
void ff(int pos,int sum,int num) {
        if(num==m){
        if((4) )ans++;
        return;
        }
        for(int i=pos+1;i<=n;i++){
        ff(i,(5) ,num+1);
        }
        }
int main() {
        scanf("%d%d",&n,&m);
        for(int i=1;i<=n;i++)scanf("%d",&a[i]);
        ans=0;
        ff(0,0,0);
        printf("%d\n",ans);
}
(1) ___________________________
(2 ___________________________
(3 ___________________________
(4 ___________________________
(5 ___________________________
28 、(统计单词数) 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单
词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。
现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章中出
现的次数和第一次出现的位置。注意:匹配单词时,不区分大小写,但要求完全匹配,即给
定单词必须与文章中的某一独立单词在不区分大小写的情况下完全相同,如果给定单词仅是
文章中某一单词的一部分则不算匹配。
输入:
第一行为一个字符串,只包含字母,表示给定单词
第二行为一个字符串,包含字母和空格,表示给定文章
输出:
如果在文章中找到给定单词则输出两个整数, 两个整数之间用一个空格隔开,分别是单词
在文章中出现的次数和第一次出现的位置(即在文章中第一次出现时,单词首字母在文章中 的位置,位置从 0 开始) ;如果单词在文章中没有出现,则直接输出一个整数-1。
#include <bits/stdc++.h>
using namespace std;
int main(){
        string s1,s2;
        getline(cin,s1);
        (1);
        for(int i=0;i<s1.size();i++)
                if(s1[i]>='A'&&s1[i]<='Z')s1[i]+=32;
        for(int i=0;i<s2.size();i++)
                if((2))s2[i]+=32;
        string s="";
        int pos=0,ans=0,flag=0;
        int len1=s1.size(),len2=s2.size();
        for(int i=0;i<len2;i++) {
                if(s2[i]==' ')
                {
                        if((3)){
                        if(flag==0)pos=i-len1;
                        flag++;         
                        ans++;
                }
                s="";
                }
                else{
                        s+=s2[i];
                }
        }
        if(s==s1){
        //最后一个单词匹配
                if(flag)pos=(4);
                flag++;  
                ans++;
       }        
        if((5))
        printf("%d %d\n",ans,pos);
        else printf("-1\n");
}
(1)__________________________
(2)__________________________
(3)__________________________
(4)__________________________
(5)________________________
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值