2023秋--重庆大学期末模拟检测参考答案

重庆大学c++期末复习真题 期末模拟选择题答案:CACBBCDCCA分数 4作者 刘骥单位 重庆大学下列程序代码,正确的输出结果是( )int a=0xfe;char b=062;A.0xfe,062B.fe,62C.254,2D.254,622-2分数 4作者 刘骥单位 重庆大学下列代码能正确执行的是( )A.char a=‘C’;p=&a;p=a;D. 阅读详情
AI摘要

文章详细解析了C++中的基本概念,如变量赋值、运算符使用、结构体与类的实例、继承与多态、运算符重载以及数学题目(约数、逆序整数)。,

 选择题:


下列程序代码,正确的输出结果是( C)

int a=0xfe;
char b=062;
cout<<a<<","<<b<<endl;

A.
0xfe,062


B.
fe,62


C.
254,2


D.
254,62

2-2
分数 4
作者 刘骥
单位 重庆大学
下列代码能正确执行的是( A)


A.
char a='C';
const char& p=a;

B.
char a='C';
char* const p;
p=&a;

C.
char a='C';
const char& p;
p=a;

D.
char a='C';
char& p;
p=a;
2-3
分数 4
作者 刘骥
单位 重庆大学
new和delete运算符正确的使用是( D)


A.
int* p=new int[10];
delete p;

B.
int* p=new int(10);
delete []p;

C.
vector<int>* v=new vector<int>[10];
delete []v;

D.
int* a=new int[]{1,2,3,4};
delete []a;
2-4
分数 4
作者 刘骥
单位 重庆大学
下列哪个代码能够实现x和y值的交换(B )


A.
void fun(int a,int b) {
    int x = a;
    a = b;
    b = x;
}
int main() {
    int x = 1, y = 2;
    fun(&x, &y);
    cout << x << ","<<y << endl;
    return 0;
}

B.
void fun(int* a,int* b) {
    int x = *a;
    *a = *b;
    *b = x;
}
int main() {
    int x = 1, y = 2;
    fun(&x,&y);
    cout << x << ","<<y << endl;
    return 0;
}

C.
void fun(int& a,int& b) {
    int x = a;
    a = b;
    b = x;
}
int main() {
    int x = 1, y = 2;
    fun(&x, &y);
    cout << x << ","<<y << endl;
    return 0;
}

D.
void fun(const int&a,const int&b) {
    int x = a;
    a = b;
    b = x;
}
int main() {
    int x = 1, y = 2;
    fun(x, y);
    cout << x << ","<<y << endl;
    return 0;
}
2-5
分数 4
作者 刘骥
单位 重庆大学
下面有一个结构体,对结构体的错误使用是( B)

struct Book{
    string name;
    double price;
}

A.
Book b{"C++",20};

B.
Book b;
b->name="C++";
b->price=20;

C.
Book *b=new Book[2];
b[0].name="C++";
b[0].price=20;

D.
Book *p=new Book();
p->name="C++";
p->price=20;
2-6
分数 4
作者 葛亮
单位 重庆大学
下列种类的函数中,哪一种不是类的成员函数?(C)


A.
构造函数


B.
析构函数


C.
友元函数


D.
拷贝构造函数

2-7
分数 4
作者 葛亮
单位 重庆大学
父类Base和子类Derive的定义如下。请问在子类中,继承的父类成员f,x,y的访问控制权限分别是:D

class Base
{
    public:
        void f();
    protected:
        int x;
    private:
        int y;
};

class Derive : protected Base
{
};

A.
public, protected, private


B.
public, public, public


C.
private, private, private


D.
protected, protected, private

2-8
分数 4
作者 葛亮
单位 重庆大学
当变量x的输入值是9时,下面程序的运行结果是:C

#include <iostream>
#include <string>
using namespace std;
int main()
{
    int x;
    cin>>x;
    try
    {
        cout<<"begin"<<endl;
        if(x>100)
        {
            cout<<"1"<<endl;
            throw string("too big.");
        }
        else
        {
            cout<<"x="<<x<<endl;
        }
        cout<<"2"<<endl;
    }
    catch(string e)
    {
        cout<<"3:"<<e<<endl;
    }
    cout<<"end"<<endl;
    return 0;
 } 

A.
begin

1

2

end


B.
begin

1

3: too big.

2

end


C.
begin

x=9

2

end


D.
begin

1

3: too big.

end

2-9
分数 4
作者 刘骥
单位 重庆大学
下列哪个代码不会调用对象的拷贝构造函数(C )


A.
MyClass a;
MyClass b=a;

B.
MyClass a;
MyClass b(a);

C.
MyClass a;
MyClass& b=a;

D.
void f(MyClass obj)
{
   ....
}
MyClass a;
f(a);
2-10
分数 4
作者 刘骥
单位 重庆大学
根据下列类模板声明,正确初始化对象的方式是( A)

template<typename T1, typename T2>
class MyClass{
    private:
        T1 x;
        T2 y;
    public:
        MyClass(T1 _x, T2 _y):x(_x),y(_y){}
};

A.
MyClass<int,char> a(10,'a');

B.
MyClass a(10,'a');

C.
MyClass<int,char> a;

D.
MyClass a;

函数题:

6-1 类的定义(教师类Teacher):本题要求定义一个教师类Teacher,数据成员包含姓名name和年龄age,类的声明见给出的代码,请给出类的完整实现,并通过测试程序。

Teacher::Teacher(string n,int a){
    name =n;
    age=a;
}
string Teacher::getName() const{
    return name;
}
int Teacher::getAge() const{
    return age;
}
void Teacher::setName(string n)
{
    name =n;
}
void Teacher::setAge(int a)
{
    age=a;
}

6-2 加、不等和输入输出的运算符重载(2维向量Vec2)
本题要求定义一个二维向量类Vec2,类的声明见给出的代码,请给出类的完整实现,并通过测试程序。类的声明包括如下内容:

数据成员,向量的第一维u和第二维v;
u和v的访问函数;
构造函数;
加号、减号运算符重载(遵守二维向量的运算规则);
==和!=运算符重载(遵守二维向量的运算规则)
输入、输出运算符重载。

Vec2::Vec2(double u1,double v1){
    u=u1;
    v=v1;
}
Vec2 Vec2::operator+(const Vec2&b){
    return Vec2(u+b.u,v+b.v);
}
bool operator!=(const Vec2&a,const Vec2&b)
{
    return a.u!=b.u&&a.v!=b.v;
}
ostream&operator<<(ostream&os,const Vec2&c){
    os<<"u="<<c.u<<","<<"v="<<c.v;
    return os;
}
istream&operator>>(istream&is,Vec2&c){
   is>>c.u>>c.v;
}

6-3 继承和多态(水果和香蕉)
请设计水果和香蕉类,并通过测试程序,具体要求如下:

水果(Fruit)是基类,成员包含:
保护成员变量重量(weight,int类型)
公有构造函数
公有析构函数
公有函数display
香蕉(Banana)从水果类公有继承,成员包含:
私有成员变量产地(origin,string类型)
公有构造函数
公有析构函数
公有函数display

class Fruit{
public:
    int weight;
    Fruit(int a){
    weight =a;
    cout<<"Fruit Constructor"<<endl;
    };
    virtual ~Fruit(){
    cout<<"Fruit Destructor"<<endl;
    };
    virtual void display()
    {
    cout<<"weight="<<weight<<endl;
    };
};
class Banana: public Fruit{
    private:
        string origin="";
    public:
    Banana(string a,int b):origin(a),Fruit(b){
    cout<<"Banana Constructor"<<endl;
    };
    ~Banana(){
    cout<<"Banana Destructor"<<endl;
    };
    void display()
    {
    cout<<"origin="<<origin<<",";
    cout<<"weight="<<weight<<endl;
    };
};

编程题:

7-1 约数
当整数a除以整数b(b≠0),除得的商正好是整数而没有余数时,称b是a的约数。给你两个正整数A和B, 如果B是A的约数,请打印输出A+B, 否则打印输出A−B。

#include <iostream>
#include <math.h>
using namespace std;
int main()
{
    double x,y;
    cin>>x>>y;
    if(x/y==round(x/y)){
        cout<<x+y<<endl;
    }
    else{
        cout<<x-y<<endl;
    }
    return 0;
 } 

7-2 逆序整数:

#include <iostream>
#include <math.h>
using namespace std;
int main()
{
    int n,m,x,y;
    int a[100];
    int b[100];
    cin>>n>>m>>x>>y;
    int max=x;
    int min=x;
    int maxy=y;
    int miny=y;
    for(int i=0;i<n;i++){
        cin>>a[i];
        if(a[i]>max){
            max =a[i];
        }
        if(a[i]<min){
            min =a[i];
        }
    }
    for(int j=0;j<m;j++){
        cin>>b[j];
        if(b[j]>maxy){
            maxy =b[j];
        }
        if(b[j]<miny){
            miny =b[j];
        }
    }
    int cnt=0;
    for(int k=0;k<m;k++){
        if(b[k]<max&&b[k]>min){
            cnt++;
        }
    }
    if(y<max&&y>min){
            cnt++;
    }
    if(miny<min&&maxy>max){
            cnt++;
    }
    if(cnt==0){
        cout<<x<<" and "<<y<<": impossible"<<endl;
    }
    else{
        cout<<x<<" and "<<y<<": possible"<<endl;
    }
    return 0;
 }

7-3 一维世界的疫情传播:

#include <iostream>
#include <math.h>
#include <string.h>

using namespace std;
int main()
{
    int n;
    string x,y;
    cin>>n;
    cin>>x;
    cin>>y;
    int cnt=0;
    for(int k=0;k<=n-1;k++){
        if(x[k]==y[n-k-1]){
            cnt++;
        }
    }
    if(cnt==n){
        cout<<x<<" and "<<y<<" are reverse."<<endl;
    }
    else{
        cout<<x<<" and "<<y<<" are not reverse."<<endl;
    }
    return 0;
 }
6-1 学生成绩的输入和输出(运算符重载) (10分) 现在需要输入一组学生的姓名和成绩,然后输出这些学生的姓名和等级。 输入时,首先要输入学生数(正整数)N。接着输入N组学生成绩,每组成绩包括两项:第一项是学生姓名,第二项是学生的成绩(整数)。 输出时,依次输出各个学生的序号(从1开始顺序编号),学生姓名,成绩等级(不小于60为PASS,否则为FAIL) 函数接口定义: 面向Student类对象的流插入和流提取运算符 #include <iostream> #include <string> using namespace std; 阅读详情

相关推荐

c++练习题----二维向量相加(C++ 运算符重载)

6-1 函数重载实现两数相加 (15分) 设计一个重载函数add,该函数有两个参数,可以实现两个类型相同的参数相加的操作,函数返回相加的结果。两个参数可以是整数、实数和字符串,但必须保证两个参数类型相同。 裁判测试程序样例: #include <iostream> #include <string> #include <iomanip> using namespace std; /* 请在这里填写答案 */ int main() { int a, b

bless_my_head的博客 3927

继承和多态(水果和香蕉)

继承和多态(水果和香蕉)

qq_45491519的博客 2509

【UV打印机】RYPC打印软件教程(二)-软件界面概述

下图是控制软件的主操作界面.将喷绘机的操作规纳为四块,分别为参数设置,任务选择,打印控制,系统维护,对于日常打印而言,只需操作任务选择,打印控制。从而使汲及的操作相对较少,使得系统对普通用户而言简单易用.

Print World的专栏 3601

重庆大学c++2022级-期末模拟考试

A.单选题2-1下列程序代码,正确的输出结果是( )A.0xfe,062B.fe,62C.254,2D.254,622-2下列代码能正确执行的是( )A.B.C.D.2-3new和delete运算符正确的使用是( )A.B.C.D.2-4下列哪个代码能够实现x和y值的交换( )A.B.C.D.2-5下面有一个结构体,对结构体的错误使用是( )ABCD2-6下列种类的函数中,哪一种不是类的成员函数?A.

mo_zhongzhou的博客 1万+

Halcon手眼标定保姆级教程:从‘眼在手上’到‘眼到手’两种模式全解析(附代码)

本文详细解析Halcon在机器人视觉引导中的手眼标定技术,涵盖Eye-in-Hand和Eye-to-Hand两种模式,提供从硬件准备到实战代码的完整解决方案。通过精确的相机标定和坐标转换,帮助实现工业自动化中机械臂与视觉系统的高精度协同作业。

weixin_42544461的博客 209

企业多部门网络隔离实战:用华为交换机VLAN+Trunk实现行政/技术部安全隔离

本文详细介绍了如何利用华为交换机的VLAN划分与Trunk链路技术,实现企业行政与技术部门间的网络逻辑隔离。通过具体的配置案例,阐述了Access与Trunk端口的工作原理、单交换机与多交换机环境下的部署策略,并延伸至三层网关部署与ACL访问控制,为企业构建安全、高效的核心网络提供实战指导。

p4q5r6s7t的博客 577

输入输出运算符的重载

运算符重载相信大家都不陌生。运算符函数通常分为两种形式:一类是在类中定义的运算符成员函数,称之为类成员运算符;另一种在类之外定义的运算符重载,通常以该类的友元形式,称之为友元运算符。 1、重载输入输出运算符的形式。常见的形式如下: 类型中声明友元函数(友元函数必须在类中声明) class Complex{ public: Complex( double r=0,...

mijichui2153的博客 1万+

pta——特立独行的幸福

这是我认为比较复杂的一道题了,比较迷茫的点在于不知道要算各位平方和几次到不了1,才算他不是幸福数。突破口在于如果如果不是回到1也会有一些数字重复出现,只要重复出现的数字不是1,那就不是幸福数

m0_65620244的博客 4035

2023秋--重庆大学cpp期末模拟检测参考答案

本题要求定义一个教师类Teacher,数据成员包含姓名name和年龄age,类的声明见给出的代码,请给出类的完整实现,并通过测试程序。

2302_79915950的博客 3559

Claude Code 里的 MCP 连接失败到底在报什么

文档还说明,HTTP 类型、stdio 类型等 MCP server 的接入方式不同,stdio server 会被 Claude Code 当作本地进程拉起,而 HTTP server 则需要 Claude Code 去访问一个已经存在的 HTTP endpoint。把这段输出翻成更接地气的运维语言,就是 Claude Code 已经知道我们想接两个外部能力,一个是 SAP ADT 官方 MCP,一个是 Chrome DevTools MCP,但当前没有一个完成握手。,因为它的信号更明确。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 146

使用Qt Creator自带的Qt Designer构造UI界面流程总结

在本文中,我们将总结使用Qt Creator自带的Qt Designer构造UI界面的流程。在对话框中,您可以选择一个控件的信号,然后将其连接到另一个控件的槽。例如,您可以将按钮的点击信号连接到一个槽函数,以响应按钮的点击事件。右键单击窗口设计器中的空白区域,选择适当的布局管理器,如水平布局、垂直布局或网格布局。在Qt Designer中,您可以使用各种预定义的UI控件来设计应用程序的界面。现在,您可以在应用程序的源代码中使用生成的UI界面。在您的源文件中,包含相应的头文件,然后创建一个UI界面的实例。

cl6789的博客 1394

加、不等和输入输出的运算符重载(2维向量Vec2)

加、不等和输入输出的运算符重载(2维向量Vec2)

qq_45491519的博客 2108

基于Claude Code的 规范驱动开发(SDD)指南

传统的AI辅助开发,如同手工作坊,我们向AI描述想法,它给我们零散的部件,我们再手动打磨、组装。这个过程充满了不确定性、信息损耗和重复劳动。本指南将尝试引领您进入软件开发的“工业时代”。在这里,

形上得其象,形下合于数;阴阳自济,玄理自明。 2749

创建一个水果类 包含水果的颜色形状--C#

定义一个水果类,打印输出水果的基本信息 //定义一个水果类Fruit,该类具有水果的颜色、形状等成员变量(字段) //完成该类的构造函数的创建。并在主函数中完成该类的实例化及测试。 using System; namespace 水果类 { public class Fruit { public string fruit; public st...

weixin_45661800的博客 4825

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

6-11 二维向量相加(C++ 运算符重载)分数 10

裁判测试程序样例中展示的是一段二维向量类TDVector的定义以及二维向量求和的代码,其中缺失了部分代码,请补充完整,以保证测试程序正常运行。 函数接口定义: 提示:需要补充的函数有: 1. 带参构造函数 2. getX 3. getY 4. setX 5. setY 6. 运算符重载函数 裁判测试程序样例: #include <iostream> #include <iomanip> using namespace std; class TDVector{

bujianzingguang的博客 1112

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

类的定义(教师类Teacher)

类的定义(教师类Teacher)

qq_45491519的博客 2879

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

python期末编程题及答案,python期末简答题及答案

这篇文章主要介绍了python程序设计期末题库和答案,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。

yang0728y的博客 3322

【C++进阶】利用重载二元运算符改进平面向量类Vec2D

先前回顾 在【C++进阶】 遵循TDD原则,实现平面向量类(Vec2D)中我们初步实现了Vec2D内容,现在做出一定的改进: 实现Vec2D的一半二元算数运算符重载 1、 + - (两个Vec2D对象运算以及1个Vec2D对象与一个double数运算) 2、*(点乘和数乘) 同时将之前涉及对象拷贝的函数用传引用的方式进行修改。 注意,若有对象拷贝则需要传引用,如果只是简单的值拷贝,则不需要传引用。 知识点 先看看我们一般是怎么调用二元运算符: 注意最后一个是个“错误”的写法,因为这个不属于成员函数的写法

hanhan的博客 1567

每日一练:前缀和(余数定理、负数取模修正)-和可被K整除的子数组

(1)假设k==5,目前sum==-6,-6%5==-1,如果之前有一个区间和为6,但是6%1==1不等于-1,但是实际上-6+6等于0是可以被k整除的,为了考虑到这种特殊情况,可以把负数的余数都变成正数:用(sum%k+k)%k,这样的结果必然是正确的正数。那么一定有(sum-x)%k==0,推导得:sum%k==x%k,因为它们互为冲要条件,所以现在得问题变成了在sum中找到一段[0,i]的区间,它的和x%k==sum%k,那么另一段区间t必然符合要求。dp[i][j]保存区间[i,j]的和。

2303_78095330的博客 517

C++之对象模型

vptr的设定和重置由类的构造,析构和拷贝赋值运算符自动完成;• 虚拟继承:在有虚基类的构造初始化中,最上面公共继承的父类的构造只调用一次,最底层继承的类负责构造最顶层共享的父类,编译器的大概实现是加一个bool字段,在每一层派生的子类构造中添加代码判断是否是最下面的子类,如果是去调用虚基类构造;• 取一个非静态数据成员的地址,如果该函数是非虚,则得到的结果是它在内存中真正的地址,然而这个值也是不完全的,需要绑定到某个类对象的地址上,才能通过它调用该函数,所有的非静态成员函数都需要对象的地址。

u010378559的博客 1722

2021-07-16水果继承

心累,还是没弄明白虚继承和虚函数 ```cpp #include <iostream> #include <iomanip> #include <string> using namespace std; class Citrus { public: string name; int weight; Citrus(){} Citrus(string n,int w):name(n),weight(w){} void show

weixin_51466785的博客 531

LHL PTA 实验11 运算符重载、模板

题目1 6-1 学生成绩的输入和输出(运算符重载) (25分) 现在需要输入一组学生的姓名和成绩,然后输出这些学生的姓名和等级。 输入时,首先要输入学生数(正整数)N。接着输入N组学生成绩,每组成绩包括两项:第一项是学生姓名,第二项是学生的成绩(整数)。 输出时,依次输出各个学生的序号(从1开始顺序编号),学生姓名,成绩等级(不小于60为PASS,否则为FAIL) 函数接口定义: 面向Student类对象的流插入和流提取运算符 裁判测试程序样例: #include #include using name

Simple_questions的博客 2412

重载运算符

重载运算符参数数量一般和运算符作用的运算对象数量一样多,作为成员函数的重载运算符其显式参数数量比运算对象总数少一。 重载运算符本质是一次函数调用,求值顺序一般不会保留,所以不应该重载逻辑与、或以及逗号和取地址运算符(&amp;amp;amp;amp;amp;amp;&amp;amp;amp;amp;amp;amp; || , &amp;amp;amp;amp;amp;amp;)。 算术或位运算最好配套其符合赋值运算符。 成员or非成员: (1)成员:有些必须是,还有些改

莫问收获,但问耕耘 529
上一篇: 重庆大学C++期中模拟:输出CQU
下一篇: 重庆大学2023级期末模拟测试题选择题题库(一)
CQU_Freshman
博客等级 码龄3年 103粉丝 6原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CQU_Freshman

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值