顺序结构程序设计

第二单元    顺序结构程序设计

第一课  cout语句

使用输入/输出流必须加上头文件:

#include<iostream>

1.cout语句是实现输出功能的语句,其格式如下:

cout<<项目<<项目2<<…<<项目n

2.如果项目是表达式,则输出表达式的值

3.如果项目加引号,则输出引号内的内容

例如:若"2+4"则输出2+4

        若2+4则输出6

4.如果项目是endl,则表示换行

第二课   数据类型

使用的各种变量都应"先声明,后使用" 

1.数据有数据类型、取值范围、运算类型三个要素

⒉①数据类型整型int,字节长度4(32)位

longlong字节长度8(64位)(长整型)

②字符型char1(8位)

③实型(浮点型)float4(32位)

double8(64位)

⒊整数还有"无符号"类型,其取值只会是正数和零,范围扩大一倍,

好处:储存的正数扩大了一倍

4.按存储精确度高的存储

例如:在一个程序中同时出现int,double

则按double储存

5.数据溢出

意为:定义了给一个变量赋予了初值,它经过某些运算超过了所给的数据类型的数据范围

6.sizeof函数的作用是获取各种数据类型的长度,

可以得到一个特定变量的储存空间大小

第三课   常量与变量

⑴常量

1.C++定义一个符号常量的格式如下:

类型名 const 常量名;

或const 类型名 常量名;

不可更改

2.常量名通常用大写字母表示(一行定义一个)

⑵变量

1.C++定义一个变量的格式如下:

类型名变量名1,变量名2,…,变量名n;

与常量的区别:

①少了const

②1行可有多个变量

2.变量名

常量名、变量名、函数名等都称之为"标识符"

标识符命名规则如下:
ⅰ标识符必须先定义后使用

ⅱ在同一作用域内,标识符不能重复定义

ⅲ标识符要尽量做到见名知义

ⅳ标识符只能包括字母数字和下划线“_”,

并且开头只能是字母或下划线

例如:sum,Day,_day

sum123_

2.变量的初始化

初始化即给定一个初始值

3.变量的赋值

赋值语句的格式如下:

变量名=值或者表达式

其中,“=”称为赋值号

第四课    字符与字符串

存放单个字符的变量称为字符变量,用一对单引号括起来的一个字符

存放一串有若干字符的变量称为字符串变量,用双引号括起来的字符序列

空字符串""里面也没有空格

1.字符变量

定义字符变量的格式如下

char 标识符1,标识符2,…,标识符n;

在内存中占用一个字节,字符数据储存的是其ASCII码值

2.转义字符

C++定义了一些字符前加“\”的特殊字符称为转义字符

字符输入函数:getchar

字符输出函数:putchar

\n表示换行

\"表示双撇号字符

在程序中显示不可显示的字符

'   '表示一个字符的开始与结束

"   "表示一段文字的开始与结束

⒊字符串变量

①可以用字符数组char s[ ]存放字符串

也可以用STL中的string类型

例如:string s="1234  asdf"

②“\0”作为字符串结束的标志

③getchar和putchar是输入输出一个字符

如果要输入输出一个字符串可以用字符串输入输出函数gets和puts

第五课   算术运算符

重点注意:运算优先级

①表达式的计算结果称为表达式的值

②任何一个表达式都有值

使用这些数学函数前必须添加“cmath”或者“math.h”头文件

第六课  cin语句

cin是输入功能的语句,其格式一般为

cin>>项目1>>项目2>>…>>项目n;

使用cin语句从键盘输入多个数据项的时候,一定要注意三个一致:数据个数一致,输入顺序一致,数据类型一致

第七课   赋值语句

⒈赋值语句的格式如下:

变量名=值或者代表式;

“=”称为赋值号

注意:a=b与a==b完全不同的意义,“==”是关系运算符

⒉bool类型:真的是1,假的是0

⒊复合写法

⑴算术复合

例如:“a=a+x”可以写成“a+=x”

⑵赋值复合

一次可以给几个变量赋同一个值

只要出现连续的赋值号即可

⑶逗号表达式(串联作用)运算级别最低

可用逗号连接几个表达式,构成一个更大的表达式其格式如下:

表达式1,表达式2,…,表达式n;

第八课    复合运算符

作用:使得修改变量值的操作更加简洁

⒈自加运算符和自减运算符

①单独使用时i++,++i/i--,--i其作用相同

②在赋值语句中使用时两种用法就不再相同

③++或--只能用于变量

④在遇到多个是++和--时,计算的结合方向是按照表达式自右向左进行

2.复合算术赋值

优点:程序更精炼编译效率高

第九课   运算规则

⒈整形数据和实型数据可以混合运算,

字符型数据可以和整型数据通用

⒉自动转换(只限一次):

将不同类型的数据转换为同一类型在进行运算

⒊[  ],{    }不是做运算符的运算符

⒋在赋值运算中,赋值号两边数据的类型不同时,赋值号右边量或者表达式值的类型将自动转换为左变量的类型

⒌如果右侧数据类型长度比左边长,将丢失一部分数据,这样会降低精度,丢失的部分按四舍五入的规则向前舍入

⒍除了“自动转换”外,还可以“强制类型转换”格式为:

(类型名)(表达式)

(类型名)变量

例如:

(double)a         //将a强制转换成double型

(int)(x+y)         //将x+y的值强制转换为int型

(float)(4%3)   //将4%3的值强制转换成float型

注:(float)(4%3)不可以去掉括号因为整数%整数不能是实数%实数.

第十课    格式控制

C语言中的输入输出函数语句scanf和printf

对于大数据的输入输出使用scanf和printf,比C++中的输入输出流语句(cin和cout)效率更高,速度更快

scanf和printf使用前需要加上cstdio头文件

⒈printf函数

printf函数的格式:

printf(格式控制字符串,输出列表);

⑴要注意数据类型应与格式说明匹配,

否则会发生错误

①字符串本身长度大于m,则突破m的限制,将字符串全部输出

②若串的长度小于m则左补空格

⒉scanf函数

scanf函数的格式为

scanf(格式控制字符串,地址表列);

scanf的作用是输入指定形式的数据.

不仅列表可以是变量的地址也可以是字符串的首地址

重点:“&a”表示取a变量的地址,

“&成为取地值符

“*”表示跳过相应数据

⒊scanf、printf与cin、cout的比较

cin是输入流,cout是输出流包含在头文件<iostream>中

scanf是格式化输入,printf是格式化输出包含在头文件<cstdio>中

printf输出效率比较高,但是编写代码相对而言麻烦一些

scanf函数取数据时遇到回车、空格、TAB就会停止

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
,发送类别,概率,以及物体在相机坐标系下的xyz.zip目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值