當前位置:首頁 » 編程語言 » c語言2維數組不在定義時賦值
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言2維數組不在定義時賦值

發布時間: 2022-04-12 21:51:59

c語言 數組 定義時賦值

c語言不允許在定義的時候直接用變數賦值。但用v[0]=x,v[1]=y...這樣的方法是可以的。
至於數組長度,C語言不支持動態定義大小,如int
n=5;int
a[n];這樣也是錯的。所以數組一般要定義成足夠大。

㈡ C語言中二維字元數組應該怎樣賦值

二維數組賦值的一般形式是:dataType arrayName[length1][length2]。result二維字元數組可以這樣賦值,result[0][0]=seq1[0] ;result[1][0]=seq2[0]。

dataType arrayName[length1][length2],其中,dataType 為數據類型,arrayName 為數組名,length1 為第一維下標的長度,length2 為第二維下標的長度。

例如:int a[3][4],定義了一個3行4列的數組,共有3×4=12個元素,數組名為a,即:

a[0][0], a[0][1], a[0][2], a[0][3]

a[1][0], a[1][1], a[1][2], a[1][3]

a[2][0], a[2][1], a[2][2], a[2][3]

在二維數組中,要定位一個元素,必須給出一維下標和二維下標,就像在一個平面中確定一個點,要知道x坐標和y坐標。例如,a[3][4] 表示a數組第3行第4列的元素。

(2)c語言2維數組不在定義時賦值擴展閱讀:

二維數組的地址計算

有二維數組A[m][n],設a[p][q]為A的第一個元素,即二維數組的行下標從p到m+p,列下標從q到n+q,按「行優先順序」存儲時則元素a[i][j]的地址計算為:

LOC(a[i][j]) = LOC(a[p][q]) + ((i − p) * n + (j − q)) * t

按「列優先順序」存儲時,地址計算為:

LOC(a[i][j]) = LOC(a[p][q]) + ((j − q) * m + (i − p)) * t

存放該數組至少需要的單元數為(m-p+1) * (n-q+1) * t 個位元組

㈢ C語言二維數組賦值問題

先直接將數組所有元素賦為0,然後按照用戶輸入逐個給元素賦值,這樣沒有賦值到的元素自然是0。

㈣ C語言二維數組的賦值問題

data[0][20]是一個char類型,而且下標越界了,data[0][20]=data[1][0]

*q也是一個char

char *q;定義的變數是q,不是*q,這一點要先理解透徹。

㈤ C語言定義一個整型二維數組,若沒有賦值,系統自動給的是0嗎

C語言規定,普通數組沒有賦初值,默認的數組元素值是隨機數,不是0。
如果在定義數組時,數據類型前面加上關鍵字static,數組變成了靜態數組;或者把數組定義在函數的外面,成為全局變數數組,這時數組元素的值自動賦值為0。

㈥ c語言中二維數組如何部分賦值求解,謝謝。

給二維數組中的部分元素賦值,一般是採用單個元素逐個進行賦值。如果是為每一行的前若干個連續元素賦值可以在定義數組變數的時候一起初始化。
這時候,初始化必須要為整個數組全部元素賦值或者為數組中,前若干行的前若干個元素賦值,這時其餘未賦值的元素自動被賦值為初始值0。
#include#include<stdio.h>

int main()
{ float pay[3][6];
pay[1][2]=6;
printf("pay[1][2]=%f\n",pay[1][2]);
return 0;
}

㈦ c語言中怎樣實現對二維數組元素進行賦值並輸出。

可以按照下面步驟進行定義二維數組並輸出:

1 定義二維指針。

2 確定數組維數,即行數和列數。

3 申請行數個一維指針大小空間,並賦值給二維指針。

4 對於每個一維指,申請列數個元素的空間,並賦值給對應的一維指針。

5 輸入或賦值數據。

6 使用雙重循環,逐個范圍存儲單元並輸出。

7 逐個釋放一維指針上的內存。

8 釋放二維指針上的內存。

以整型二維數組為例:

下面的代碼,實現先輸入二維數組的行數m和列數n,並再輸入m*n個整型數據存到動態二維數組中。最後輸出所有二維數組的元素值。

㈧ c語言二維數組的賦值

1、首先在電腦上打開c語言編程軟體。然後創建項目。

㈨ c語言中二維數組的賦值問題,很奇怪

改成這樣就能運行但是 ,你這小程序有點問題。自己改下吧,輸出結果一定不對
#include<stdio.h>
int main()
{
int i=3;
float a[2][2];
for(i=0;i<2;i++)
scanf("%f,%f",&a[i][0],&a[i][1]);
printf("%f",a[1][1]);
return 0;
}