中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c語言中的數組怎么初始化

發布時間:2021-07-27 10:53:22 來源:億速云 閱讀:948 作者:chen 欄目:編程語言

這篇文章主要講解了“c語言中的數組怎么初始化”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“c語言中的數組怎么初始化”吧!

方法:1、定義數組時給所有元素賦初值,例“int a[5]={1,2,3,4,5}”;2、給一部分元素賦值,例“int a[5]={1,2}”;3、定義時不指定數組長度,直接給所有元素賦初值,例“int a[]={1,2,3,4,5}”。

本教程操作環境:windows7系統、c99版本、Dell G3電腦。

數組初始化

數組的初始化可以使用以下方法實現:

1) 定義數組時給所有元素賦初值,這叫“完全初始化”。例如:

int a[5] = {1, 2, 3, 4, 5};

通過將數組元素的初值依次放在一對花括號中,如此初始化之后,a[0]=1;a[1]=2;a[2]=3;a[3]=4;a[4]=5,即從左到右依次賦給每個元素。需要注意的是,初始化時各元素間是用逗號隔開的,不是用分號。

2) 可以只給一部分元素賦值,這叫“不完全初始化”。例如:

int a[5] = {1, 2};

定義的數組 a 有 5 個元素,但花括號內只提供兩個初值,這表示只給前面兩個元素 a[0]、a[1] 初始化,而后面三個元素都沒有被初始化。不完全初始化時,沒有被初始化的元素自動為 0。

需要注意的是,“不完全初始化”和“完全不初始化”不一樣。如果“完全不初始化”,即只定義“int a[5];”而不初始化,那么各個元素的值就不是0了,所有元素都是垃圾值。

你也不能寫成“int a[5]={};”。如果大括號中什么都不寫,那就是極其嚴重的語法錯誤。大括號中最少要寫一個數。比如“int a[5]={0};”,這時就是給數組“清零”,此時數組中每個元素都是零。此外,如果定義的數組的長度比花括號中所提供的初值的個數少,也是語法錯誤,如“a[2]={1,2,3,4,5};”。

3) 如果定義數組時就給數組中所有元素賦初值,那么就可以不指定數組的長度,因為此時元素的個數已經確定了。編程時我們經常都會使用這種寫法,因為方便,既不會出問題,也不用自己計算有幾個元素,系統會自動分配空間。例如:

int a[5] = {1, 2, 3, 4, 5};

可以寫成:

int a[] = {1, 2, 3, 4, 5};

第二種寫法的花括號中有 5 個數,所以系統會自動定義數組 a 的長度為 5。但是要注意,只有在定義數組時就初始化才可以這樣寫。如果定義數組時不初始化,那么省略數組長度就是語法錯誤。比如:

int a[];

那么編譯時就會提示錯誤,編譯器會提示你沒有指定數組的長度。

下面給大家寫一個簡單的程序:

# include <stdio.h>
int main(void)
{
    int a[5] = {1, 2, 3, 4, 5};
    int i;
    for (i=0; i<5; ++i)
    {
        printf("%d\n", a[i]);
    }
    return 0;
}

輸出結果是:

1
2
3
4
5

a 表示數組的名字,[5] 表示這個數組有 5 個元素,并分別用 a[0]、a[1]、a[2]、a[3]、a[4] 表示。并分別把花括號內的 1、2、3、4、5 賦給變量 a[0]、a[1]、a[2]、a[3]、a[4]。再次強調,下標從 0 開始,即從 a[0] 開始,而不是 a[1]。

也可以用 scanf 手動從鍵盤對數組進行初始化:

# include <stdio.h>
int main(void)
{
    int a[5] = {0};  //數組清零初始化
    int i;
    printf("請輸入5個數:");
    for (i=0; i<5; ++i)
    {
        scanf("%d", &a[i] );
    }
    for (i=0; i<5; ++i)
    {
        printf("%d\x20", a[i]);
    }
    printf("\n");
    return 0;
}

輸出結果是:

請輸入5個數:1 2 3 4 5
1 2 3 4 5

同使用 scanf 給字符數組輸入字符串時有所不同,輸入數字時必須用 for 循環進行輸入。而輸入字符串時無須用循環,直接用 scanf 就可以了。

感謝各位的閱讀,以上就是“c語言中的數組怎么初始化”的內容了,經過本文的學習后,相信大家對c語言中的數組怎么初始化這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

德安县| 安化县| 巴中市| 伊吾县| 读书| 沭阳县| 咸丰县| 溆浦县| 山丹县| 新源县| 绥德县| 永州市| 九寨沟县| 南澳县| 怀宁县| 太谷县| 怀柔区| 万宁市| 信丰县| 屏东县| 靖西县| 鄂伦春自治旗| 临江市| 洛南县| 肃宁县| 黄梅县| 大邑县| 阿合奇县| 安福县| 兴业县| 锦屏县| 襄汾县| 包头市| 邯郸市| 天津市| 永寿县| 古浪县| 全州县| 乳山市| 阳高县| 临洮县|