數(shù)組
數(shù)組是一個變量砚殿,由數(shù)據(jù)類型相同的一組元素組成
變量和數(shù)組的區(qū)別
變量是內(nèi)存中的一塊空間
數(shù)組是內(nèi)存中一塊連續(xù)的空間
舉個例子
iPhone4;iPhone4s嗡综;iPhone5禽炬;iPhone5s……
數(shù)組的結(jié)構(gòu)和基本要素
- 標(biāo)識符:數(shù)組的名稱碎节,用于區(qū)分不同的數(shù)組
- 數(shù)組元素:向數(shù)組中存放的數(shù)據(jù)
- 元素下標(biāo):對數(shù)組元素進(jìn)行編號
- 元素類型:數(shù)組元素的數(shù)據(jù)類型
- 數(shù)組只有一個名稱,即標(biāo)識符
- 元素下標(biāo)表明的數(shù)組的位置粉怕,從0開始
- 數(shù)組中每個元素都可以通過下標(biāo)來訪問
- 數(shù)組長度固定不變避免數(shù)組越界
數(shù)組中所有元素必須使用相同類型
一維數(shù)組
- 學(xué)生單門學(xué)科成績(比如一個人的 數(shù)學(xué)健民,語文,英語成績)
- 某類別商品單價(比如方便面 康師傅贫贝,統(tǒng)一 等等)
- 某個人N個月的工資
語法
datatype arrayName[size]
舉個例子
int num[25]; //定義了一個25個元素的數(shù)組
char array_of_name[30]; //定義了一個有30個元素的char型數(shù)組
==================================================
#define N 50 // 宏定義 定義之后不可以更改
int emp_id[N]; //接上面的宏定義秉犹,一開始是沒有類型的,用的時候再加
=================================================
const int SIZE = 100; //const是常量平酿,一開始就定義了類型
duoble prise [SIZE]; //
==================================================
//正確:后面的元素個數(shù)與聲明的一致
int years[6] = {2012,2013,2014,2015,2016,2017};
//正確:后面5個元素未初始化凤优,默認(rèn)值為0
int monthes[12] ={1,3,5,7,8,10,12} ;
//正確:元素個數(shù)為2(固定為2不能再加元素)
int days[] = {1,15};
//錯誤:未知元素個數(shù)!
int array[] = {}
動態(tài)的從鍵盤輸入信息并賦值
(#)include <stdio.h>
(#)include <stdlib.h>
(#)define N 5
int main()
{
double score[N];
int i; //循環(huán)變量
//使用循環(huán)操作數(shù)組時蜈彼,要注意一個循環(huán)只做一件事兒
for(i = 0;i < N; i++)
{
printf("請輸入第%d位同學(xué)的成績:",i+1);
scanf("%lf",&score[i]); //score里面第i個元素
}
//下面的循環(huán)用來打印數(shù)組元素
for(i = 0;i < N; i++)
{
printf("請輸入第%d位同學(xué)的成績是:%.2f\n",i+1,score[i]);
}
return 0;
}
小結(jié)
使用數(shù)組的步驟
1.定義數(shù)組是什么類型
2.規(guī)定數(shù)組的大小
3.考慮如何給數(shù)組元素進(jìn)行賦值
4.一般通過循環(huán)來操作數(shù)組