一、C语言编写程序对齐的操作:
单行对齐 命令模式 按 两下 ==
多行对齐: shift+v 选中 按一下 =
全局对齐: 起始行 = 结束行 gg G(shift + g)
二、数组:
一组相同类型的数据的集合
int score1;
int score2;
int score3;
int scoreN; //40
一次性定义多个变量? //本质上是 相同类型变量的集合
集一维数组 二维数组 整型 字符型
---------------------
语法: //定义一个数组
类型说明符 数组名[常量表达式];
(1).类型说明符
整型
int,short,long ,long long
浮点
字符 //基本数据类型
(2).数组名
代表着 数据合 (内存空间的一个名字)
数据类型角度
1. a代表整个数组类型
2. a代表一个值 --数组首元素的地址
(3).[ ] //表示此时定义的是一个 数组
(4).常量表达式
表示数组的长度 --- 变量的个数
eg:
int array[5]; //定义一个数组,这个数组放了5个 int型变量
数组本身也是一种数据类型
int[10] a; //a所代表的类型 int[10]
//a数组名 标识符
//a ---把名字去掉 ,剩下的就是名字对应的数据类型
int a[10]; //数组在内存空间上的特点
数组下标: 本质上是 偏移量
赋值的方式 --- 给数组中输入一些值?
scanf("%d",&a[i]); //
数组的特点:
1.连续性 --一片连续空间
2.有序性 --元素依次存储
3.单一性 --单一类型的元素
4.注意
a.数组名
代表的数据类型 --数组类型 int a[10]; //a所代表的类型为int[10] //数组类型
代表的值 --数组首元素的地址 // &a[0]
b.数组长度 与 下标
数组长度 --表示几个元素(变量)
下标 --偏移量 [0~数组长度-1]
int a[10]; [0~9]
5.数组的初始化
int a[10] = {1,2,3,4,5,6,7,8,9,10}; //全a[i] //下标运算 ---本质 实际是一个地址的运算
下标本质上一个偏移量
总结:
1.数组概念
数组 一组相同类型数据(变量)的集合
2.语法
数据类型 数组名[数组长度];
3.定义
int a[10];
连续性
有序性
单一性部初始化
int a[10] = {1,2,3,4,5}; //部分初始化--依次给到数组元素 ,没有给值的元素,默认初始化为0
将数组初始化为0
int a[10] = {}; //都初始化为0
int a[10] = {0}; //都初始化为0
数组不初始化 ---数组中为垃圾值
6、数组长度可以省略
1)、前提 --必须要有初始化的值.
2)、int a[] = {1,2,3}; //编译器会通过值来计算机 数组长度.
3)、 数组赋值 不能整体赋值.
4)、数组赋值,需要一个元素一个元素个给到 。
选择排序:
为合适的位置,选择一个合适的数
0 1 2 3 4 5 6 7 //下标
1 5 3 6 8 7 2 4 //数值
0号位置:
找最小值
i = 0;
for (j = 1; j < len; ++j)
{
if (a[j] < a[0])
{
交换
}
}
1号位置:
找最小值
i = 1;
for (j = 2; j < len; ++j)
{
if (a[j] < a[1])
{
交换
}
}
for (i = 0; i < len-1; ++i) //位置 i = len-1 ---控制位置
{
//找最小值
//i = 1;
for (j = i+1; j < len; ++j) //找数
{
if (a[j] < a[i])
{
交换
}
}
}