今天才看到数组http://www.imooc.com/code/5597
数组可以这样初始化:
数据类型 数组名称[长度n] = {元素1,元素2…元素n};
若元素个数小于数组长度时,多余的数组元素初始化为0;
※在声明数组后没有进行初始化的时候,静态(static)和外部(extern)类型的数组元素初始化元素为0,自动(auto)类型的数组的元素初始化值不确定。
※ printf("%.2f, ", arr[i]); //%.2f表示小数点后精确到两位
※以整个数组为形数,则调用时数组名后不带中括号[]。
小实验:
#include <stdio.h>
int getIndex(int arr[5],int value)
{
int i;
int index;
for(i=0;i<5;i++)
{
if(arr[i]==value)
{index=i;break;}
else
index=-1;
}
return index;
}
int main()
{
int arr[5]={3,12,9,8,6};
int value = 8;
int index = getIndex(arr,value);
if(index!=-1)
{
printf("%d在数组中存在,下标为:%d\n",value,index);
}
else
{
printf("%d在数组中不存在。\n",value);
}
return 0;
}
调试结果:
将函数int getIndex(int arr[5], int value)更换为以下形式,主函数结果不变!!
int getIndex(int arr[5], int value)
{
int i;
int index;
for (i = 0; i<5; i++)
{
if (arr[i] == value)
{
return i;
}
}
return -1;
}