C++学习第六课:语句、复合语句和运算符

在这里插入图片描述

C++学习第六课:语句、复合语句和运算符

在C++中,语句是执行程序逻辑的基本单元,而复合语句则允许将多个语句组合在一起,作为一个单一的语句执行。此外,C++提供了丰富的运算符,用于执行各种操作。本课我们将介绍C++中的语句、复合语句和运算符的使用,以及运算符优先级和 sizeof 的详解。

语句和复合语句

在C++中,语句是执行程序逻辑的基本单元,它们可以独立执行或组合执行。

简单语句

简单语句由单个表达式组成,例如:

std::cout << "Hello, World!"; // 输出语句

复合语句

复合语句(也称为块语句)由大括号 {} 包围,可以包含多个语句。

{
    int a = 10;
    int b = 20;
    std::cout << "Sum: " << a + b; // 复合语句,包含变量声明和输出
}

运算符的使用

C++提供了多种运算符,用于执行算术、逻辑、位操作等。

赋值运算符 =

用于给变量赋值。

int x = 10; // 将10赋值给x

算术运算符

+, -, *, /, % 分别用于加、减、乘、除和取余。

int sum = 10 + 20; // 30
int difference = 20 - 10; // 10

递增和递减运算符 ++, --

++ 使变量的值增加1,-- 使变量的值减少1。

int count = 0;
count++; // count变为1
count--; // count回到0

比较运算符

==(等于)、!=(不等于)、<><=>= 用于比较两个值。

if (x == 10) {
    std::cout << "x is 10"; // 如果x等于10,输出此信息
}

逻辑运算符

!(NOT)、&&(AND)、||(OR)、!=(XOR)用于执行逻辑操作。

if (!done && (count < max)) {
    // 如果done为false且count小于max,执行某些操作
}

位运算符

~(取反)、&(AND)、|(OR)、^(XOR)、<<(左移)、>>(右移)用于执行位操作。

int binary = 14; // 二进制为1110
int masked = binary & 3; // 与3进行位运算,结果是2

运算符优先级

C++中运算符有不同的优先级,例如 */ 优先于 +-

int result = 2 + 3 * 4; // 先计算3 * 4,然后与2相加,结果是14

sizeof 运算符

sizeof 用于确定变量或类型所占的字节数。

std::cout << "Size of int: " << sizeof(int) << " bytes" << std::endl;

代码实例

下面是一个结合了上述概念的完整示例程序:

#include <iostream>

int main() {
    int x = 10, y = 20;
    int sum = x + y; // 使用算术运算符
    std::cout << "Sum: " << sum << std::endl;

    x++; // 使用递增运算符
    y--; // 使用递减运算符

    if (x != y) { // 使用不等于运算符
        std::cout << "x and y are not equal." << std::endl;
    }

    int max = 100;
    while (x < max && y > 0) { // 使用逻辑运算符
        x += y;
        y >>= 1; // 使用右移位运算符,相当于y除以2
    }

    std::cout << "Final value of x: " << x << std::endl;

    // 使用sizeof运算符
    std::cout << "Size of x: " << sizeof(x) << " bytes" << std::endl;

    return 0;
}

结语

通过本课的学习,你了解了C++中的语句、复合语句、运算符的使用,以及运算符优先级和 sizeof 的详解。这些知识对于编写高效和逻辑清晰的C++程序非常重要。


练习题:计算并输出学生的平均成绩

目的:本练习题旨在加深对C++中基本输入输出、循环、条件语句和算术运算符的理解。

背景:假设有五位学生参加了一次考试,每位学生的成绩存储在一个整型数组中。

任务

  1. 编写一个C++程序,该程序从用户那里获取五位学生的成绩,存储在数组中。
  2. 计算并输出这五位学生的平均成绩。

要求

  • 使用 for 循环来接收用户输入的成绩。
  • 使用 + 运算符累加所有学生的成绩。
  • 使用 / 运算符来计算平均成绩。
  • 使用 std::cout 输出每位学生的成绩和计算出的平均成绩。

示例代码框架

#include <iostream>

int main() {
    int scores[5]; // 存储五位学生成绩的数组
    float average = 0.0; // 用于计算平均成绩的变量

    std::cout << "Enter scores for 5 students:" << std::endl;

    // 使用for循环接收用户输入的成绩
    for (int i = 0; i < 5; ++i) {
        std::cout << "Student " << (i + 1) << " score: ";
        std::cin >> scores[i]; // 读取成绩
        average += scores[i]; // 累加成绩到average变量
    }

    // 计算平均成绩
    average /= 5;

    // 输出每位学生的成绩
    std::cout << "The scores are:" << std::endl;
    for (int i = 0; i < 5; ++i) {
        std::cout << "Student " << (i + 1) << " scored " << scores[i] << std::endl;
    }

    // 输出平均成绩
    std::cout << "The average score is: " << average << std::endl;

    return 0;
}

注意

  • 确保输入的成绩是有效的整数。
  • 程序应该能够处理用户输入的任意五位学生的成绩,并计算出正确的平均值。
  • 12
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值