加入收藏 | 设为首页 | 会员中心 | 我要投稿 淮北站长网 (https://www.0561zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

循环语句和关系表达式

发布时间:2022-12-03 10:02:16 所属栏目:MsSql教程 来源:未知
导读: 计算机除了存储数据外,还可以对数据进行分析、合并、重组、抽取、修改、推断、合成以及其他操作。为了发挥其强大的操控能力,程序需要有执行重复的操作和进行决策的工具。在C++中,这样的

计算机除了存储数据外,还可以对数据进行分析、合并、重组、抽取、修改、推断、合成以及其他操作。为了发挥其强大的操控能力,程序需要有执行重复的操作和进行决策的工具。在C++中,这样的工具就是循环语句和分支语句,这些程序控制语句通常都使用关系表达式和逻辑表达式来控制其行为。

一:循环语句

1. for循环

一般语法如下:

for (initialization; test-expression; update-expression)
{
  body;
}

initialization为对跟踪循环轮次变量的初始化表达式。

test-expression为关系表达式,当表达式结果为真时执行循环体,表达式结果为假时结束循环。

update-expression为对跟踪循环轮次变量的更新表达式。

注意:for循环头部需要3个表达式WHILE循环语法,但它们可以空表达式,只有2个分号是必须的。另外,如果省略test-expression,结果将一直为真。

2. while循环

while循环是没有初始化和更新部分的for循环。语法如下:

while (test-expression)
{
  body;
}

test-expression的结果为真时执行循环体,结果为假则结束循环。

3. do while循环

语法如下:

do
{
  body;
} while (test-expression);

这种循环先执行一次循环体,再判断test-expression,结果为真时继续执行循环体,结果为假时结束循环。

4. 基于范围的for循环

C++11新增了一种基于范围的for循环,简化了一种常见的循环任务:操作容器类(vector、array等)中的每个元素。

一般语法如下:

for (type-name variable-name : container-name)
{
  body;
}

如果要修改容器中的元素,则需要使用以下形式的语法:

for (type-name& variable-name : container-name)
{
  body;
}

符号&表明variable-name是一个引用变量。

5. 循环语句之间的联系和区别

联系:在一些情况下,for、while和do while循环可以互相改写。应该追求编写清晰、容易理解的代码。

区别:for和while循环是入口条件循环,意为在执行循环体之前判断测试表达式;而do while循环是出口条件循环,即在执行循环体之后判断测试表达式。

二:关系表达式

表达式:任何值或者任何有效的值和运算符的组合。

语句:表达式后加分号。

关系表达式对两个值进行比较,常被用作循环测试条件。关系表达式是通过使用6种关系运算符构成:、=、==和!=。关系表达式的结果为bool类型,值为true或false。

注意:不要混淆等于运算符(==)和赋值运算符(=)!

另外,C风格字符串的比较不能使用关系运算符,而应该使用strcmp()等函数;而string类对象可使用关系运算符进行比较,因为string类重载了这些运算符。

三:实战演示

题目:显式10(不含)以内的整数的阶乘。

代码如下:

#include 
using namespace std;
static const int arrSize = 10;
int main()
{
      long long arr[arrSize];
    arr[0] = 1;
    for (int i = 1; i < arrSize; i++)
    {
        arr[i] = i * arr[i - 1];
    }
    int i = 0;
    while (i < arrSize)
    {
        cout << i << "! = " << arr[i] << endl;
        i++;
    }
    system("pause");
    return 0;
}

输出结果如下图1所示:

用while循环输入_while循环每个10秒循环一次_WHILE循环语法

图1 10以内整数的阶乘

(编辑:淮北站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!