當前位置:首頁 » 編程語言 » 二維數組c語言定義階
擴展閱讀
web創建者 2023-02-01 01:43:36
在迪拜的wifi 2023-02-01 01:42:40
ebcso資料庫 2023-02-01 01:41:57

二維數組c語言定義階

發布時間: 2022-11-27 17:54:17

c語言如何定義二維數組

二維數組定義的一般形式是:
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]

㈡ C語言問題。定義一個二維數組

#include<stdio.h>
intmain()
{
intarr[5][6];
inti,j,max,min,sum,a,b,c,d,e;
floatave;
printf("Input30numbers: ");
for(i=0;i<5;i++)
for(j=0;j<6;j++)
scanf("%d",&arr[i][j]);//此處為srr[i][j],你寫成srr[5][6]就成了為crr第6行第七列賦值了,不但錯誤,更是越界了!
printf(" ");
min=max=arr[0][0];//將最大值與最小值都初始化為第一個元素
a=b=c=d=0;//下標也要初始化!
for(i=0;i<5;i++)
for(j=0;j<6;j++)
{
if(max<arr[i][j])
{
max=arr[i][j];
a=i;
b=j;
}
if(min>arr[i][j])
{
min=arr[i][j];
c=i;
d=j;
}
}
printf("max=arr[%d][%d]=%d ",a,b,max);
printf("min=arr[%d][%d]=%d ",c,d,min);

sum=0;
for(i=0;i<5;i++)
{
for(j=0;j<6;j++)
sum+=arr[i][j];
e=i;
ave=sum/6.0;//寫成6.0使得sum提升到浮點型
printf("ave=arr[%d]=%f ",e,ave);
}
return0;
}

樓主基本沒有大錯誤,只是不夠仔細,用來保存特定值的變數使用前一定要初始化,如本例中的最大值,最小值,下標,都是必須初始化的!

整型與整型運算會得到整型,1/2=0,5/4=1;系統會捨去小數部分。只要將其中一個提升至浮點型即可,如1.0/2,5/4.0,如果是兩個整型變數,可以寫成(float)a/b,即可使得得到浮點型結果!


2013 5 25 7:05

1L

耗時 4min

㈢ c語言中二維數組的定義

c語言中,要定義一個三行四列的int二維數組,可以採用以下的語句:
int a[3][4];

㈣ C語言二維數組定義是什麼,然後int a[1][2]是代表什麼意思怎麼用這個二維數組

C語言二維數組定義的一般形式是:類型說明符 數組名[常量表達式1][常量表達式2]
int a[1][2]的意思是,定義了一個int類型的,數組名為a的,具有1行2列的數組
你可以把這個二維數組想像成一個表格,這個表格有1行2列,每個格子中可以放入一個int型數據。
數組使用就是用數組下標來訪問數組中的元素,比如a[0][1]=5,就是把第1行的第2個元素賦值為5。

㈤ c語言關於定義二維數組的問題

首先你要理解二維數組的真正含義,它的第一維就是一組數據的起始地址,第二維就是某組數據中的某個值.其次,你要知道a[][4]所表達的意思,是指二維數組a的每一維都是由4個元素組成的一維數組.而編譯器可以根據你賦給a的初值個數計算它的第一維長度(元素總個數/4,如果不能整除,則長度加1,此時還應該有幾個沒有賦初值的數組元素).而a[3][]的意思從表面上看可以成立,但問題是編譯器不能直接識別其第二維的確切長度(你可以考慮,如果總的初值個數為2時,可以認為a的第二維長度為1,也可以是2,.......),這樣就會產生錯誤.所以,可以a[][4]={*,*,*……}這樣定義,而不能定義a[3][]={*,*,*……}。
對於你補充的問題,其實我已經講了.因為賦初值是5個元素,所以5/4=1,但除不盡,所以要加1,即實際數組a實質上定義為a[2][4],其內元素為:
1 2 3 4
5 0 0 0 (後面的三個0是系統默認值)
希望對你有所幫助.^-^

㈥ C語言中二維數組的定義問題

1. 二維數組的第一個維度預設是:
舉個例子:int tar[][2] = {1,2,3,4};
因為大括弧中有4個元素,而且第二個維度是2,所以就可以計算出來第一維度是2.所以是可以預設的。
2. 你的這個例子中,第一維預設的應該是(7*8+1)/(__MAXITERMLEN__+1) 向上取整。
3. 因為fd_jpf1[i]是一個一級指針,保存的是地址,設置為NULL表示為空。在這里應該是把它當做這個數組中有效元素的結束的標志了。

㈦ c語言怎麼定義二維數組

#include<stdio.h>
#defineN3
#defineM4
voidmain()
{
inta[N][M];
intb[M][N];
inti,j;
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
{
scanf("%d",&a[i][j]);
}
}
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
{
printf("%5d",b[i][j]);
}
printf(" ");
}
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
{
b[j][i]=a[i][j];
}
}
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
{
printf("%5d",b[i][j]);
}
printf(" ");
}
}

㈧ 二維數組的定義的一般格式

二維數組的定義的一般格式:

1.先聲明再初始化

例如:

//1.聲明

int[] nums;

//初始化

nums = new int[5];

2.聲明並初始化

例如:

//2.聲明、初始化

int[] nums = new int[10];

3.創建數組同時賦值

例如:

//3.創建數組同時賦值

String[] names=new String[]{"大名","小米","夏雨荷"};

int[] ages=new int[]{21,22,21,56,13};

for (int i = 0;i < names.length;i++){

System.out.prinrln(names[i]);

}

for (int i = 0;i < ages.length;i++){

System.out.prinrln(ages[i]);

}

4.創建同時賦值,簡寫,不能寫成兩條語句

例如:

//4.創建同時賦值,簡寫,不能寫成兩條語句

String[] cities = {"上海","北京"};

(8)二維數組c語言定義階擴展閱讀:

數組(Array)是有序的元素序列。若將有限個類型相同的變數的集合命名,那麼這個名稱為數組名。組成數組的各個變數稱為數組的分量,也稱為數組的元素,有時也稱為下標變數。用於區分數組的各個元素的數字編號稱為下標。數組是在程序設計中,為了處理方便, 把具有相同類型的若干元素按有序的形式組織起來的一種形式。 這些有序排列的同類數據元素的集合稱為數組。

數組是用於儲存多個相同類型數據的集合。

在C語言中, 數組屬於構造數據類型。一個數組可以分解為多個數組元素,這些數組元素可以是基本數據類型或是構造類型。因此按數組元素的類型不同,數組又可分為數值數組、字元數組、指針數組、結構數組等各種類別。

㈨ c語言中二維數組的定義

二維數組定義的一般形式是:
類型說明符 數組名[常量表達式1][常量表達式2]
其中常量表達式1表示第一維下標的長度,常量表達式2 表示第二維下標的長度

int a[3][4];

㈩ C語言中如何定義一個二維數組

C語言不支持動態數組 所以不能將變數作為數組長度
一般來說用C實現動態數組會用鏈表的方式