专业编程基础技术教程

网站首页 > 基础教程 正文

Cpp知识点系列-结构语句 cpp结构体

ccvgpt 2024-11-11 11:21:02 基础教程 7 ℃

前言

原本以为自己对基础结构了解的很是深入,没有必要整理。

但是做错题了之后就不这么想了……

Cpp知识点系列-结构语句 cpp结构体

结构语句if-else多重选择

image-20201113143024482

image-20201113142942982

void coutIF() {
    int x = 100;
    if (x < 10) {
        cout << "1";
    } else if (x > 101) {
        cout << "2";
    } else {
        cout << "3";
    }
}

结果为3。

switch选择

image-20201113143414467

switch语句的执行过程是:

  1. 首先计算switch 语句中表达式的值
  2. 然后在case语句中寻找值相等的常量表达式,并以此为入口标号,由此开始顺序执行。如果所有case的常量表达式都不符合,则从“default :”为入口标号
  3. 遇到break语句为出口标号

注意:

  • switch语句后面的表达式可以是整型,字符型,枚举型
  • 每个常量表达式的值不能相同,但次序不影响执行结果。
  • 每个case分支可以有多条语句而不必用{}。
  • 如果没有出口标号,则会从人口标号开始一直执行到switch 结构的结束点。
  • 当若干分支需要执行相同操作时,可以使多个case分支共用一组语句。
void coutSWITCH() {
    int x, a, b, c, d;
    a = b = c = d = 0;
    cin >> x;
    switch (x) {
        case 1:
            a++;
            break;
        default:
            d = 1;
        case 2:
            b++;
            break;
        case 3:
            c++;
            break;
    }
    cout << a << b << c << d << endl;
}
  • x=1,结果为1000
  • x=2,结果为0100
  • x=5,结果为0101

for循环

for(初始语句;表达式1;表达式2){
 语句
}

for语句的执行流程是:

  1. 首先执行初始语句
  2. 再计算表达式1(循环控制条件)的值,并根据表达式1的值判断是否执行循环体。如果表达式1的值为true,则执行一次循环体;如果表达式1的值为false,则退出循环。
  3. 每执行一次循环体后,计算表达式2的值,然后再计算表达式1,并根据表达式1的值决定是否继续执行循环体。

do-while循环

do{
 语句
}while (表达式)

执行顺序是:先执行循环体语句,后判断循环条件表达式的值,表达式为true时,继续执行循环体,表达式为false则结束循环。

image-20201114121813913

while循环

while (表达式){
 语句
}

执行顺序是:先判断表达式(循环控制条件)的值,若表达式的值为true,再执行循环体(语句)。

#include <iostream>
#include <cstring>

#define endl "\n"
using namespace std;
static int n3 = 0;

void function(char s[]) {
    s[n3++] += 2;
}

int main() {
    char str[10] = "abcd";
    cout << str << endl;
    int n1 = 1, n2 = strlen(str);
    cout << n2 << endl;
    while (n1++ < n2)
        function(str);
    cout << n1 << endl;
    cout << n3 << endl;
    cout << str << endl;
    return 0;
}

image-20201114125312417

感谢

参考书籍《C++语言程序设计(第4版)》(郑莉,董渊)

感谢现在努力的自己。

感谢现在的好奇,为了能成为更好的自己。

Tags:

最近发表
标签列表