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.hqwc.cn/news/521148.html

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

相关文章

释机器学习中的召回率、精确率、准确率

准确率和召回率之间通常存在一定的折衷关系——当阈值较高时&#xff0c;分类器的准确率较高&#xff0c;但召回率较低&#xff1b; 当阈值较低时&#xff0c;分类器的召回率较高&#xff0c;但准确率较低 召回率(灵敏度)&#xff1a;对实际为正类的样本&#xff0c;模型能识别…

NHANES数据(复杂调查数据)亚组交互函数1.7(P for interaction)发布-纠正了目前的一个问题

大家好&#xff0c;有粉丝私信我说NHANES数据(复杂调查数据)亚组交互函数1.版本交互函数有点问题&#xff0c;我查看了一下&#xff0c;有个代码调用失效了。就是下面这个&#xff0c;本来我是这样调用数据的 ids<-match.call()$ids应该是由于R版本或者survy包升级后导致这…

事务失效的八种情况!!!!

EnableAspectJAutoProxy(exposeProxy true)&#xff0c;开启AOP&#xff08;面向切面编程&#xff09;代理&#xff0c;并允许通过AopContext类暴露当前代理对象。这样&#xff0c;你可以在任何地方获取到当前代理对象&#xff0c;以便进行一些特殊的操作 &#xff08;应用与第…

NLP评价指标

一、分类任务常见评估&#xff1a; 准确度(Accuracy) 评估预测正确的比例&#xff0c;精确率(Precision) 评估预测正例的查准率&#xff0c;召回率(Recall) 评估真实正例的查全率。如果是多分类&#xff0c;则每个类别各自求P、R最终求平均值。 TP&#xff08;True Positives…

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

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

智慧公厕系统架构分析及应用探索

智慧公厕是运用物联网技术和云计算平台&#xff0c;实现对公共厕所的智能管理和优化的未来式公共厕所信息化整体解决方案。该系统由应用层、平台层、传输层和感知层组成&#xff0c;各层相互配合&#xff0c;共同构建一个高效、智能的公厕运营环境。 一、感知层&#xff1a; …

Vue.js+SpringBoot开发城市桥梁道路管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、系统展示四、核心代码4.1 查询城市桥梁4.2 新增城市桥梁4.3 编辑城市桥梁4.4 删除城市桥梁4.5 查询单个城市桥梁 五、免责说明 一、摘要 1.1 项目介绍 基于VueSpringBootMySQL的城市桥梁道路管理系统&#xff0c;支持…

软件杯 卷积神经网络手写字符识别 - 深度学习

文章目录 0 前言1 简介2 LeNet-5 模型的介绍2.1 结构解析2.2 C1层2.3 S2层S2层和C3层连接 2.4 F6与C5层 3 写数字识别算法模型的构建3.1 输入层设计3.2 激活函数的选取3.3 卷积层设计3.4 降采样层3.5 输出层设计 4 网络模型的总体结构5 部分实现代码6 在线手写识别7 最后 0 前言…

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

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

第107讲:Mycat实践指南:取模分片下的水平分表详解

文章目录 1.使用取模分片水平分表2.水平分表取模分片案例2.1.准备测试的表结构2.2.配置Mycat实现范围分片的水平分表2.2.1.配置Schema配置文件2.2.2.配置Rule分片规则配置文件2.2.3.配置Server配置文件2.2.4.重启Mycat 2.3.写入数据观察水平分表效果 1.使用取模分片水平分表 平…

element---tree树形结构(返回的数据与官方的不一样)

项目中要用到属性结构数据&#xff0c;后端返回的数据不是官方默认的数据结构&#xff1a; <el-tree:data"treeData":filter-node-method"filterNode":props"defaultProps"node-click"handleNodeClick"></el-tree>这是文档…

品牌要把控质量也要管控价格

在品牌发展的道路上&#xff0c;产品质量的把控非常重要&#xff0c;关系到品牌的竞争力&#xff0c;但品牌要长期发展&#xff0c;产品要获得市场足够份额&#xff0c;还需要有稳定的价格体系做支撑&#xff0c;这个价格不是仅凭品牌单方面的定价而定&#xff0c;而是整个渠道…