我们之前已经学习了,整型变量、字符型变量、浮点型变量等存储数据的类型和定义,但是有些时候我们需要更复杂的变量结构来表示一些数据结构。
今天我们来学习两种关于数据的存储及使用的方法,即数组和结构体。以及一个格式输出的函数sprintf。
一、我们首先来看一下数组:
数组,简单来说就是一组有序的、类型相同的数据的集合。
定义: 类型 数组名[常量]
例:
定义一个整型类型的数组并赋初值:
int num[3]={0,1,2};
此数组的名称是num,并且数组的长度为3,即有3个元素,分别是num[0],num[1],num[2],
那么:
num[0] 的数据值就是 0,
num[1]的数据值就是1,
num[2]的数据值就是2.
我们可以看出,数组元素的下标是从0开始的。
数组元素就相当于一个变量,可以给它赋值,如:
num[0] = 3;
num[1] = 4;
num[2] = 5;
那么相应的元素的值就改变了。我们可以用printf 函数输出验证:
#include <stdio.h>
int main()
{
int num[3]={0,1,2};
printf("num[0] = %d, num[1] = %d, num[2] = %d \n", num[0], num[1], num[2]);
num[0] = 3;
num[1] = 4;
num[2] = 5;
printf("num[0] = %d, num[1] = %d, num[2] = %d \n", num[0], num[1], num[2]);
return 0;
}
我们可以在输出结果中看到数组中的值发生了变化,如下图:
当然,数组的类型也可以是之前的float型,char型,以及C语言有的其它数据类型。
需要注意的几个点:
1、 数组定义时,也可以不定义长度,而由初始化的值来决定。
例: char str[ ] = “hello”;
2、 定义字符型数组并赋初值时,可以省略外边的大括号,如1所示,而且系统