当前位置:网站首页>【C语言—零基础第十课】数组王国奇遇记
【C语言—零基础第十课】数组王国奇遇记
2022-07-17 05:04:00 【Super大雄】
前言
博主:Super大雄 (萌新博主一枚)
C语言专栏:0基础学C语言专栏
LeetCode专栏:LeetCode专栏
本期是关于数组王国奇遇记,如有错误请指出谢谢!
给小伙伴们推荐个学习、刷题的网站?
各种面试题应有尽有,刷题刷到你手软!
各种互联网学习资料,各个大厂面试真题从 零基础开始学习,帮你轻松应对各类面试题目,快来充实一下自己吧!
目录
什么是数组?
学了这么长时间的C语言你有没有想过一个问题如果我要把每个学生的成绩存储到变量中,我们应该怎样存储在我们没有学数字之前相信大家应该是设置变量来存储数据。假如一共由10个学生也就是使用十个变量,看起来好像并不多,定义十个变量并不是很吃力。如果是1000个学生,你觉得定义1000个变量吃力吗?当然吃力了。所以我们就引进了一种可以存储多个相同数据类型的数组。
数组就是定义一个变量设置它的长度就可以存放多个数据,引用下标即可以进行存储。
数组可以分为一维数组和多维数组,而我们最常用的就是一维数组和二维数组。
注意:数组的下标从0开始
一维数组
一维数组的定义:
一维数组的定义方式为:类型说明符 数组名【常量表达式】;
int arr[10];错误示范
int arr[10.5];int a=10;
int arr[a];注意:
- 数组定义时,要指定数组的元素个数,方括号中的常量表达式用来表示元素的个数,即数组长度。
- 常量表达式中可以包括常量和符号常量,不能包含变量。
一维数组的引用
数组必须先定义在使用。C语言规定只能逐个引用数组元素,不能一次引用整个数组。
数组元素的表示形式为:数组名 [下标]
int arr[]={0,1,2};
printf("%d\n",arr[1]);结果 1
一维数组的初始化
例1:
int arr[3];
arr[0]=0;
arr[1]=1;
arr[2]=2;例2:
int arr[4]={1,2};例3:
int arr[]={1,2,3};一维数组的引用
求数组中最小的数
#include<stdio.h>
int main(){
int arr[4]={6,5,1,0};
int max=arr[0];
for(int i=0;i<4;i++){
if(max<arr[i])
max=arr[i];
}
printf("%d\n",max);
}二维数组
二维数组的定义的一般形式为:
类型说明符 数组名[常量表达式][常量表达式]
int arr[3][3];二维数组的引用
二维数组元素的表示形式为:数组名[][]
以arr[3][3]为例子
我们可以引用
arr[0][0] arr[0][1] arr[0][2]
arr[1][0] arr[1][2] arr[1][2]
arr[2][0] arr[2][2] arr[2][2]
二维数组的初始化
例1:
int arr[2][2]={
{1,2},{2,2}};arr[0][0]等于1 arr[0][1]等于2
arr[1][0]等于2 arr[1][1]等于2
例2:
int arr[2][2]={1,2,2,2};arr[0][0]等于1 arr[0][1]等于2
arr[1][0]等于2 arr[1][1]等于2
例3:
int arr[2][2]={
{1},{2}};arr[0][0]等于1 arr[0][1]等于0
arr[1][0]等于2 arr[1][1]等于0
例4:
int arr[][2]={1,2,3};arr[0,0]等于0 arr[1,1]等于1
arr[1,0]等于3 arr[1,1]等于0
注意
二维数组不可以省略行下标,但不能省略列下标。
没赋值则行和列都不可以省略
数组可以少赋值但是不可以多赋值
给小伙伴们推荐个学习、刷题的网站?
各种面试题应有尽有,刷题刷到你手软!
各种互联网学习资料,各个大厂面试真题从 零基础开始学习,帮你轻松应对各类面试题目,快来充实一下自己吧!
边栏推荐
猜你喜欢

基于RTX30显卡的ArcGIS Pro2.8深度学习环境配置

Basic operations of index library operation

DSL查询文档

索引库操作基本操作

POC——DVWA‘s SQL Injection

Simple use of directexchange switches.

Asynchronous data SMS verification code

Use of transactions - Django, SQL tools

上传七牛云的方法

Cve-2017-12635 CouchDB vertical privilege bypass vulnerability recurrence
随机推荐
SQL statement learning
Modelarts second training notes
关于当前响应已经调用了方法getOutputStream()
Feature extraction of machine learning (digitization and discretization of category features and digitization of text features)
关于New_Online_Judge_1081_哥德巴赫猜想的思考
Mysql database experiment training 6, data view (detailed)
God rewards hard work, keep loving
【Batch】批量删除中间文件夹-个人研究脚本
POC——DVWA‘s File Upload
TopicExchange交换机简单使用。
数据可视化
POC——DVWA‘s File Inclusion
Order system of middle office
POC——DVWA‘s SQL Injection
Getting started with harmonios
The difference between junit4 and junit5
User management - paging
Elment UI usage
solve [email protected] : `node install. Problems of js`
机器学习之PCA特征降维+案例实践