首页 > 编程语言 >07C++选择结构(1)——教学

07C++选择结构(1)——教学

时间:2024-11-01 20:59:48浏览次数:1  
标签:语句 False string C++ 教学 字符串 表达式 07

一、基础知识

1、关系运算符

因为我们要对条件进行判断,必然会用到关系运算符:

名称 大于 大于等于 小于 小于等于 等于 不等于
符号 > >= < <= == !=

关系表达式的值是一个逻辑值,即“真”(True)或“假”(False)。如果条件成立,其值为“真”;如果条件不成立,其值为“假”。

2、逻辑运算符

基本运算 运算符号 举例 结果
!(1<2) False
&& 3<4 && 4>5 False
ll 3<4 ll 4>5 True

注:
1)”与”运算中,只有”与”两边的表达式都成立,结果才为True,只要两边的表达式中有一个不成立的,结果为False.
2)”或”运算中,只要表达式两边的有一个成立,结果就为True;若两边的表达式均不成立,则结果为False.

3、程序流程图的基本符号


二、if语句

教学视频A
if语句格式:if(表达式){ 语句块1 } | if(表达式)语句1;


例程:试编一程序,输入一 个200以内的整数作为IQ值,判断是不是天才。

三、if-else 语句

教学视频A
格式:

流程图:

例程:

试编一程序,输入一分钟跳绳的次数,若大于等于200次,输出“跳绳达人!”,否则输出“继续努力!”。
流程图:

四、if语句嵌套

教学视频A

在if语句中又包含一个或多个if语句,称为if语句嵌套


if与else的就近匹配原则:

几种嵌套样式:


例程:

试编写一个模拟“比尔庄园”登录的程序,输入正确的用户名和密码后,输出欢迎语句“亲爱的小朋友,欢迎你!”,否则输出“用户名错误!”或“密码错误!”。
假设用户名和密码均为六位数,如用户名:201701,密码:135790。流程图如下:

五、字符串类型string

字符串是夹在两个双撇号之间的一串字符,其字符个数可以是零个、一个或多个。如""、"a"、"Apple"、"312"、"apple311"等都是字符串。
要注意:
(1) ""(空串,零个字符)也是字符串。"a"是字符串,而'a'是字符。
(2) string不是C++语言本身具有的基本类型,使用时必须引入头文件string,见下例。
下面代码展示了如何在C++中使用std::string进行基本的字符串操作,包括创建字符串、连接字符串、获取字符串长度、比较字符串、查找字符串和替换字符串的一部分。

#include <iostream>
#include <string>
 
int main() {
    std::string str1 = "Hello";
    std::string str2 = "World";
 
    // 字符串连接
    str1 += " ";
    str1 += str2;
 
    // 输出字符串
    std::cout << str1 << std::endl; // 输出: Hello World
 
    // 获取字符串长度
    std::cout << "Length: " << str1.length() << std::endl; // 输出: Length: 11
 
    // 字符串比较
    if (str1 == "Hello World") {
        std::cout << "Strings are equal." << std::endl; // 输出: Strings are equal.
    }
 
    // 字符串查找
    if (str1.find("World") != std::string::npos) {
        std::cout << "Found 'World' in the string." << std::endl; // 输出: Found 'World' in the string.
    }
 
    // 字符串替换
    str1.replace(6, 5, "C++");
    std::cout << str1 << std::endl; // 输出: Hello C++
 
    return 0;
}

扩展阅读:

(1)C++字符串
(2)C语言和C++中的字符串(string)
*(3)C++中的字符编码方式

标签:语句,False,string,C++,教学,字符串,表达式,07
From: https://www.cnblogs.com/citStudy/p/18521259

相关文章

  • ARCore与Unity集成开发教程_2024-07-25_21-26-46.Tex
    ARCore与Unity集成开发教程ARCore简介ARCore功能概述ARCore是Google开发的增强现实(AR)平台,旨在为移动设备提供高精度的AR体验。它通过以下核心功能实现这一点:运动追踪:ARCore能够感知设备的移动,并在虚拟和现实世界之间保持稳定的定位,即使在设备移动时也能保持虚拟对象......
  • ARCore与UnrealEngine集成开发教程_2024-07-25_21-40-34.Tex
    ARCore与UnrealEngine集成开发教程ARCore简介ARCore功能概述ARCore是Google开发的增强现实(AR)平台,旨在为移动设备提供高精度的AR体验。它通过以下核心功能实现这一点:运动追踪:ARCore能够追踪设备的运动,即使在没有GPS信号的室内环境中,也能提供稳定的AR体验。它使用设备......
  • ARKit:ARKit场景构建与物体添加_2024-07-25_16-48-31.Tex
    ARKit:ARKit场景构建与物体添加ARKit基础介绍ARKit框架概述ARKit是苹果公司为iOS设备提供的增强现实开发框架,它允许开发者在iOS应用中创建沉浸式的AR体验。ARKit通过设备的摄像头、传感器和处理器,能够实时地检测和跟踪真实世界中的平面、光照、运动和环境特征,从而在这些平......
  • 代码随想录|day3 链表 203.移除链表元素、707.设计链表、206.反转链表
    基础知识:代码随想录203.移除链表元素建议:本题最关键是要理解虚拟头结点的使用技巧,这个对链表题目很重要。这里主要记录用虚头的方法。即设置一个虚拟的头指针帮忙解题。先看代码:classSolution{publicListNoderemoveElements(ListNodehead,intval){ Li......
  • C++写一个简单的JSON解析
    参考用C++编写一个简易的JSON解析器(1)写一个动态类型-知乎欢迎测试和反馈bug首先,json包含string,number,integer,object,array,bool,null这些类型对于object映射,使用map,对于array使用vector我们定义一个类Val用来存储,使用variant来存储具体的值std::variant-cppreferen......
  • C++对象模型:object
    一、objecttypedefstruct{floatx;floaty;floatz;}Point3d;可以有以下方法打印上述类型字段:定义函数voidprint_point3d(constPoint3d*pd){printf("(%g,%g,%g)",pd->x,pd->y,pd->z);}若要更有效率,可以定义一个宏函数#definePoint3d_print(pd)......
  • C++多线程:atomic
    在许多为了性能和效率的场景下,需要开发一些lock-free的算法和数据结构atomic_flag原子布尔类型,只支持test-and-set和clear操作构造函数atomic_flag()noexcept=default;atomic_flag(constatomic_flag&)=delete;只有默认构造函数,而不能从其他对象构造atomic_flag对象需......
  • C++对象模型:constructor
    构造函数constructorexplicit的引入,是为了能够制止“单一参数的constructor”被当作一个conversion运算符带有默认构造函数的对象成员若一个类中包含对象成员,且该对象有默认构造函数,此时:若该类没有构造函数则编译器会合成一个默认构造函数,且发生在真正调用时若该类有构造函......
  • 【C++】类与对象(中)
    1.类的默认成员函数  默认成员函数就是用户没有显式实现,编译器会自动生成的成员函数称为默认成员函数。一个类,我们不写的情况下编译器会默认生成以下6个默认成员函数,需要注意的是这6个中最重要的是前4个,最后两个取地址重载不重要,我们稍微了解⼀下即可。其次就是C++11以后......
  • C++多线程:thread
    进程与线程进程:系统资源分配的最小单元,通常被定义为一个正在运行的程序实例线程:系统任务调度的最小单元进程间通信:管道,信号量,信号,消息队列,共享内存,套接字线程间通信:锁机制,信号量机制,信号机制,屏障同步:保证任务片段的先后顺序互斥:为了保证资源在同一时刻只能被一个线程使用,即......