本文目錄一覽:
- 1、c語言二維數組怎麼用
- 2、c語言中二維數組如何使用
- 3、c語言二維數組
- 4、c語言二維數組的運用
c語言二維數組怎麼用
我也不是高手,也是初學。正巧碰到這個問題感覺我還是能解決的。就隨手寫了下,回答下。大家共同進步哈。有不對的地方還要請各位真正的高手指正。
代碼在下面,複製到你的編輯器裡面看比較好,加了註解的。還有問題就再問哈。
—————————————————————
public class d_array
{
public static void main(String[] args)
{
int[][] d_array = new int[8][8]; //定義一個8行8列的二維數組
int num = 1; //定義一個填充用的數備用
for (int i = 0 ; i d_array.length ; i++)
for (int j = 0 ; j d_array[i].length ; j++)
d_array[i][j] = num++;
//讓上面那個填充數自加並填充進數組
for (int p = 0 ; p d_array.length ; p++)
{
System.out.println(“數組第 “+(p+1)+” 行中的值為:”); //加一句說明是第幾行的,不要也可以。
for (int q = 0 ; q d_array[p].length ; q++)
System.out.print(d_array[p][q]+”\t”); //加這個\t可以有效的分離開兩個數,排版好看
System.out.print(“\n\n”); //換行,第一個用於一行之後換行,第二個用於一個空行,與下面那行隔開,排版好看的
}
//分行列印數組
int sum = 0; //一樣,定義一個合備用
for (int m = 0 ; m d_array.length ; m++)
for (int n = 0 ; n d_array[m].length ; n++)
sum = sum + d_array[m][n];
//分別將數組中的各個數加到這個合中去,最後得到的這個合就是數組中所有數的合了。
System.out.println(“數組中的所有值得合為:”+sum); //列印結果
}
}
—————————————————————
其實二維數組的操作秘訣就是兩個for循環套起來用,這樣就很簡單了。
c語言中二維數組如何使用
#include stdio.h
#include stdlib.h
int main()
{
int i,j,n=1;
int a[15][15];
//賦值
for(j=0;j15;j++)
{
for(i=0;i15;i++)
{
a[j][i] = n;
n++;
}
}
//輸出顯示
for(j=0;j15;j++)
{
for(i=0;i15;i++)
{
printf(“%3d “,a[j][i]);//%3d,3表示3按三個字元對齊
}
printf(“\n”);//顯示完一行換行
}
return 0;
}
c語言二維數組
這個就是指針數組和數組指針的區別了,我當年也在這裡轉了很久,希望我下面所說得可以幫到你。
首先,明確編譯器是怎麼識別*s[]和(*s)[]兩種形式的代碼的。對於*s[],編譯器會以默認的右結合的方式進行識別,所以首先識別s[],這是一個數組,然後再識別*,說明這個數組的元素都是指針。所以最後的結果就是:這是一個「以指針為元素的數組」,簡稱指針數組。而對於(*s)[],由於()的優先順序高於*,所以編譯器會先識別()裡面的,也就是先識別*s,所以它是一個指針,然後()說明這個指針指向的是一個數組,所以最後的結果是:這是一個「指向數組的指針」,簡稱數組指針。
好吧,我承認一點,就是這兩個東西看起來複雜,但是其實用起來區別不大,最本質的東西就是,指針數組用到多個指針,數組指針就完全是一個指針跑天下。
看下面一段代碼(我偷懶用C++寫的,反正這個不是重點):
#include
using
namespace
std;
int
main()
{
//指針數組
*a[2]
int
t1[3]
=
{0,1,2};
int
t2[3]
=
{3,4,5};
int
t3[3]
=
{6,7,8};
int
*a[3];
a[0]
=
t1;
//一個指針賦值
a[1]
=
t2;
//第二個指針賦值
a[2]
=
t3;
//第三個指針賦值
//數組指針
(*b)[3]
int
(*b)[3]
=
new
int[3][3];
for(int
i=0;i3;i++)
for(int
j=0;j3;j++)
*(*(b+i)+j)
=
i*3+j;
//一個指針跑天下
cout
*((*b)+1)
“
“
*(*(b+1))
endl;
system(“pause”);
return
0;
}
最後我想說,其實這個做題的時候有用,自己寫的時候還是盡量直接用int[n][m]的方式比較方便,稍微浪費點空間問題不大,重要的是看起來好看,不容易出錯。
c語言二維數組的運用
#includestdio.h
#define MAX 100
#define LEN 80
main()
{
char text[MAX][LEN];
register int i,j,t;
for(t=0;tMAX;t++)
{
printf(“%d:”,t);
gets(text[t]); /* 由於 text 定義為二維數組, 所以該循環體的作用就是:循環從鍵盤輸入 MAX-1 次字元串,並存入 text[t] 中,然後 t 依次遞增 1 */
if(!text[t][0]) /* 該語句用於判斷字元串是否到結尾?,如果到結尾了,即:text[t][0] = ‘\0’,表示只輸入了一個回車符,則退出循環 */
break;
}
for(i=0;it;i++)
{
for(j=0;text[i][j];j++)
{
putchar(text[i][j]); /* 顯示 text 二維數組中的字元 */
putchar(‘\n’);
}
}
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/275774.html