亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

C語言中scanf與指針數組的使用技巧

小樊
93
2024-09-10 10:23:13
欄目: 編程語言

在C語言中,scanf函數用于從標準輸入(通常是鍵盤)讀取數據

  1. 使用指針數組存儲字符串:
#include<stdio.h>

int main() {
    char *names[3]; // 定義一個指針數組,用于存儲字符串
    for (int i = 0; i < 3; i++) {
        names[i] = malloc(100); // 為每個指針分配內存空間
        printf("請輸入第%d個名字:", i + 1);
        scanf("%s", names[i]); // 使用scanf讀取字符串
    }

    // 打印輸入的名字
    for (int i = 0; i < 3; i++) {
        printf("第%d個名字是:%s\n", i + 1, names[i]);
    }

    // 釋放內存
    for (int i = 0; i < 3; i++) {
        free(names[i]);
    }

    return 0;
}
  1. 使用指針數組存儲整數:
#include<stdio.h>

int main() {
    int n, *numbers;
    printf("請輸入整數的個數:");
    scanf("%d", &n);

    numbers = (int *)malloc(n * sizeof(int)); // 為整數分配內存空間

    for (int i = 0; i < n; i++) {
        printf("請輸入第%d個整數:", i + 1);
        scanf("%d", &numbers[i]); // 使用scanf讀取整數
    }

    // 打印輸入的整數
    for (int i = 0; i < n; i++) {
        printf("第%d個整數是:%d\n", i + 1, numbers[i]);
    }

    // 釋放內存
    free(numbers);

    return 0;
}
  1. 使用指針數組存儲浮點數:
#include<stdio.h>

int main() {
    float *scores;
    int n;
    printf("請輸入成績的個數:");
    scanf("%d", &n);

    scores = (float *)malloc(n * sizeof(float)); // 為浮點數分配內存空間

    for (int i = 0; i < n; i++) {
        printf("請輸入第%d個成績:", i + 1);
        scanf("%f", &scores[i]); // 使用scanf讀取浮點數
    }

    // 打印輸入的成績
    for (int i = 0; i < n; i++) {
        printf("第%d個成績是:%.2f\n", i + 1, scores[i]);
    }

    // 釋放內存
    free(scores);

    return 0;
}

注意:在使用scanf讀取字符串時,需要確保輸入的字符串長度不超過分配的內存空間。在實際編程中,為了避免緩沖區溢出,可以使用fgets函數代替scanf讀取字符串。

0
桃源县| 上林县| 米脂县| 甘孜县| 乌鲁木齐市| 石嘴山市| 大港区| 城市| 三台县| 邹平县| 南宫市| 尼木县| 高密市| 桂林市| 沧州市| 武鸣县| 古交市| 澄迈县| 辽阳县| 南雄市| 托里县| 旌德县| 郁南县| 建水县| 乡宁县| 光泽县| 郸城县| 武胜县| 江津市| 喜德县| 武宣县| 金阳县| 凯里市| 竹山县| 泽州县| 社会| 墨竹工卡县| 崇礼县| 安国市| 永仁县| 宁津县|