20240405,数据类型,运算符,程序流程结构
是我深夜爆炸,不能再去补救C了,真的来不及了,不能再三天打鱼两天晒网了,真的来不及了呜呜呜呜
我实在是不知道看什么课,那黑马吧……MOOC的北邮的C++正在进行呜呜
#include <iostream>
using namespace std;
int main()
{cout << "hallo world" << endl;system("pause");return 0;
}
1.1 变量
定义变量:数据类型 变量名称 = 变量初始值【格式】
1.2 常量 不可修改
1,#define 宏常量,#define 常量名 常量值
2,const 修饰的变量 ,const 数据类型 常量名=常量值
#include <iostream>
#define DAY 7
using namespace std;
int main()
{const int mouth = 31;cout << "hallo world,一周"<<DAY<<"天,大月"<<mouth << endl;system("pause");return 0;
}
1.3 关键字
标识符命名规则:非关键字,字母+数字+下划线,首位非数字,大小写
建议,最好能够见名知意
二,数据类型
2.1 整型
short ==2 【-32768~32767】;int ==4;long==4(分那啥);long long==8;
sizeof( )
#include <iostream>
using namespace std;
int main()
{short num1 = 32768;int num2 = 32768;long num3 = 0;long long num4 = 0;cout << num1 << "——"<<sizeof(short)<<endl;cout << num2 << "——" << sizeof(int) << endl;cout << num3 << "——" << sizeof(long) << endl;cout << num4 << "——" << sizeof(long long) << endl;system("pause");return 0;
}
2.2 实型(浮点型
float 单精度,7有效数字,数值后面加上F表示类型;double,双。。,15-16位
默认输出6位小数,科学计数法
#include <iostream>
using namespace std;
int main()
{float fnum1 = 3.15344534f;//加后缀自动识别FLOAT,否则DOUBLEdouble dnum2 = 4.4335363748456345234232;float num3 = 3e2;float num4 = 3e-2;cout << fnum1 << "——"<<sizeof(float)<<endl;cout << dnum2 << "——" << sizeof(double) << endl;cout << num3 << endl;cout << num4 << endl;system("pause");return 0;
}
2.3 字符型
CHAR 变量名 =‘单个字符’,大小1字节,ASCII码,a-97,A-67,0-31控制字符,32-126打印字符
#include <iostream>
using namespace std;
int main()
{char a = 'a';cout << a << "——"<<sizeof(char)<<endl;cout << a << "——" << (int)a << endl;system("pause");return 0;
}
2.4 转义字符
水平制表符——对齐、整齐输出,换页和垂直制表感觉和换行差不多
#include <iostream>
using namespace std;
int main()
{cout << "aaa\abbb" << endl;cout << "aaa\bbb" << endl;cout << "aaa\f换页bbb" << endl;cout << "aaa\nbbb" << endl;cout << "aaa\tbbb" << endl;cout << "a\tbbb" << endl;cout << "aaa\vbbb\v垂直制表" << endl;cout << "aaa\vbbb\v垂直制表" << endl;cout << "aaa\\bbb" << endl;cout << "aaa\'bbb" << endl;cout << "aaa\"bbb" << endl;cout << "aaa\?bbb" << endl;return 0;system("pause");
}
2.5 字符串型
1,C风格字符串:CHAR 变量名【】=“字符串值”;CHAR A='A'字符,CHAR A[ ]="A"字符串
2,C++风格字符串:STRING 变量名=“字符串值”;;包含头文件#include <string>
#include <iostream>
#include <string>
using namespace std;
int main()
{char a[] = "hallo word?";string b = "ni hao,xiexie";cout << a << endl;cout << b << endl;return 0;system("pause");
}
2.6 布尔类型BOOL
true--1,false--0,sizeof(bool)==1;赋值给数字,除了0都代表真
#include <iostream>
using namespace std;
int main()
{bool flag = true;cout << flag << endl;flag = false;cout << flag << endl;cout << sizeof(bool) << endl;//1return 0;system("pause");
}
2.7 数据输入
#include <iostream>
#include<string>
using namespace std;
int main()
{//intint ant = 23;cout << ant << endl;cin >> ant;cout << ant << endl;//floatfloat ff = 5.8900f;cout << ff << endl;//输出抹零了cin >> ff;cout << ff << endl;//charchar ch = 'a';cout << ch << endl;cin >> ch;cout << ch << endl;//stringstring b= "qunidsefw";cout << b << endl;cin >> b;cout << b << endl;//boolbool flag = false;cout << flag << endl;//除了0,输入啥都是1cin >> flag;cout << flag << endl;return 0;system("pause");
}
三,运算符
3.1 算数运算符
+,-,*,/,%【小数和小数不能做取余运算】,++A,A++,--A,A--,同C
#include <iostream>
using namespace std;
int main()
{int a = 2;int b = a++;int c = ++a;cout << a << "\t" << b << "\t" << c << endl;cout << c % a << endl;cout << a++ * 100 << endl;cout << ++a * 100 << endl;return 0;system("pause");
}
3.2 赋值运算符
+=,-=,*=,/=,=,%=
3.3 比较运算符
==,!=,<,>,<=,>=
#include <iostream>
using namespace std;
int main()
{int a = 2;int b = ++a;cout << (a>b)<< endl;cout << (a < b) << endl;cout << (a != b) << endl;cout << (a==b)<< endl;cout << (a <= b) << endl;cout << (a >= b) << endl;return 0;system("pause");
}
3.4 逻辑运算符
!非【BOOL里面,不是0都是真】,&&与,||或
#include <iostream>
using namespace std;
int main()
{int a = 2; int b = 10;cout << !a << endl;cout << !!a << endl;a = 2; b = 2;cout << (a&&b)<< endl;cout << (a || b) << endl;a = 0; b = 3;cout << (a && b) << endl;cout << (a || b) << endl;a = 0; b = 0;cout << (a && b) << endl;cout << (a || b) << endl;return 0;system("pause");
}
四,程序流程结构
顺序,选择,循环
【C撸了不少了,就不仔细打了】
4.1 选择结构
1.0 IF——同C
2.0 三目运算符:表达式?A:B,如果表达式为真,返回A,假返回B【返回的是变量,可以继续赋值】
3.0 SWITCH——同C【结构清晰,效率高,只能整型和字符型,BREAK】
#include <iostream>
using namespace std;
int main()
{int a = 9, b = 90;cout << (a > b ? a : b) << endl;(a > b ? a : b) = 78;//==78cout << a << endl;cout << b << endl;(a < b ? a : b) = 78;cout << a << endl;cout << b << endl;return 0;system("pause");
}
4.2 循环结构
1.0 WHILE循环
【RAND()%100,%100表示生成随机数的区间,0~99,0+1~99+1,rand()%100+1】
可以用BREAK退出当前循环
2.0 DO……WHILE循环
#include <iostream>
#include<ctime>
using namespace std;
int main()
{srand((unsigned int)time(NULL));//添加随机数种子,作用:利用当前系统时间生成随机数,防止每次随机数都一样int num=rand() % 100 + 1;cout << "请猜数字" << endl;int val;cin >> val;while(num!=val){if (num > val){cout << "猜小了" << endl;}else if (num < val){cout << "猜大了" << endl;}cin >> val;}cout << "恭喜猜对了,数字就是" <<val<< endl;return 0;system("pause");
}
#include <iostream>
#include<ctime>
using namespace std;
int main()
{int a = 0;do{cout << a << endl;a++;if (a == 10)break;} while (a);a = 0;while (a){cout << a << endl;a++;if (a == 10){break;}}return 0;system("pause");
}
3.0 FOR循环
4.0 嵌套循环——外层执行一次,内层执行一周
#include <iostream>
#include<ctime>
using namespace std;
int main()
{for (int i = 0; i < 10; i++){for (int i = 0; i < 10; i++){cout << "* ";}cout << endl;}return 0;system("pause");
}
4.3 跳转语句
1.0 break语句,跳出循环,嵌套循环中可以是跳出内循环
2.0 continue语句,结束本次,继续下一次循环
相关文章:
20240405,数据类型,运算符,程序流程结构
是我深夜爆炸,不能再去补救C了,真的来不及了,不能再三天打鱼两天晒网了,真的来不及了呜呜呜呜 我实在是不知道看什么课,那黑马吧……MOOC的北邮的C正在进行呜呜 #include <iostream> using namespace std; int…...
Prometheus+grafana环境搭建Nginx(docker+二进制两种方式安装)(六)
由于所有组件写一篇幅过长,所以每个组件分一篇方便查看,前五篇链接如下 Prometheusgrafana环境搭建方法及流程两种方式(docker和源码包)(一)-CSDN博客 Prometheusgrafana环境搭建rabbitmq(docker二进制两种方式安装)(二)-CSDN博客 Prometheusgrafana环…...
贝叶斯逻辑回归
贝叶斯逻辑回归(Bayesian Logistic Regression)是一种机器学习算法,用于解决分类问题。它基于贝叶斯定理,通过建立一个逻辑回归模型,结合先验概率和后验概率,对数据进行分类。 贝叶斯逻辑回归的基本原理是…...
Win10 下 Vision Mamba(Vim-main)的环境配置(libcuda.so文件无法找到,windows系统运行失败)
目录 1、下载NVIDIA 驱动程序、cuda11.8、cudnn8.6.0 2、在Anaconda中创建环境并激活 3、下载gpu版本的torch 4、配置环境所需要的包 5、安装causal_conv1d和mamba-1p1p1 安装causal_conv1d 安装mamba-1p1p1 6、运行main.py失败 请直接拉到最后查看运行失败的原因&am…...
4 万字全面掌握数据库、数据仓库、数据集市、数据湖、数据中台
如今,随着诸如互联网以及物联网等技术的不断发展,越来越多的数据被生产出来-据统计,每天大约有超过2.5亿亿字节的各种各样数据产生。这些数据需要被存储起来并且能够被方便的分析和利用。 随着大数据技术的不断更新和迭代,数据管…...
Leetcode 64. 最小路径和
心路历程: 第一反应像是一个回溯问题,但是看到题目中要求最值,大概率是一道DP问题。并且这里面的递推关系也很明显。 这里面边界条件可以有多种处理方法。 解法:动态规划 class Solution:def minPathSum(self, grid: List[List…...
FANUC机器人故障诊断—报警代码更新(三)
FANUC机器人故障诊断中,有些报警代码,继续更新如下。 一、报警代码(SRVO-348) SRVO-348DCS MCC关闭报警a,b [原因]向电磁接触器发出了关闭指令,而电磁接触器尚未关闭。 [对策] 1.当急停单元上连接了CRMA…...
mysql 本地电脑服务部署
前提: 下载mysql 新建配置文档 在安装mysql目录新建 my.ini [mysqld] # 设置3306端口 port3306#设置mysql的安装目录 basedirC:\Program Files\MySQL\MySQL Server 8.3 #切记此处一定要用双斜杠\\,单斜杠我这里会出错,不过看别人的教程,有…...
爬虫学习第一天
爬虫-1 爬虫学习第一天1、什么是爬虫2、爬虫的工作原理3、爬虫核心4、爬虫的合法性5、爬虫框架6、爬虫的挑战7、难点8、反爬手段8.1、Robots协议8.2、检查 User-Agent8.3、ip限制8.4、SESSION访问限制8.5、验证码8.6、数据动态加载8.7、数据加密-使用加密算法 9、用python学习爬…...
labview如何创建2D多曲线XY图和3D图
1如何使用labview创建2D多曲线图 使用“索引与捆绑簇数组”函数将多个一维数组捆绑成一个簇的数组,然后将结果赋值给XY图,这样一个多曲线XY图就生成了。也可以自己去手动索引,手动捆绑并生成数组,结果是一样的 2.如何创建3D图 在…...
【华为OD机试】芯片资源限制(贪心算法—JavaPythonC++JS实现)
本文收录于专栏:算法之翼 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-芯片资源限制二.解题思路三.题解代码Python题解代码JAVA题解代码C/C++题解代码JS题解代码四…...
服务器硬件构成与性能要点:CPU、内存、硬盘、RAID、网络接口卡等关键组件的基础知识总结
文章目录 服务器硬件基础知识CPU(中央处理器)内存(RAM)硬盘RAID(磁盘阵列)网络接口卡(NIC)电源散热器主板显卡光驱 服务器硬件基础知识 服务器是一种高性能计算机,用于在…...
STC89C51学习笔记(四)
STC89C51学习笔记(四) 综述:本文讲述了在STC89C51中数码管、模块化编程、LCD1602的使用。 一、数码管 1.数码管显示原理 位选:对74HC138芯片的输入端的配置(P22、P23、P24),来选择实现位选&…...
Arcgis Pro地理配准
目录 一、目的 二、配准 1、找到配准工具 2、添加控制点 3、选择控制点 4、添加更多控制点 5、配准完成、保存 三、附录 1、查看控制点或删除控制点 2、效果不好怎么办 一、目的 下面我们将两张地图进行配准,其中一张有地理位置,而另外一张没…...
数字转型新动力,开源创新赋能数字经济高质量发展
应开放原子开源基金会的邀请,软通动力董事、鸿湖万联董事长黄颖基于对软通动力开源战略的思考,为本次专题撰文——数字转型新动力,开源创新赋能数字经济高质量发展。本文首发于2023年12月12日《中国电子报》“开源发展与开发者”专题第8版。以…...
解决JavaWeb中IDEA2023新版本无法创建Servlet的问题
出现问题:IDEA右键创建Servlet时,找不到选项 原因分析:IDEA的2023版的已经不支持Servlet了,如果还要使用的话,需要自己创建模板使用 创建模板 右击设置,选择(File and Code Templates&#x…...
关于oracle切换mysql8总结
最近由于项目换库,特此记录 1.字段类型 number(8) -> int(8) number(16) -> bigint(16) varchar2() -> varchar() 2.导数据 从oracle迁移数据到mysql,除了用专门的数据泵,经常需要用csv导入到mysql; 导出的csv数据如果…...
Docker 容器编排技术解析与实践
探索了容器编排技术的核心概念、工具和高级应用,包括 Docker Compose、Kubernetes 等主要平台及其高级功能如网络和存储管理、监控、安全等。此外,文章还探讨了这些技术在实际应用中的案例,提供了对未来趋势的洞见。 一、容器编排介绍 容器编…...
微信小程序 ---- 慕尚花坊 订单列表
订单列表 本章节为课堂作业 01. 封装订单列表接口 API 思路分析: 为了方便后续进行商品管理模块的开发,我们在这一节将商品管理所有的接口封装成接口 API 函数 落地代码: ➡️ api/orderpay.js /*** description 获取订单列表* returns …...
Tuxera2023 NTFS for Mac下载,安装和序列号激活
对于必须在Windows电脑和Mac电脑之间来回切换的Mac朋友来说,跨平台不兼容一直是一个巨大的障碍,尤其是当我们需要使用NTFS格式的硬盘在Windows和macOS之间共享文件时。因为Mac默认不支持写入NTFS磁盘。 为了解决这一问题,很多朋友会选择很便捷…...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
C++八股 —— 单例模式
文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全(Thread Safety) 线程安全是指在多线程环境下,某个函数、类或代码片段能够被多个线程同时调用时,仍能保证数据的一致性和逻辑的正确性…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...
算法:模拟
1.替换所有的问号 1576. 替换所有的问号 - 力扣(LeetCode) 遍历字符串:通过外层循环逐一检查每个字符。遇到 ? 时处理: 内层循环遍历小写字母(a 到 z)。对每个字母检查是否满足: 与…...
MySQL 知识小结(一)
一、my.cnf配置详解 我们知道安装MySQL有两种方式来安装咱们的MySQL数据库,分别是二进制安装编译数据库或者使用三方yum来进行安装,第三方yum的安装相对于二进制压缩包的安装更快捷,但是文件存放起来数据比较冗余,用二进制能够更好管理咱们M…...
接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...
