c1-第三周

文章目录

  • 1月份
    • 2.定义一个整形数组arr
    • 2.定义整形栈s
    • 3.输入一个字符串包括大小写和数字,将其中的大写英文字母改为小写,并且输出数字个数
    • 4.根据下面数据,编程实现要求功能:
  • 9月
    • 1.编写程序实现以下功能或问题
    • 3.完成以下功能
    • 4.对运算符“%”重载,实现数组各对应元素求模运算,如:a[3]={ 11,22,37 } ,b[3]={ 3,6,8 } ,则 a%b={ 2,4 ,5 } 。具体要求:

1月份

2.定义一个整形数组arr

(1)把arr中的偶数去掉后保存到一个新数组中
(2)输出arr数组元素,输出新数组元素,并输出新旧数组长度之差

void test_week3_1(){int arr1[9]={1,2,3,4,5,6,7,8,9};int arr2[9];int k = 0;for(int i = 0;i<9;i++){if(arr1[i]%2 != 0){arr2[k] = arr1[i];cout << arr2[k] << endl; //打印新数组k++;}}cout << 9-k<< endl;
}

在这里插入图片描述

2.定义整形栈s

(1)栈s中添加多个元素
(2)遍历并输出元素

#include <stack> //导栈
void test_week_3(){stack<int> s; //定义int类型的栈(容器)s.push(1);//放进去  底s.push(2);//放进去s.push(3);//放进去 顶for(int i = 0;i<3;i++){cout << s.top()<< endl; //3 2 1s.pop();//弹走}
}

3.输入一个字符串包括大小写和数字,将其中的大写英文字母改为小写,并且输出数字个数

(1)按要求提示并输入要转换的字符串
(2)循环判断每个字符并转换并判断数字的个数
(3)正确输出转换后的结果和数字的个数

int main(){string str1 = "abc111AAA";int num = 0;for(int i = 0 ;i<str1.length();i++){ //i下标if(isdigit(str1[i])){num++;} else if(isupper(str1[i])){str1[i]=tolower(str1[i]);}}cout << num<< endl;cout << str1;}

4.根据下面数据,编程实现要求功能:

姓名 年龄 性别
name age gender
A 22 女
B 21 女
C 20 男
D 23 男
E 19 男
(1)定义学生结构体或者类Stu,包括姓名(name),年龄(age),性别(gender)等变量
(2)定义结构体MyR,要求结构体中用上()运算符重载
(3)定义函数show,要求对传入的学生数据进行显示
(4)在主程序中,根据题目中数据创建学生数组
(5)调用show方法遍历学生数据并输出
(6)对学生数据根据年龄进行排序并输出排序后结果
(7)判断是否存在名字为E的学生并输出结果
(8)要求主程序中使用STL,用上sort方法
(9)要求主程序中排序时用上MyR与运算符重载()


struct student{string name;int age;string sex;
};//制定排序规则
struct MyR {//重载()运算符bool operator()(student s1, student s2){return s1.age > s2.age; //用年龄 >降序}
};//用来打印结构体数据
void show(student stu){cout << "name:" << stu.name <<"age:" << stu.age <<"sex:" <<stu.sex << endl;
}
//以前的写法
//bool compare(student stu1,student stu2){
//    return stu1.age > stu2.age; //>年龄降序  <升序
//}
int main(){student stu1={"谢天宇",20,"男"}; //结构体创建对象student stu2={"张文京",19,"男"}; //结构体创建对象student stu3={"班长",21,"男"}; //结构体创建对象student arr[3] ={stu1,stu2,stu3};sort(arr,arr+3, MyR()); //排序//打印看看是否排序了for(int i = 0;i<3;i++){show(arr[i]); //在循环中调用打印函数,打印学生信息}}

9月

1.编写程序实现以下功能或问题

(1)定义一个成绩类Grade
(2)数据成员:gMath、gChn、gEng。分别储存数学、语文、英语的成绩
①说明:学生A三门成绩为77、80、75
②说明:学生B三门成绩为65、75、70
(3)函数成员:构造函数(有参数)、相应的计算、输出信息等函数。计算、输出的实际方式不限
(4)对2个学生(stuA、stuB)的各项成绩,运用合理方法,计算2名学生各自的总分并输出
(5)输出2个学生各项的成绩总和(即mathSum、chnSum、engSum),并相应输出

class Grade{
public:int gMath;int gChn; //语文int gEng; //英文//带参构造 用来给属性赋值Grade(int math,int chinese,int english){gMath = math;this->gChn = chinese;this->gEng = english;}void get_sum(){cout << "成绩总和是:" << gMath+gChn+gEng <<endl;}//第5问void operator+(Grade a){ //重载(重写)运算符+ (+ - * / % ++ --)cout << "语文成绩和是:" << a.gChn+ gChn;cout << "英语成绩和是:" << a.gEng+ gEng;cout << "数学成绩和是:" << a.gMath+ gMath;}
};

3.完成以下功能

问题描述:老师和学生有共同的属性m_name。各自的衡量标准是老师的论文数量m_paper和学生的考试分数m_score。由键盘输入对应的数值,输出复合条件的对应的姓名。老师要求m_paper > 3。学生要求m_score > 80。
提示:本题要#include
(1)定义基类Base
①公有域成员:构造函数(输入m_name行为放在构造函数内)、功能函数(输出数据)、纯虚函数isGood,用于判断是否满足条件、接口函数输出信息
②保护域成员:string型数据m_name、int型数据m_score、int型数据m_paper
(2)派生student和teacher两个类
①公有域成员:构造函数(学生类由键盘输入m_score、教师类由键盘输入m_paper)
②isGood()函数,学生类m_score>80返回1、教师类m_paper>3返回1。不符合条件返回0
(3)对于符合条件(即上条要求)的,接口函数,输出对应的m_name

using namespace std;
class Base{    //父类
protected:string m_name;int m_score;int m_paper;
public:Base(string m_name){this->m_name = m_name;}void print(){cout <<"名字:" << m_name << endl;}virtual int isGood()=0; //纯虚函数
};class student: public Base{ //子类 : 父类   (继承)
public:student(string m_name):Base(m_name){ //调用父类的构造函数,给名字赋值cout << "输入学生成绩" << endl;cin >> m_score;}int isGood(){  //重写(覆盖)父类的虚函数//补齐if(m_score > 80){cout << "成绩合格" << endl;return 1;} else{cout << "成绩不合格" << endl;return 0;}}
};class teacher:public Base{  //子类2
public:teacher(string m_name):Base(m_name){ //子调用父的构造函数,为了给name赋值cout << "输入论文数量" << endl;cin >> m_paper;}int isGood(){if(m_paper > 3){cout << "论文数量合格" << endl;return 1;} else{cout << "论文数量不合格" << endl;return 0;}}
};
int main(){student stu1("张世博");stu1.print();stu1.isGood();teacher tea("小李");tea.print();tea.isGood();
}

4.对运算符“%”重载,实现数组各对应元素求模运算,如:a[3]={ 11,22,37 } ,b[3]={ 3,6,8 } ,则 a%b={ 2,4 ,5 } 。具体要求:

(1)类的公有函数成员:构造函数,接受参数为数组名
(2)利用运算符%的重载,完成相关运算
(3)在主函数中定义相关对象,并进行测试

class Test{
public:int arr[3]; //属性Test(int a[3]){ //{1,2,3}for(int i = 0;i<3;i++){arr[i]=a[i];}}void operator%(Test b){ //b---arr{3,6,8}for(int i = 0;i<3;i++){cout <<  arr[i]%b.arr[i] << endl;}}
};
int main(){int arr1[3] = {11,22,37};Test a(arr1);int arr2[3] = {3,6,8};Test b(arr2);a%b;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/729223.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构之单链表详解(C语言手撕)

​ &#x1f389;个人名片&#xff1a;&#x1f43c;作者简介&#xff1a;一名乐于分享在学习道路上收获的大二在校生 &#x1f648;个人主页&#x1f389;&#xff1a;GOTXX &#x1f43c;个人WeChat&#xff1a;ILXOXVJE &#x1f43c;本文由GOTXX原创&#xff0c;首发CSDN…

移动执法远程视频监控方案:视频监控系统EasyCVR+4G/5G移动执法仪

一、背景需求 在现代城市管理中&#xff0c;移动执法仪视频监控方案正逐渐成为一种高效、便捷的管理工具。该方案通过结合移动执法仪和视频监控技术&#xff0c;实现了对城市管理现场的实时监控和取证&#xff0c;有效提升了城市管理水平和效率。 移动执法仪作为现场执法的重…

深入浅出(二)MVVM

MVVM 1. 简介2. 示例 1. 简介 2. 示例 示例下载地址&#xff1a;https://download.csdn.net/download/qq_43572400/88925141 创建C# WPF应用(.NET Framework)工程&#xff0c;WpfApp1 添加程序集 GalaSoft.MvvmLight 创建ViewModel文件夹&#xff0c;并创建MainWindowV…

探索免安装的轻量级数据库:SQLite、SQL Server Compact

在应用程序开发中&#xff0c;有时候我们不需要复杂的数据库系统&#xff0c;而只需要一个轻量级的解决方案来存储和管理数据。本文将向您介绍三种免安装的轻量级数据库&#xff1a;SQLite和SQL Server Compact&#xff0c;并提供它们的特性、使用方式和实际应用场景。 1、SQL…

S3---FPGA-A7板级电源硬件实战

视频链接 FPGA-A7板级电源硬件实战01_哔哩哔哩_bilibili FPGA-A7板级电源硬件实战 1、基于A7 板级的系统框图 2、基于A7 板级的电源设计细则 2.1、A7 FPGA功耗评估 Artix-7 FPGA电源有VCCINT, VCCBRAM, VCCAUX, VCCO, VMGTAVCC和VMGTAVTT。 2.1.1、A7 FPGA电源管脚 2.1.2…

vue2的element UI 表格单选

代码 this.$refs.multipleTable.toggleRowSelection(selection.shift(), false);multipleTable 是定义的表格的ref

Qt添加VTK并绘制图形

文章目录 准备环境使用VS创建Qt Widget项目配置VTK依赖调试C/C链接器 添加vtk窗口测试代码 参考链接&#xff1a; VS2017配置QT环境(详细版)_vs2017 qt-CSDN博客 QT5VTK9.1最新配置方法_qt vtk-CSDN博客 VTK笔记-Qt5.12.11编译VTK9.0.3-QVTKOpenGLNativeWidget-CSDN博客 准…

【C++】设计模式:观察者、策略、模板

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍设计模式&#xff1a;观察者、策略、模板。 学其所用&#xff0c;用其所学。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xf…

构建MySQL数据库的高可用与高容错系统:关键策略与最佳实践

简介 在今天的数据驱动时代,数据库的高可用性(High Availability, HA)和高容错性(High Fault Tolerance)不再是可选项,而是每一个企业和应用都必须考虑的核心特性。特别是对于MySQL这样广泛使用的数据库系统,如何确保它能在各种故障面前保持持续可用,并且能迅速从故障…

VsCode搭建Spring Boot项目环境

VsCode搭建Spring Boot项目环境 1、前提条件&#xff1a;配置Java环境 下载安装JDK配置环境变量 2、VsCode配置SpringBoot环境 安装扩展 配置Maven 找到Maven配置文件&#xff0c;进行打开settings.json&#xff0c;添加如下代码&#xff1a; "workbench.iconThem…

用C语言easyx 做一个《正弦彩环》

#include <easyx.h> #include <cmath> #include<stdio.h> #define WIN_WIDTH 800 #define WIN_HEIGHT 800int main() {// 初始化图形界面initgraph(WIN_WIDTH, WIN_HEIGHT);setbkcolor(WHITE);cleardevice();// 开启双缓冲// BeginBatchDraw();// 设置颜色变…

数字孪生技术快速构建智慧光伏电站智能运维系统

前言 光伏即光生伏特&#xff0c;是通过半导体材料实现的光电转化。以太阳能电池板为核心的光伏设施将太阳能直接转化为电能&#xff0c;释放光能这一清洁能源的应用价值。 经过十几年的发展&#xff0c;光伏产业已成为我国少有的形成国际竞争优势、实现端到端自主可控、并有望…

Python数据处理实战(5)-上万行log数据提取并分类进阶版

系列文章&#xff1a; 0、基本常用功能及其操作 1&#xff0c;20G文件&#xff0c;分类&#xff0c;放入不同文件&#xff0c;每个单独处理 2&#xff0c;数据的归类并处理 3&#xff0c;txt文件指定的数据处理并可视化作图 4&#xff0c;上万行log数据提取并作图进阶版 …

HttpRequest请求模块设计与实现(http模块二)

目录 类功能 类定义 类实现 编译测试 类功能 类定义 // HttpRequest请求模块 class HttpRequest { public:std::string _method; // 请求方法std::string _path; // 资源路径std::string _version…

MySQL查询优化方案汇总(索引相关)

索引相关 类型隐式转换 大坑 **字段filed1是varchar类型&#xff0c;且加了索引&#xff0c;如果 where filed1 123; type 可能是all&#xff0c;因为123是数字类型&#xff0c;mysql内部会用函数做隐式转换&#xff0c;用了函数&#xff0c;索引就失效了。**大数据深度分页…

【技术干货】教你如何基于华为昇腾CANN架构快速实现模型推理应用(内含视频教程)

昇腾的AI全软件栈平台、开源框架、CANN、MindSpore、MindX 等工具&#xff0c;可以让开发者实现「统一端边云&#xff0c;全端自动部署」&#xff0c;开启了机器学习开发的新时代&#xff0c;一直被人们寄予厚望。但正因为资源极其丰富&#xff0c;浩如星辰&#xff0c;想要快速…

使用Python进行股票分析(1)

简介 Python具有非常好的数据分析和数据可视化的功能。在本文中&#xff0c;我们将通过使用Python获取股票的闭市价格&#xff0c;并且对股票价格进行分析从而向我们提供买卖股票的依据。 数据获取 需要说明的是在这里我们获取的是美国股票的数据。至于中国股市的数据大家可…

LeetCode 第53天 | 1143. 最长公共子序列 1035. 不相交的线 53. 最大子数组和 PTA一些注意点 动态规划

1143. 最长公共子序列 最长公共子序列和最长公共子数组的区别在于&#xff0c;dp中子序列可以不连续&#xff0c;可以从左上&#xff08;text1[i-1] text2[j-1]&#xff09;推出&#xff0c;也能从左边或者上边&#xff08;取最大值&#xff09;推出&#xff1b;公共子数组只能…

前端状态码报错(解析)

400系列状态码 - 客户端错误&#xff01; &#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 400 Bad Request 描述&#xff1a;这是一个通用的错误响应&#xff0c;表示服务器无法理解请求由于无效的语法。实例&#xff1a;…

【C语言】左旋字符串(三种实现方式)

题目&#xff1a; 实现一个函数&#xff0c;可以左旋字符串中的k个字符。 例如&#xff1a; ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB 方法一&#xff1a; 我们画个图分析一下&#xff1a; 基本逻辑&#xff1a; 就是我们每一次旋转之前&#xff0c;我们就取出…