C语言-小黄鸭☞一维数组

什么数组

一个包含了多个元素的集合,在程序中数组是使用下标变量来表示数组中的每个元素,数组中的每个变量的数据类型是相同的。
当数组中每个元素都只带有一个下标时,称这样的数组为一维数组

数组的数据类型 数组名[数组大小]
例如:int array[10]
就表示一个有是个元素的整型数组

一维数组的初始化可以在定义时进行

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

如果括号里只有九个数值,那么数组中的第10个元素直接为0

由于数组元素数量较多,又是以连续的下标来表示数组,所以我们也可以用for循环给数组中的元素进行赋值或初始化

数组的赋值

int a[10];
int i;
for(i = 0;i < 10;i++)                   //改变数组下标表示不同的元素
{
     scanf("%d",&a[i]);                 //数组的赋值
}

数组的输出也是通过循环来实现

for(i = 0;i < 10;i++) 
{
    printf("a[%d] = %d",i,a[i]);
}


关于数组里元素的排序
冒泡排序:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数 放后。然后比较第2
个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。在第二趟:仍从第一对数开始比较
(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个 数),将小数放前中,大数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大的数)。如此下去,重复以上过程,直至最终完成排序。

for(i = 0;i < 10;i++)
{
     for(j = 0;j < 10;j++)
     {
           if(a[j] > a[j+1])
           {
               temp  = a[j];
               a[j] = a[j+1];
               a[j+1] = temp;
           }
     }
}

选择排序:就是把每一个数跟数组中的每一个元素比较,然后换位置

for(i = 0;i < 10;i++)
{
     for(j = 0;j < 10;j++)
     {
          if(a[i] > a[j])
          {
          temp = a[i];
          a[i] = a[j];
          a[j] = temp;
          }
     }
}

一维数组中,需要注意的是字符数组
字符数组 就是字符型元素的集合

char array[10];

字符数组用于存字符串 它的初始化和整型数组方式相似

char array[12] = {"hello world"}

这是一个大小为12的字符数组,但它包含的元素只有11个,也就是下标为0~10,最后一个的元素为’\0’是确定的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值