当前位置: 首页 > news >正文

C++语言有哪些常用语句?

1. 变量定义语句

在 C++ 中,首先要定义变量才能使用。例如

int a;

定义了一个整型变量a。这是很基础的语句,它告诉编译器为变量a分配内存空间,用于存储整数值。
如果要定义多个相同类型的变量,可以写成

int a, b, c;

除了基本数据类型(如int、float、double、char等),还可以定义自定义类型的变量。例如,假设有一个结构体struct Student,可以用Student stu;来定义一个Student类型的变量stu。

2. 赋值语句

用于给变量赋值,格式为变量名 = 表达式;。例如

a = 5;

将整数5赋给变量a。
也可以进行复杂的赋值操作,如

b = a + 3;

这里先计算a + 3的值,然后将结果赋给变量b。赋值语句还可以用于更新变量的值,比如

a = a + 1;

(通常写成a++;这种更简洁的形式),这会使变量a的值增加1。

3. 输入输出语句

输入
使用cin(标准输入流对象)来从键盘读取用户输入。例如,

int num; 
cin >> num;

这会等待用户从键盘输入一个整数,并将其存储到变量num中。如果要读取多个变量,可以写成

int a, b; 
cin >> a >> b;

它会按照顺序读取两个整数分别赋给a和b。
输出
使用cout(标准输出流对象)来输出信息到控制台。例如,

cout << "Hello, World!" << endl;

会在控制台输出Hello, World!并换行。endl是一个操纵符,用于结束当前行并刷新输出缓冲区。也可以输出变量的值,如

int age = 20; 
cout << "My age is " << age << endl;

它会输出包含变量age值的字符串。

4. 条件语句

用于根据条件执行不同的代码块。if - else 语句基本格式为:

if (条件表达式) {// 条件为真时执行的代码
} else {// 条件为假时执行的代码
}

例如,判断一个数是否为正数:

int num = 10;
if (num > 0) {cout << num << " is positive." << endl;
} else {cout << num << " is non - positive." << endl;
}

还可以有if - else if - else的形式,用于处理多个条件分支。例如,判断一个数是正数、负数还是零:

int number;
cin >> number;
if (number > 0) {cout << "Positive" << endl;
} else if (number < 0) {cout << "Negative" << endl;
} else {cout << "Zero" << endl;
}

switch 语句
用于多分支选择。格式为:

switch (表达式) {case 常量表达式1:// 代码块1break;case 常量表达式2:// 代码块2break;...default:// 默认代码块
}

例如,根据用户输入的数字输出对应的星期几(简单示例):

int day;
cin >> day;
switch (day) {case 1:cout << "Monday" << endl;break;case 2:cout << "Tuesday" << endl;break;case 3:cout << "Wednesday" << endl;break;case 4:cout << "Thursday" << endl;break;case 5:cout << "Friday" << endl;break;case 6:cout << "Saturday" << endl;break;case 7:cout << "Sunday" << endl;break;default:cout << "Invalid input" << endl;
}

5. 循环语句

for 循环
常用于已知循环次数的情况。格式为

for(初始化表达式; 条件表达式; 更新表达式) { 循环体; 
}

例如,计算1到10的和:

int sum = 0;
for (int i = 1; i <= 10; i++) {sum += i;
}
cout << "The sum from 1 to 10 is " << sum << endl;

while 循环
当条件为真时执行循环体。格式为

while(条件表达式) { 循环体; }

例如,输出小于5的正整数:

int n = 1;
while (n < 5) {cout << n << " ";n++;
}

do - while 循环
它和while循环类似,但至少会执行一次循环体。格式为

do { 循环体;}  while(条件表达式);

例如:

int x = 1;
do {cout << x << " ";x++;
} while (x <= 3);

6. 函数调用语句

C++ 中有大量的标准库函数可以调用,也可以调用自己定义的函数。例如,调用标准库中的sqrt函数来计算平方根:

#include <iostream>
#include <cmath>
int main() {double num = 9.0;double result = sqrt(num);cout << "The square root of " << num << " is " << result << endl;return 0;
}

对于自定义函数,假设定义了一个函数void printMessage()来输出一条消息,在main函数中可以这样调用:

void printMessage() {cout << "This is a custom function." << endl;
}
int main() {printMessage();return 0;
}

7. 跳转语句(break 和 continue)

break 语句
用于跳出循环或者switch语句。在循环中,当满足某个条件时,使用break可以立即终止循环。例如,在for循环中查找一个数:

int numbers[] = {1, 3, 5, 7, 9};
int target = 7;
for (int i = 0; i < 5; i++) {if (numbers[i] == target) {cout << "Found " << target << " at index " << i << endl;break;}
}

continue 语句
用于跳过当前循环中的剩余代码,直接开始下一次循环。例如,输出1到10中除了5以外的数:

for (int i = 1; i <= 10; i++) {if (i == 5) {continue;}cout << i << " ";
}

相关文章:

C++语言有哪些常用语句?

1. 变量定义语句 在 C 中&#xff0c;首先要定义变量才能使用。例如 int a;定义了一个整型变量a。这是很基础的语句&#xff0c;它告诉编译器为变量a分配内存空间&#xff0c;用于存储整数值。 如果要定义多个相同类型的变量&#xff0c;可以写成 int a, b, c;除了基本数据类…...

linux alsa-lib snd_pcm_open函数源码分析(二)

​ 访问原版内容&#xff0c;可直接到博客 linux alsa-lib snd_pcm_open函数源码分析&#xff08;二) https://blog.whatsroot.xyz/2020/08/12/alsa_snd_open-analysis-2/ 系列文章其他部分: linux alsa-lib snd_pcm_open函数源码分析&#xff08;一) linux alsa-lib snd_pc…...

机翼的抖振与颤振

机翼的抖振与颤振 1. 机翼颤振&#xff1a;飞机设计的隐形杀手2. 机翼抖振&#xff1a;由气流不稳定性引起的振动3. 两种振动的区分和管理3.1 检测与预防 机翼的颤振和抖振是飞机设计和航空工程师面临的两个重要技术问题。这两种现象虽然都与机翼的振动相关&#xff0c;但它们的…...

React04 State变量 组件渲染

State变量 & 渲染和提交 State 变量state 变量的使用State 是隔离且私有的 组件渲染 State 变量 state 变量的使用 导入 useState import { useState } from react;定义一个 state 变量 const [index, setIndex] useState(0);useState 的唯一参数是 state 变量的初始值…...

【数据库系统概论】第3章 关系数据库标准语言SQL(一)数据查询(超详细)

目录 一、单表查询 1. 简单的数据查询 &#xff08;1&#xff09;选择表中若干列 &#xff08;2&#xff09;选择表中若干行&#xff08;元祖&#xff09; 2. 聚合函数与分组查询 聚集函数 GROUP BY分组查询 二、联接查询 1、连接概述 2. 内联接&#xff08;INNER JO…...

mysql-恢复数据(日志管理)

前言 在mysql中我们有时候会出现误删除&#xff0c;或者其他的问题&#xff0c;我们可以通过mysql的日志进行恢复 操作 我们可以在mysql里面定义一个错误日志&#xff0c;方便我们可以排查是因为什么原因来解决mysql无法启动问题 ----------------------------------------…...

探索Unity:从游戏引擎到元宇宙体验,聚焦内容创作

unity是实时3D互动内容创作和运营平台&#xff0c;包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者&#xff0c;借助Unity将创意变成现实。提供一整套完善的软件解决方案&#xff0c;可用于创作、运营和变现任何实时互动的2D和3D内容&#xff0c;支持平台包括手机、…...

自动化测试类型与持续集成频率的关系

持续集成是敏捷开发的一个重要实践&#xff0c;可是究竟多频繁的集成才算“持续”集成&#xff1f; 一般来说&#xff0c;持续集成有3种常见的集成频率&#xff0c;分别是每分钟集成、每天集成和每迭代集成。项目组应当以怎样的频率进行集成&#xff0c;这取决于测试策略&…...

React 中组件通信的几种主要方式

一、父传子&#xff1a; 1. 传递多个属性 父组件可以通过 props 传递多个属性给子组件。 示例 // 子组件 function Son(props) {return (<div>This is Son, {props.name} - Age: {props.age}</div>); }// 父组件 function App() {const name This is App N…...

mint-ui Picker 显示异常

mint-ui Picker 显示异常 现象 最近一个老项目页面显示异常&#xff0c;使用mint-ui Picker显示异常,直接显示成了 数据对象&#xff0c;而不是具体travelName 字段 组件 mint-ui Picker 使用方式(vue方式) // template <mt-picker :slots"slots" value-key…...

深入理解 MySQL 中的日志类型及其应用场景

目录标题 MySQL 中的日志类型这么多,它们都有哪些作用?1.错误日志(Error Log)2.事务日志2.1 InnoDB Redo Log(重做日志)2.2 InnoDB Undo Log (撤消日志)3.查询日志(General Query Log)4.慢查询日志 (Slow Query Log)5.二进制日志(Binary Log)6.中继日志 (Relay Log)总结一下M…...

群控系统服务端开发模式-应用开发-上传配置功能开发

下面直接进入上传配置功能开发&#xff0c;废话不多说。 一、创建表 1、语句 CREATE TABLE cluster_control.nc_param_upload (id int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 编号,upload_type tinyint(1) UNSIGNED NOT NULL COMMENT 上传类型 1&#xff1a;本站 2&a…...

stm32——GPIO开发

目录 1、什么是GPIO 2、GPIO的作用 3、GPIO的基本结构 4、GPIO引脚的基本结构 5、GPIO端口模式的配置 1. 输入浮空&#xff08;Input Floating&#xff09; 2. 输入上拉&#xff08;Input Pull-Up&#xff09; 3. 输入下拉&#xff08;Input Pull-Down&#xff09; 4. …...

layui 自定义验证单选框必填

对于输入框类型必填验证&#xff0c;只需要在 input 输入框加入 lay-verify "required" 即可。但对于单选按钮这种特殊的该怎么办呢&#xff1f;layui 为我们提供了自定义验证。 1. 在单选按钮上添加自定义验证的名称 2. 验证规则如下 // 单选框自定义验证form.ve…...

Spring 设计模式之策略模式

Spring 设计模式之策略模式 策略模式构成部分java举例 策略模式 策略模式&#xff1a;允许定义一系列算法&#xff0c;并将每一个算法封装起来&#xff0c;使它们可以互相替换&#xff0c;且算法的变化可以独立于使用它们的客户端。 构成部分 Context&#xff08;上下文&…...

苹果开发 IOS 证书生成步骤

前提条件 你手上有一台 Macbook你的苹果账号已被添加到开发人员中 证书创建步骤 打开 XCode 直接生成 p12证书生成后&#xff0c;就可在苹果开发者管理界面中看到你的证书记录登录苹果开发中心&#xff0c;创建 profiles 文件&#xff0c;并下载以上步骤即可&#xff0c;就这…...

DDR2 SDRAM(五)初始化

因为DDR2本质上只是更高级的一种SRAM&#xff0c;底层操作原理和SRAM是一样的&#xff0c;所以很多基础的东西就不再赘述了。 一、原理 在初始化之前&#xff0c;DDR2芯片需要先上电&#xff0c;芯片有多个需要提供的电压&#xff0c;其大小和顺序也有要求&#xff0c;这部分…...

Python工具箱系列(五十七)

图像分割与人脸识别 众所周知图像是由若干有意义的像素组成的&#xff0c;图像分割作为计算机视觉的基础&#xff0c;对具有现有目标和较精确边界的图像进行分割&#xff0c;实现在图像像素级别上的分类任务。图像分割可分为语义分割和实例分割两类&#xff0c;区别如下&#x…...

数据智能驱动金融策略优化:民锋智能分析技术的应用

在现代金融市场中&#xff0c;数据分析与智能化技术的结合为投资策略带来了全新机遇。民锋以智能分析技术为核心&#xff0c;帮助投资者在复杂的市场环境中做出高效决策。本文将深入探讨民锋智能分析技术如何驱动策略优化&#xff0c;为投资者带来更加智能化的支持。 #### 一、…...

1009:带余除法

【题目描述】 给定被除数和除数&#xff0c;求整数商及余数。此题中请使用默认的整除和取余运算&#xff0c;无需对结果进行任何特殊处理。 【输入】 一行&#xff0c;包含两个整数&#xff0c;依次为被除数和除数&#xff08;除数非零&#xff09;&#xff0c;中间用一个空格隔…...

19c补丁后oracle属主变化,导致不能识别磁盘组

补丁后服务器重启&#xff0c;数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后&#xff0c;存在与用户组权限相关的问题。具体表现为&#xff0c;Oracle 实例的运行用户&#xff08;oracle&#xff09;和集…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

python打卡day49

知识点回顾&#xff1a; 通道注意力模块复习空间注意力模块CBAM的定义 作业&#xff1a;尝试对今天的模型检查参数数目&#xff0c;并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

在Ubuntu中设置开机自动运行(sudo)指令的指南

在Ubuntu系统中&#xff0c;有时需要在系统启动时自动执行某些命令&#xff0c;特别是需要 sudo权限的指令。为了实现这一功能&#xff0c;可以使用多种方法&#xff0c;包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法&#xff0c;并提供…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

【Oracle】分区表

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)

前言&#xff1a; 最近在做行为检测相关的模型&#xff0c;用的是时空图卷积网络&#xff08;STGCN&#xff09;&#xff0c;但原有kinetic-400数据集数据质量较低&#xff0c;需要进行细粒度的标注&#xff0c;同时粗略搜了下已有开源工具基本都集中于图像分割这块&#xff0c…...

scikit-learn机器学习

# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...

tomcat指定使用的jdk版本

说明 有时候需要对tomcat配置指定的jdk版本号&#xff0c;此时&#xff0c;我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...

k8s从入门到放弃之HPA控制器

k8s从入门到放弃之HPA控制器 Kubernetes中的Horizontal Pod Autoscaler (HPA)控制器是一种用于自动扩展部署、副本集或复制控制器中Pod数量的机制。它可以根据观察到的CPU利用率&#xff08;或其他自定义指标&#xff09;来调整这些对象的规模&#xff0c;从而帮助应用程序在负…...