第十三届蓝桥杯省赛(2022年4月17日)C++中级组题解

您所在的位置:网站首页 蓝桥杯c组题目 第十三届蓝桥杯省赛(2022年4月17日)C++中级组题解

第十三届蓝桥杯省赛(2022年4月17日)C++中级组题解

2023-08-09 16:43| 来源: 网络整理| 查看: 265

目录

前言

一、选择题

1.题目描述

2.参考答案

二、编程题

1.比较大小

题目描述

题目解析

AC代码

2.分成整数

题目描述

题目解析

AC代码1(模拟)

AC代码2(dfs)

3.组合

题目描述

题目解析

AC代码1(数论)

AC代码2(Sylvester定理)

4.最大值

题目描述

题目解析

AC代码1(模拟)

AC代码2(二分查找)

5.农作物

题目描述

题目解析

AC代码

6.面积

题目描述

题目解析

AC代码1

AC代码2

前言

        就在前两天,我参与了第十三届蓝桥杯省赛(2022年4月17日)C++中级组,考题挺难,但发挥较好。这是一篇相关的题解,题是我在考试时电脑截屏下来的。

一、选择题 1.题目描述

1.二进制数1101111转换为十六进制是(   ) 

A、157       B、111    C、6f        D、3f

2.下列指针的用法中,不正确的一项是(   ) 

A、int i; int *p=&i;  

B、int i; int *p; i=*p;     

C、int *p; p=0;     

D、int i=5; int *p; p=&i; 

3.以下对main()函数描述正确的一项是(   )  

A、main()函数必须写在所有函数的前面                       

B、main()函数必须写在所有函数的后面                                   

C、main()函数可以写在任何位置,但不能放到其它函数的里面                           

D、main()函数必须固定位置

4.下列函数中不能重载的一项是(   ) 

A、构造函数      B、析构函数      C、成员函数      D、非成员函数

5.定义char a; float b; double c; 执行语句 c=a+b+c 后c的变量类型是(  )。 

A、char         B、float     C、double    D、int

2.参考答案

CBCBC

(1) 四位截断, (110)2=(6)16 , (1111)2=(f)16 ,

(2) *p是一个空地址, 无法引用, B选项错误; C选项属于危险语法, 因为地址0是一个未知地址

(3) main()函数可以写在其它函数后面或前面(声明即可), 其它函数也可以调用main()函数,

但main()函数显然无法“放到”其它函数里面, 任何函数都做不到, 文字游戏, 有点无聊。

(4) 析构函数只有一个,无法构成重载。

(5) 已经定义了c是double, 任何运算都不会改变数据的类型, 类型覆盖只会影响运算的结果。

顺便说下类型覆盖, 浮点型>整型>字符型, 布尔型与字符型运算后结果为整型。

二、编程题 1.比较大小 题目描述

        给定两个正整数N和M (0n;//输入m,n的值 cout>h[i];//w和 h的顺序其实也无所谓, 摊手 cin>>k;//输入k的值 int L=1, R=*max_element(w,w+n)+1;//随便搞个上下限, 无脑二分: while(L+1边长小了-->提高下限 else R=mid;//猜错-->边长大了-->降低上限 } cout



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3