當前位置:首頁 » 編程語言 » c語言數組賦值變數賦值

c語言數組賦值變數賦值

發布時間: 2023-08-25 14:21:48

c語言,結構體中的數組怎麼賦值,

(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',''};

(1)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

Ⅱ C語言一維數組賦值方法

不單能用for語句

一維數組的聲明:

類型說明符 數組名[常量表達式]

例如 int C[10],它表明數組名為C,此數組有十個整型變數。

註:常量表達式中可以包括常量和符號常量,不可以包括變數。也就是說,C不允許對數組的大小做動態定義,即數組的大小不依賴於程序運行過程中變數的值。

一維數組的引用:

C語言規定只能逐個引用數組元素而不能一次引用整個數組。

數組元素的表現形式為:數組名[下標] 下標可以是整型常量或整型表達式。例如 C[0]=C[5]+C[7]-C[3*2]

一維數組的初始化:

可以用賦值語句或輸入語句使數組中的元素得到值,但這樣會影響速度。可以使數組在運行之前初始化,即在編譯階段使之得到初值。在定義數組時對數組元素賦以初值。static int a[5]={0,1,2,3,4}

Ⅲ 用C語言怎麼輸入為數組賦值,求代碼

#include <stdio.h>
int main(void)
{
int a[5];

printf("請輸入5個數字:");

for(int i=0;i<5;i++) {

scanf("%d",&a[i]);

}

for(i=0;i<5;i++) {

printf("%d ",a[i]);

}

printf(" ");
return 0;
}

(3)c語言數組賦值變數賦值擴展閱讀:

for循環

for循環是編程語言中一種開界的循環語句,而循環語句[1]由循環體及循環的終止條件兩部分組成,for循環其在各種編程語言中的實現與表達有所出入,但基本為以C語言和pascal語言代表的兩種形式。

C語言中的for循環形式為:

for(單次表達式;條件表達式;末尾循環體)

{

中間循環體;

}

for循環小括弧里第一個「;」號前為一個為不參與循環的單次表達式,其可作為某一變數的初始化賦值語句, 用來給循環控制變數賦初值; 也可用來計算其它與for循環無關但先於循環部分處理的一個表達式。

執行的中間循環體可以為一個語句,也可以為多個語句,當中間循環體只有一個語句時,其大括弧{}可以省略,執行完中間循環體後接著執行末尾循環體。

Ⅳ C語言 怎麼把字元數組中的字元賦值給字元變數

第一種寫法,等同於char a[10] = {"abc"};
第一種寫法,用一個字元串賦值,實際上保存了4個位元組(包含字元串結束符)。
第二種寫法,只賦值了三個位元組。
1、char c[5];

c[0]=』H』; c[1]=』e』; c[2]=』l』; c[3]=』l』; c[4]=』o』;

2、charc[5]={『H』,』e』,』l』,』l』,』o』};

3、(1)如果在定義字元數組時不進行初始化,則數組中各元素的值是不可預測的;

(2)如果花括弧中提供的初值個數(即字元個數)大於數組長度,則按語法錯誤處理;

(3)如果花括弧中提供的初值個數(即字元個數)小於數組長度,則只將這些字元賦給數組中前面那些元素,其餘的元素自動定為空字元(即『\0』);

4、(如何將字元串賦值給字元數組)

C語言中,將字元串作為字元數組來處理的。C語言規定了一個「字元串結束標志」,以字元』\0』作為標志。為此,再對字元數組初始化的方法補充一種用字元串常量來使字元數組初始化方法:

char c[] = {「Hello」};

或 char c[] =「Hello」; 注意:數組c的長度不是5,而是6.

上面的初始化等價於:char c[5]={『H』,』e』,』l』,』l』,』o』,』\0』};

而不等價於:charc[5]={『H』,』e』,』l』,』l』,』o』};

5、字元數組的輸出

char c[] ={「Hello」};

printf(「%s」,c);

6、(如何將字元串賦值給字元數組)

strcpy(字元數組1,字元串2)

eg: char str1[10]=』』, str2={「Hello」};

strcpy(str1,str2);

執行後str1狀態為:

H
e
l
l
o
\0
\0
\0
\0
\0
(1)「字元數組1」必須寫成數組名形式(如str1),「字元串2」可以是數組名,也可以是字元串常量。eg strcpy(str1, 「Hello」);

(2)不能用賦值語句將一個字元串常量或字元數組直接給一個字元數組。如下面兩句都是不合法的:str1=」Hello」;

str1=str2;

而只能用strcpy函數將一個字元串復制到另一個字元數組中去,賦值語句只能將一個字元賦給一個字元型變數或者字元數組元素。如下面的語句是合法的:

char c[5],c1,c2;

c1=』A』;c2=』B』;

c[0]=』H』; c[1]=』e』; c[2]=』l』; c[3]=』l』; c[4]=』o』;

7、strlen函數是測試字元串實際長度(不包含『\0』在內)的函數。

char c[10]=」Hello」』

printf(「%d」,strlen(c)); 或者Printf(「%d」,「Hello」); 輸出為5

Ⅳ C語言中如何一次給一個數組變數賦值

連續批量賦值可以用memset
char
A[20];
memset(A[2],'A',5);//對數組A第3個元素開始的連續5個元素統一賦值為字元'A'
如果每個需要賦值的元素都不同,就只能一個個賦值了。

Ⅵ C語言數組賦值

char
ch[7]={"65ab21"}就是字元數組賦初值,類似於
char
ch[7]={'6','5','a','b','2','1','\0'};
s=10*s+ch[i]-'0'的意思是把字元串轉化位數字,比如說"123",它是字元串,轉化為數字123,ch[i]-'0'就是把數字字元與零字元的acsii碼相減,得到數字字元相應的數字,比如'5'-'0'=5

熱點內容
商品存儲規劃 發布:2025-02-04 17:45:24 瀏覽:562
ios訪問共享 發布:2025-02-04 17:36:33 瀏覽:330
javabuild 發布:2025-02-04 17:30:19 瀏覽:588
gnulinux編譯 發布:2025-02-04 17:30:18 瀏覽:128
蘇州阿里雲伺服器專網 發布:2025-02-04 17:21:05 瀏覽:523
如何學習php 發布:2025-02-04 17:11:55 瀏覽:387
sql查詢鎖 發布:2025-02-04 17:04:00 瀏覽:394
第二代長安cs55plus買哪個配置 發布:2025-02-04 16:58:16 瀏覽:191
彩虹島用什麼電腦配置 發布:2025-02-04 16:52:22 瀏覽:647
armphp 發布:2025-02-04 16:51:40 瀏覽:558