當前位置:首頁 » 編程語言 » c語言給結構體數組賦值

c語言給結構體數組賦值

發布時間: 2025-05-25 13:22:40

c語言中怎麼給數組賦初值

inta[5]={1,2,3,4};
charb[]="abcdefg";

數組定義時可以直接賦值初始化。

如果在定義之後,要麼通過循環語句一個一個賦值,要麼使用內存操作函數統一初始化。

② c語言結構體中的一個char數組怎麼賦值

(1)用字元常量逐個初始化數組。例如:

char a[8]={'i','l','o','v','e','y','o','u'};

把8個字元依次分別賦給c[0]~c[7]這8個元素。

如果在定義字元數組時不進行初始化,則數組中各元素的值是不可預料的。如果花括弧中提供的初值個數(即字元個數)大於數組長度,則出現語法錯誤。

如果初值個數小於數組長度,則只將這些字元賦給數組中前面那些元素,其餘的元素自動定為空字元(即'')。

如果提供的初值個數與預定的數組長度相同,在定義時可以省略數組長度,系統會自動根據初值個數確定數組長度。

例如:char c[]={『c』,『』,『p』,『r』,『o','g','r','a','m'};

這時c數組的長度自動定為9。也可以定義和初始化一個二維字元數組,例如:

char diamond[5][5]={{'','','#'},{'','#','','#'},{'#','','','','#'},

{'','#','','#'},{'','','#'}};用它代表一個菱形的平面圖形。

(2)字元串常量初始化數組。例如:

char c[]={『c』,『』,『p』,『r』,『o','g','r','a','m'};

可寫為:char c[]={"C program"};

或去掉{}寫為:char c[]="C program";

注意:此時數組c的長度不是9,而是10。因為字元串常量的最後由系統加上一個''。上面的初始化與下面的初始化等價。

char c[]={『c』,『』,『p』,『r』,『o','g','r','a','m',''};

(2)c語言給結構體數組賦值擴展閱讀:

其定義的一般形式是:char數組名[數據長度]

例如:

char c[10];

c[0]='I';c[1]='';c[2]='l';c[3]='o';c[4]='v';c[5]='e';c[6]='';c[7]='y';c[8]='o';c[9]='u';

以上定義了c為字元數組,包含10個元素。

由於字元型數據是以整數形式(ASCII代碼)存放的,因此也可以用整型數組來存放字元數據,例如:

int c[10];

但這時每個數組元素佔2個位元組的內存單元,浪費存儲空間。

字元數組也可以是二維或多維數組,例如:

char c[5][10];

即為二維字元數組。

初始化

字元數組的初始化與數值型數組初始化沒有本質區別。但它除了可以逐個給數組元素賦予字元外,也可以直接用字元串對其初始化。

輸入輸出

字元數組的輸入

(1)用getchar()或scanf()的'%c'格式符對數組進行字元賦值。例如,對於數組a[10]:用getchar()賦值:

for(i=0;i<10;i++)

a<i>=getchar();

用scanf()賦值:

for(i=0;i<10;i++)

scanf("%c",&a<i>);

(2)用scanf()的'%s'格式對數組賦值。還是對於數組a[10]:

scanf("%s",a);

scanf("%s「,&a[0]);

輸入」C program「並回車時,a數組會自動包含一個以」「結尾的字元串」C program「。

字元數組的輸出

(1)用putchar()或printf()的『%c』格式符對數組進行字元賦值。例如,對於數組a[10]:用putchar()賦值:

for(i=0;i<10;i++)

a<i>=putchar();

用printf()賦值:

for(i=0;i<10;i++)

printf("%c",a<i>);

輸出結果為:

c program

(2)用printf()的'%s'格式對數組賦值。還是對於數組a[10];

printf("%s",a);

輸出結果為:

c program

熱點內容
android版本與api 發布:2025-05-25 17:03:11 瀏覽:359
伺服器監測電腦 發布:2025-05-25 17:01:42 瀏覽:113
送嗎網源碼 發布:2025-05-25 16:55:13 瀏覽:916
黑月編譯器如何用 發布:2025-05-25 16:48:41 瀏覽:941
深圳雲伺服器哪家最好 發布:2025-05-25 16:48:40 瀏覽:699
浪潮伺服器維修公司地址電話 發布:2025-05-25 16:46:58 瀏覽:142
環宇壓縮機 發布:2025-05-25 16:15:52 瀏覽:977
手機上怎麼改寬頻密碼 發布:2025-05-25 16:13:33 瀏覽:715
為什麼我的安卓自動升級鴻蒙了 發布:2025-05-25 16:05:43 瀏覽:333
互動游戲源碼 發布:2025-05-25 15:59:56 瀏覽:976