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

c語言為數組賦值

發布時間: 2022-07-08 05:58:51

c語言數組賦值問題

我不清楚你想問什麼,不過第二種寫法是對的。
char chars[11];//是定義了一個初始值為空總數為11的字元數組。
char s[] = "c language";//定義一個總數為11的字元數組,但是有初值。注意是11個不是10個,用這種方定義的字元數組末尾會加一個\0。
數組的賦值通常是使用花括弧來表示的,但是字元數組比較特殊,它可以使用字元串來賦值,當然你也可以使用通用的方式,用花括弧來賦值,如{'c', ' ', 'l', 'a'.....}。

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

(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

⑶ 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

⑷ c語言中如何給數組定義並賦初值

字元串數組定義賦值:

char c[6]={'c', ' h ', 'i', 'n', 'a' , '' }

整數數組定義賦值:

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

int a[5];

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

a[i]=i;

定義float數組並賦值:

float b[10]={1.1,2.2,3.3,4.4,5.5,6.6,7.7,8.8,9.9,0.0}

(4)c語言為數組賦值擴展閱讀:

數組:是有序的元素序列。 若將有限個類型相同的變數的集合命名,那麼這個名稱為數組名。組成數組的各個變數稱為數組的分量,也稱為數組的元素,有時也稱為下標變數。

用於區分數組的各個元素的數字編號稱為下標。數組是在程序設計中,為了處理方便, 把具有相同類型的若干元素按無序的形式組織起來的一種形式。 這些無序排列的同類數據元素的集合稱為數組。

聲明固定大小的數組:

有三種方法聲明固定大小的數組,用哪一種方法取決於數組應有的有效范圍:

1,建立公用數組,在模塊的聲明段用 Public語句聲明數組。

2,建立模塊級數組,在模塊的聲明段用 Private語句聲明數組。

3,建立局部數組,在過程中用 Private語句聲明數組。

參考資料來源:網路-數組

⑸ c語言數組的賦值

給數組賦值的方法除了用賦值語句對數組元素逐個賦值外, 還可採用初始化賦值和動態賦值的方法。

C語言對數組的初始化賦值還有以下幾點規定:
1) 可以只給部分元素賦初值。
當{ }中值的個數少於元素個數時,只 給前面部分元素賦值。
例如:
int a[10]={0,1,2,3,4};
表示只給a[0]~a[4]5個元素賦值,而後5個元素自動賦0值。
2) 只能給元素逐個賦值,不能給數組整體賦值。
例如給十個元素全部賦1值,只能寫為:
int a[10]={1,1,1,1,1,1,1,1,1,1};
而不能寫為:
int a[10]=1;

多維數組也是一樣

給數組賦值的方法除了用初始化賦值外,用賦值語句對數組元素只能逐個賦值

⑹ C語言:對數組賦值。很簡單

你這樣屬於溢出,因為後面的幾個元素不在為數組分配內存區域內,因此可以被其它數據任意佔用,值也就可能會改變。這種操作應該避免,對於數組賦值,應該進行嚴格的邊界檢查

⑺ C語言中數組的賦值

我暈喲,不可以的呵
a與b為數組名,也可視為指針來用(僅讀呵),它們為常量呀,不能從新賦值的
只能一個一個賦值,不信你試試

⑻ 在C語言如何在定義數組時給數組賦值

要理解C語言中數組的運作機制,我們首先必須理解如何聲明一個數組,例如:

inta[3];

這個語句聲明了a是一個擁有了3個整型元素的數組,類似的:

struct{
intp[4];
doublex;
}b[17];

聲明了b是一個擁有17個元素的數組,其中每個元素都是一個結構,該結構中包括了一個擁有4個整形元素的數組(命名為p)和一個雙精度類型的變數(命名為x)。

現在考慮下面的例子:

intcalendar[12][31];

這個語句聲明了calendar是一個數組,該數組擁有12個數組類型的元素,其中每個元素都是擁有31個整型元素的數組(而不是一個擁有31個數組類型的元素的數組,其中每個元素又是一個擁有12個整型數組元素的數組)因此sizeof(calendar)的值是372(31*12)與sizeof(int)的乘積。

如果calendar不是用於sizeof的操作數,而是用於其他的場合,那麼calendar總是被替換成一個指向calendar數組的起始元素的指針。要理解上面這句話的含義,我們首先必須理解有關指針的一些細節。

⑼ 用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;
}

(9)c語言為數組賦值擴展閱讀:

for循環

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

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

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

{

中間循環體;

}

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

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

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:432
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:743
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:146
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:235
java駝峰 發布:2025-02-02 09:13:26 瀏覽:651
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:538
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726