// ===== CodeLab: C 数组与字符串 =====
// 来源: https://aoerliang.dpdns.org/articles/c-arrays
// 以下代码片段按文章出现顺序拼接, 共 5 段

// ----- 片段 1 (c) -----
#include <stdio.h>

int main(void) {
    int scores[5] = {88, 92, 75, 69, 96};
    printf("第一个: %d\n", scores[0]);   // 88
    printf("最后一个: %d\n", scores[4]); // 96
    scores[2] = 80;                      // 修改第 3 个元素
    return 0;
}

// ----- 片段 2 (c) -----
#include <stdio.h>

int main(void) {
    int scores[5] = {88, 92, 75, 69, 96};
    int sum = 0;
    for (int i = 0; i < 5; i++) {
        sum += scores[i];
    }
    printf("总分 %d, 平均 %.1f\n", sum, sum / 5.0);
    return 0;
}

// ----- 片段 3 (c) -----
#include <stdio.h>

int main(void) {
    int matrix[2][3] = {
        {1, 2, 3},
        {4, 5, 6}
    };
    for (int i = 0; i < 2; i++) {
        for (int j = 0; j < 3; j++) {
            printf("%d ", matrix[i][j]);
        }
        printf("\n");
    }
    return 0;
}

// ----- 片段 4 (c) -----
#include <stdio.h>
#include <string.h>

int main(void) {
    char name[20] = "CodeLab";
    char greeting[50];
    strcpy(greeting, "Hello, ");   // 拷贝
    strcat(greeting, name);        // 拼接
    printf("%s, 长度=%zu\n", greeting, strlen(greeting));

    if (strcmp(name, "CodeLab") == 0) {   // 比较
        printf("名字一致\n");
    }
    return 0;
}

// ----- 片段 5 (c) -----
#include <stdio.h>

int main(void) {
    int arr[] = {5, 2, 9, 1, 7};
    int n = 5;

    for (int i = 0; i < n - 1; i++) {
        for (int j = 0; j < n - 1 - i; j++) {
            if (arr[j] > arr[j + 1]) {
                int tmp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = tmp;
            }
        }
    }
    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
    return 0;
}
