C语言基础概要----数组

时间:2021-02-28 00:27:19

1.数组

数组的地址就是第一个元素的首地址,数组的名字,就代表数组的地址,且是一个常量;

数组小标:元素在数组中的位置,是由下标来表示的,且下表从零开始,所以数组的下标最大值只能为数组的长度减一,使用过程中注意下表不要越界;

数组初始化

(1)直接给所有元素赋值

(2)给部分元素赋值,未赋值的元素默认为零;

(3)直接省略长度,大括号里的元素个数就是数组的长度;

数组中的重要使用方法《冒泡排序》:假设数组有n个元素,那么最外层循环(控制循环比较多少次)变量(i)需要i<n-1,里层的循环(每趟要比较多少次),循环变量(j)需要j<n-i-i;

举个例子:排列是个数的大小

#include<stdio.h>

int main()

       int a[10]={8,44,43,56,87,90,65,78,69,70};

       int i,j,t;

       for(i=0;i<10;i++)

      {

           for(j=0;j<10-i;j++)

         {

            if(a[j]>a[j+1])

            {

                t=a[j];

               a[j]=a[j+1];

               a[j+1]=t;

            }

        }

     }

    printf("%d",a[j]);

    return  0;

}

 

数组的生活中实际运用:输入一个年月日,判断他是这一年的第几天

#include<stdio.h>

int main()

{

     int h[12]={31,29,31,30,31,30,31,30,31,30,31,30};

     int p[12]={31,28,31,30,31,30,31,30,31,30,31,30};

     int  z,b,c,k=0,i,s;

     printf("请输入你要查找的年月日");

     scanf("%d,%d,%d",&z,&b,&c);

     if((z%4==0&&z?100!=0)||(z%400==0))//对年份的判断,如果是闰年就进行for循环

    {

     for(i=0;i<b-1;i++){

         k+ = h[i];

       }

        s=k+c;

     }

     if((z%4!=0)||(z%4==0&&&z%100==0&&z%400!=0){

    for(i=0;i<b-1;i++){

    k=  k+p[i];

         }

      s=k+c;

     }

     printf("这是一年的第%d天\n",s);

      return 0;

}