1、C++编程中的基本运算 - 课件

2024-06-16 20:20
文章标签 c++ 编程 基本 运算 课件

本文主要是介绍1、C++编程中的基本运算 - 课件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、基础知识

1、C++程序的基本框架

// 预处理器指令,引入需要的头文件
#include <iostream>
// 使用标准命名空间
using namespace std;
// 主函数,程序的入口
int main() {// 局部变量声明// 程序逻辑代码// 返回值,表示程序正常结束return 0;
}

2、int 和 double

  1. C++中,我们使用不同的类型来存储整数和小数。

  2. int类型用于存储整数,例如:

    int age = 10;
    int score = 98;
    
  3. double类型用于存储小数,例如:

    double price = 9.99;
    double height = 1.75;
    
  4. 我们可以对int和double类型的变量进行各种算术运算,如加法、减法、乘法和除法。

  5. 当用int类型进行除法运算时,结果也是整数,小数部分会被去掉。(如:int a = 10 / 3,这里 a = 3,小数点会被去掉)。

  6. 如果想要得到小数结果,需要使用double类型(如:double a = 10 / 3,a = 3.3333……)。

  7. 在编程时,我们应该根据要存储的数字类型选择相应的变量类型,以确保正确地进行各种计算。

3、输入、输出和换行

输入: cin

  1. cin是C++中的一个标准输入流对象,用于从标准输入设备(通常是键盘)读取数据。

  2. 要使用cin,需要在程序开头包含iostream头文件:

    #include <iostream>
    
  3. 使用cin进行输入时,数据会从标准输入设备(通常是键盘)读取,直到遇到空格、制表符或换行符。

  4. cin使用>>运算符来读取数据。例如:

    using namespace std;
    int age;
    cout << "请输入你的年龄: ";
    cin >> age;
    
  5. 可以连续使用多个>>运算符来读取多个数据:

    using namespace std;
    int a, b;
    cin >> a >> b;
    
  6. cin会自动根据变量的类型来解析输入的数据。例如,如果变量是int类型,cin会将输入解析为整数;如果变量是double类型,cin会将输入解析为浮点数。

输出:cout 换行:endl

  1. cout:

    • cout是C++中的标准输出流对象,用于将数据输出到标准输出设备(通常是屏幕)。
    • cout位于<iostream>头文件中,需要在程序开头使用#include <iostream>引入该头文件。
    • cout使用<<运算符(插入运算符)来输出数据。可以连续使用多个<<运算符来输出多个数据。
    • cout可以输出各种类型的数据,如整数、浮点数、字符、字符串、布尔值等。
    • 示例:
      cout << "Hello, world!" << endl;
      cout << "The sum is: " << sum << endl;
      
  2. endl:

    • endl是C++中的一个操纵符(manipulator),用于插入一个换行符并刷新缓冲区。
    • endl也位于<iostream>头文件中。
    • 当使用cout输出数据时,可以使用endl来换行并确保数据立即输出到屏幕上。
    • 示例:
      cout << "First line" << endl;
      cout << "Second line" << endl;
      
  3. cout和endl的组合使用:

    • 在使用cout输出数据时,通常会与endl一起使用,以实现换行和刷新缓冲区的效果。
    • 可以在一条cout语句中使用多个<<运算符和endl操纵符,以输出多个数据并换行。
    • 示例:
      cout << "Name: " << name << endl;
      cout << "Age: " << age << endl;
      cout << "Score: " << score << endl;
      
  4. 注意事项:

    • 在使用cout和endl之前,需要确保已经包含了<iostream>头文件。

4、C++中的算术运算

运算符名称描述示例
+将两个操作数相加int a = 5 + 3;
-将第一个操作数减去第二个操作数int b = 7 - 2;
*将两个操作数相乘int c = 4 * 6;
/将第一个操作数除以第二个操作数int d = 10 / 3;
%取模返回第一个操作数除以第二个操作数的余数int e = 11 % 3;
  1. +:将两个操作数相加。可以用于数字相加,也可以用于字符串拼接。
  2. -:将第一个操作数减去第二个操作数。
  3. *:将两个操作数相乘。
  4. /:将第一个操作数除以第二个操作数。
    注意
    如果两个操作数都是整数,则结果也是整数,而不是浮点数。
    (例如 : 4 / 2 = 2)

    如果想要得到浮点数结果,至少有一个操作数需要是浮点数。
    (例如:4.0 / 2 = 2.0 或者4 / 2.0 = 2.0 或者 4.0 / 2.0 = 2.0)
  • 除数不能为0,否则会导致程序错误。编译器可能会给出警告或错误信息。
    例如:int a = 10 / 0;这是非法的,会导致编译错误或运行时错误。
  1. 取模 %:返回第一个操作数除以第二个操作数的余数。这个运算符只适用于整数操作数。
  • 取模运算的结果的符号与第一个操作数的符号相同。
    例如:-11 % 3的结果是-2,而不是2
  • 与除法运算类似,取模运算的第二个操作数也不能为0,否则会导致程序错误。
    例如:int b = 10 % 0;这是非法的,会导致编译错误或运行时错误。

5、案例实操

题目:
编写一个C++程序,从用户那里读取两个整数,然后使用cout语句输出以下算术运算的结果:

  1. 第一个数加第二个数的结果
  2. 第一个数减第二个数的结果
  3. 第一个数乘以第二个数的结果
  4. 第一个数除以第二个数的结果(整数除法)
  5. 第一个数除以第二个数的结果(浮点数除法)
  6. 第一个数除以第二个数的余数(取模运算)

要求:

  • 使用cin读取用户输入的两个整数,并用空格分隔。
  • 每个运算结果输出在单独的一行,并在输出前显示相应的算术表达式。
  • 在输出整数除法结果时,添加注释说明整数和整数运算的结果是整数。
  • 为了获得浮点数除法结果,将其中一个数声明为double类型的变量,然后进行除法运算。
  • 使用endl操作符来换行,而不是\n

注意事项:

  • 请注意处理除数为零的情况,以避免运行时错误。
  • 确保用户输入的是整数,否则可能会导致输入错误和意外结果。
  • 取模运算符%只能用于整数类型,不能用于浮点数。

6、代码解析

#include <iostream>
using namespace std;int main() {int num1, num2;cout << "请输入两个整数,用空格分隔: ";cin >> num1 >> num2;cout << num1 << " + " << num2 << " = " << num1 + num2 << endl;cout << num1 << " - " << num2 << " = " << num1 - num2 << endl;cout << num1 << " * " << num2 << " = " << num1 * num2 << endl;// 整数和整数运算结果是整数cout << num1 << " / " << num2 << " = " << num1 / num2 << endl;// 将其中一个数声明为浮点数,以获得浮点数除法结果double num1_double = num1;cout << num1_double << " / " << num2 << " = " << num1_double / num2 << endl;cout << num1 << " % " << num2 << " = " << num1 % num2 << endl;return 0;
}

代码解析:

  1. 使用cin从标准输入读取两个整数num1num2,并使用空格分隔。

  2. 使用cout输出加法、减法和乘法运算的结果,每个结果占一行。

  3. 对于整数除法,添加注释说明整数和整数运算的结果是整数。

  4. 为了获得浮点数除法结果,将其中一个数(num1)声明为double类型的变量num1_double,然后进行除法运算。

  5. 输出取模运算的结果。

  6. 使用endl操作符来换行,而不是\n

易错点模拟:

  1. 如果输入的num2为0,在进行除法或取模运算时会导致运行时错误(除以零)。

  2. 如果输入的数字不是整数(例如包含小数点),使用cin读取时会导致输入错误,后续的计算可能会产生意外结果。

  3. 如果在取模运算中使用浮点数,编译器会报错,因为取模运算符%只能用于整数类型。

这篇关于1、C++编程中的基本运算 - 课件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1067447

相关文章

【C++ Primer Plus习题】13.4

大家好,这里是国中之林! ❥前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看← 问题: 解答: main.cpp #include <iostream>#include "port.h"int main() {Port p1;Port p2("Abc", "Bcc", 30);std::cout <<

基本知识点

1、c++的输入加上ios::sync_with_stdio(false);  等价于 c的输入,读取速度会加快(但是在字符串的题里面和容易出现问题) 2、lower_bound()和upper_bound() iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素。 iterator upper_bou

C++包装器

包装器 在 C++ 中,“包装器”通常指的是一种设计模式或编程技巧,用于封装其他代码或对象,使其更易于使用、管理或扩展。包装器的概念在编程中非常普遍,可以用于函数、类、库等多个方面。下面是几个常见的 “包装器” 类型: 1. 函数包装器 函数包装器用于封装一个或多个函数,使其接口更统一或更便于调用。例如,std::function 是一个通用的函数包装器,它可以存储任意可调用对象(函数、函数

C++11第三弹:lambda表达式 | 新的类功能 | 模板的可变参数

🌈个人主页: 南桥几晴秋 🌈C++专栏: 南桥谈C++ 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据库学习专栏: 南桥谈MySQL 🌈Qt学习专栏: 南桥谈Qt 🌈菜鸡代码练习: 练习随想记录 🌈git学习: 南桥谈Git 🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈�

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

06 C++Lambda表达式

lambda表达式的定义 没有显式模版形参的lambda表达式 [捕获] 前属性 (形参列表) 说明符 异常 后属性 尾随类型 约束 {函数体} 有显式模版形参的lambda表达式 [捕获] <模版形参> 模版约束 前属性 (形参列表) 说明符 异常 后属性 尾随类型 约束 {函数体} 含义 捕获:包含零个或者多个捕获符的逗号分隔列表 模板形参:用于泛型lambda提供个模板形参的名

uva 575 Skew Binary(位运算)

求第一个以(2^(k+1)-1)为进制的数。 数据不大,可以直接搞。 代码: #include <stdio.h>#include <string.h>const int maxn = 100 + 5;int main(){char num[maxn];while (scanf("%s", num) == 1){if (num[0] == '0')break;int len =