數組概述

 

1、爲什麼需要數組?
   爲了解決大量同類型數據的存儲和使用;
   爲了模擬現實世界

2、數組的分類

  一維數組
 爲n個變量連續分配存儲空間;
 所有的變量數據類型和所佔的字節大小必須都相同。
     有關一維數組的操作:
 初始化
    完全初始化
  int a[5]={1,2,3,4,5};
    不完全初始化,未被初始化的元素自動爲零
  int a[5]={1,2,3};
    不初始化,所有元素是垃圾值
  int a[5]
    清零
  int a[5]={0};
   【 錯誤寫法】:
 ————int a[5];
  a[5]={1,2,3,4,5};//錯誤
  只有在定義數組的同時纔可以整體賦值,其他情況下整體賦值都是錯誤的,上述的a

[5]表示的就是數組a的第六個元素。而不是整個數組。
 ————int a[5]={1,2,3,4,5};
  int b[5];
  如果要把a數組中的值全部複製給b數組
  b=a;//錯誤
  正確的寫法:
    for(i=0;i<5;i++)
   b[i]=a[i];
 賦值;排序;求最大/小值;倒置;查找;插入;刪除 
/************************************
2011年9月9日19:11:12
目的:把一個數組的元素全都倒過來
*************************************/
#include<stdio.h>
int main(void)
{
 int a[8]={1,2,3,4,5,6,7,8};
 int i,j;
 int t;

 i=0;
 j=7;
 while(i<j)
 {
  t=a[i];
  a[i]=a[j];
  a[j]=t;

  i++;
  --j;
 }
 for(i=0;i<8;i++)
  printf("%d\n",a[i]);
 return 0;
}
  
  二維數組
 a[i][j]表示第i+1行第j+1列的元素;
 
 初始化:
  int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}
  int a[3][4]={
    {1,2,3,4},
    {5,6,7,8},
    {9,10,11,12}
        }
 對二維數組排序
 求每一行的最大值
 判斷矩陣是否對稱
 矩陣的相乘


  多維數組 不存在多維數組
  因爲內存是線性一維的  n維數組可以當做每個元素是n-1維數組的一維數組

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章