C语言--一堆数组的定义和初始化

 数组:

            1.定义数组:

                        #include <stdio.h>
                        int main()
                {
       //这个只表示有十个元素,并不代表有array[10],因为它的下标是从0开始的
       int array[10];//定义了一个一维数组,名字叫array,一共有10个元素,每个元素都是int类型
        //array[10]这样写语法不会出错,因为C语言不会帮你判断这个下标是否是合法的,但你写上去就会报相应的错误

}

2.数组在内存的储存方式

                数组在内存中就是一段连续的空间,而且每个元素的类型都是一样的

3.数组的初始化:

            int array[10] = {0,1,2,3,4,5,6,7,8,9};//定义数组的同时为数组的成员初始化值

e.g. 

       #include <stdio.h>
      #pragma warning(disable:4996)
      int main()
{
//int array[10] = {0,1,2,3,4,5,6,7,8,9};//定义数组的同时为数组的成员初始化值
//int array[10] = {3,7,9};//将数组的前三个数赋值,其余元素置为零
//int array[10] = {0};//将所有的数都赋值为0;
int array[10];
int i;
for(i=0;i<10;i++)
{
scanf("%d",&array[i]);
}
for(i=0;i<10;i++)
{
printf("array[%d]=%d\n",i,array[i
]);
}
           return 0;

                }

求数组的最大值:

            #include <stdio.h>
           #pragma warning(disable:4996)
       int main()//求数组中最大的值
{
int array[10]={32,45,643,12,56,2,78,22,69,10};
int max =0;
int i;
for(i=0;i<=9;i++)//想要找最大的值,一定要把数组先遍历一遍
{
if(max<array[i])
{
max = array[i];
}
}
printf("MAX=%d\n",max);
    return 0;

       }

逆置数组

         1.从头往中间换

            #include <stdio.h>
           int main()
  {
int array[10]={32,45,643,12,56,2,78,22,69,10};
int i;
int m;
for(i=0;i<=4;i++)
{
m = array[i];
array[i]=array[9-i];
array[9-i]=m;
}
for(i=0;i<=9;i++)
{
printf("array[%d]=%d\n",i,array[i]);
}
    return 0;

          }

        2.从两头向中间读

            #include <stdio.h>
           int main()//逆置数组:头两头向中间读
   {
int array[10]={32,45,643,12,56,2,78,22,69,10};
int min=0;
int max=9;
int mmm;
int i;
while(min<max)
{
mmm=array[min];
array[min]=array[max];
array[max]=mmm;
min++;
max--;
}
for(i=0;i<=9;i++)
{
printf("array[%d]=%d\n",i,array[i]);
}
       return 0;

          }



猜你喜欢

转载自blog.csdn.net/weixin_41998122/article/details/80400603
今日推荐