目录

  • 1 C语言的介绍
    • 1.1 C语言的简单介绍及历史背景
    • 1.2 C语言的特点
    • 1.3 C语言程序的结构分析案例
    • 1.4 C语言程序的结构
    • 1.5 C语言程序的规范
    • 1.6 运行C语言程序的步骤和方法
  • 2 数据类型、运算符与表达式
    • 2.1 C语言的数据类型
    • 2.2 浮点型数据
    • 2.3 变量赋初值
    • 2.4 算数运算符和算数表达式
  • 3 最简单的C程序设计——顺序程序设计
    • 3.1 顺序程序设计
    • 3.2 数据的输入与输出
  • 4 选择结构程序设计
    • 4.1 关系运算符和关系表达式
    • 4.2 逻辑运算符和逻辑表达式
    • 4.3 if语句
    • 4.4 switch语句
  • 5 函数
    • 5.1 函数概念及无参函数的定义
    • 5.2 有参函数的定义
    • 5.3 函数的参数
    • 5.4 函数的返回值及调用
  • 6 循环控制
    • 6.1 While语句及Do...While语句
    • 6.2 用For语句实现循环
    • 6.3 For语句的几点说明
    • 6.4 循环的嵌套
  • 7 数组
    • 7.1 数组及一维数组的定义
    • 7.2 一维数组的引用与初始化
    • 7.3 二维数组
    • 7.4 字符数组
一维数组的引用与初始化

 

 

 

  数组必须先定义,然后使用。C语言规定只能逐个引用数组元素而不能一次引用整个数组。

 一维数组元素的引用格式

数组名[下标]

下标可以是整型常量、变量和表达式。

例如:int  a [ 10 ],m=3,n=2;

下标可以是整型常量、变量和表达式。

注意:

定义数组时用到的“数组名[常量表达式]”和引用数组元素时用到的“数组名[下标]”是有区别的。

 

 

 

一维数组的初始化就是在定义数组的同时对数组元素赋以初值。
对数组元素初始化的实现方法:

1、 在定义数组时对数组元素赋以初值。

例如:int a[10]={0,1,2,3,4,5,6,7,8,9};

 将数组元素的初值依次放在一对花括弧内。经过上面的定义和初始化之后,a[0]=0,a[1]=1,a[2]=2, a[3]=3,a[4]=4,        a[5]=5,a[6]=6,a[7]=7,a[8]=8,a[9]=9。

2. 可以只给一部分数组元素赋值。

例如:  int a[10]={0,1,2,3,4};    

定义a数组有10个元素,但花括弧内只提供5个初值,这表示     只给前面5个元素赋初值,后5个元素值为0。

3. 如果想使一个数组中全部元素值为0,可以写成:int  a[10]={0,0,0,0,0,0,0,0,0,0};或int a[10]={0};

4. 在对全部数组元素赋初值时,由于数据的个数已经确定,因此可以不指定数组长度。

例如:int a[5]={1,2,3,4,5};

也可以写成  int a[]={1,2,3,4,5}; 

 注意:int a[ ]; 是绝对不允许的

 

 

 

例3:用起泡法对数组中10个数进行由小到大排序对数组中6个数进行起泡法排序的思路是:

个数经过第一趟(共5次比较与交换)后,最大的数9已“沉底” 。然后进行对余下的前面5个数第二趟比较;
   

 

 

 

‍用起泡法对数组中10个数进行由小到大排序程序1:
       #include <stdio.h>
       void main()
       {int a[10];
       int i,j,t;
       printf("input 10 numbers :\n");
       for (i=0;i<10;i++)
       scanf("%d",&a[i]);
       printf("\n");
       for(j=1;j<10;j++)
       for(i=0;i<=10-j-1;i++)
       if (a[i]>a[i+1])
       {t=a[i];a[i]=a[i+1];a[i+1]=t;}
       printf("the sorted numbers :\n");
        for(i=0;i<10;i++)
        printf("%d ",a[i]);
         }‍