一维数组的学习

前言      

        数组(Array)是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标

        数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序的形式组织起来的一种形式。这些有序排列的同类数据元素的集合称为数组。

        数组是用于储存多个相同类型数据的集合。

一维数组

        一维数组是数组中最简单的,它的的元素只需要数组名加一个下标就能唯一的确定。

        熟练掌握一维数组后,对二维数组或多维数组就迎刃而解了。

一、定义一维数组

        类型说明符 数组名 [常量表达式]

        (1) 数组的类型实际上是指数组元素的取值类型。对于同一个数组,其所有元素的数据类型都是相同的。

        (2) 数组名的书写规则应符合标识符的书写规定。

        (3)数组名不能与其它变量名相同。

        (4)方括号中常量表达式表示数组元素的个数,如a[5]表示数组a有5个元素。但是其下标从0开始计算。因此5个元素分别为a[0], a[1], a[2], a[3], a[4]。

        (5) 不能在方括号中用变量来表示元素的个数,但是可以是符号常数或常量表达式,如int a[3+5]是合法的,int a[n]是不合法的。

        (6)允许在同一个类型说明中,说明多个数组和多个变量。

二、引用一维数组

        在引用一维数组元素时只能引用数组元素而不能一次整体的调用全部元素。

        数组名[下标]

        int a[10]:前面有int是定义数组,指定数组包含10的元素。

        t=a[6]:引用a数组的序号为6的元素。

        给大家举个小例子:

#include<stdio.h>
int main()
{int i;int a[10];for(i=0;i<10;i++){a[i]=i;printf("%d",a[i]);}return 0;
}0123456789
PS C:\csay\cyuyan> 

        上面的代码用一个for循环使a[0]到a[9]的值为0~9,最后一 一打印出来。

三、一维数组的初始化

          数组赋值的方法除了用赋值语句对数组元素逐个赋值外, 还可采用初始化赋值的方法。数组初始化赋值是指在数组定义时给数组元素赋予初值。 数组初始化是在编译阶段进行的。这样可减少运行时间,提高效率。

        一维数组的初始化的一般形式为:

         数组类型 数组名[常量表达式]={值,值……值};

        其中,在{ }中的各数据值即为各元素的初值, 各值之间用逗号间隔。

例如: 

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

          相当于

          a[0]=0;

          a[1]=1;

              ...

           a[9]=9;

C语言对数组的初始赋值还有以下几点规定

(1)可以只给部分元素赋初值。当{ }中值的个数少于元素个数时,只给前面部分元素赋值。

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

           表示只给a[0]~a[4]5个元素赋值,而后5个元素未被赋值,系统自动赋0值。


(2)只能给元素逐个赋值,不能给数组整体赋值。 

    例如:给十个元素全部赋1值,只能写为:

          int a[10]={1,1,1,1,1,1,1,1,1,1};

          而不能写为:

          int a[10]=1;

(3)如数组未进行初始化,则全部元素均为机器数。

(4)如给全部元素赋值,则在数组说明中, 可以不给出数组元素的个数。

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

        可写为:

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/652086.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python之FastAPI框架~浅谈sqlalchemy与tortoise

1.前言 一直想理解清楚FastAPI框架的异步框架tortoise&#xff0c;据说这个框架使用起来能够更好地与FastAPI异步框架继承&#xff0c;但是FastAPI框架官方介绍的是sqlalchemy框架&#xff0c;它是同步的&#xff0c;是不支持await的。所以跟数据库进行交互时候&#xff0c;使…

Java项目实战--瑞吉外卖DAY03

目录 P22新增员工_编写全局异常处理器 P23新增员工_完善全局异常处理器并测试 p24新增员工_小结 P27员工分页查询_代码开发1 P28员工分页查询_代码开发2 P22新增员工_编写全局异常处理器 在COMMON新增全局异常捕获的类&#xff0c;其实就是代理我们这些controlle。通过aop把…

spring+drools

引入依赖 <dependency><groupId>com.github.hongwen1993</groupId><artifactId>fast-drools-spring-boot-starter</artifactId><version>8.0.8</version><scope>compile</scope> </dependency>yml配置 spring: …

基于SSM+Shiro+Druid实现的企业资产后台管理系统

系统介绍 系统演示 关注【全栈小白】视频号查看演示视频 随着企业的发展&#xff0c;很多中小企业的规模越来越大&#xff0c;需要管理资产也越来越多&#xff0c;比如显示器&#xff0c;主机&#xff0c;打印机&#xff0c;传真机&#xff0c;复印机&#xff0c;电话&#…

C++提高编程——STL:list容器、set容器和map容器

本专栏记录C学习过程包括C基础以及数据结构和算法&#xff0c;其中第一部分计划时间一个月&#xff0c;主要跟着黑马视频教程&#xff0c;学习路线如下&#xff0c;不定时更新&#xff0c;欢迎关注。 当前章节处于&#xff1a; ---------第1阶段-C基础入门 ---------第2阶段实战…

洛谷p1036选数

[NOIP2002 普及组] 选数 题目描述 已知 n n n 个整数 x 1 , x 2 , ⋯ , x n x_1,x_2,\cdots,x_n x1​,x2​,⋯,xn​&#xff0c;以及 1 1 1 个整数 k k k&#xff08; k < n k<n k<n&#xff09;。从 n n n 个整数中任选 k k k 个整数相加&#xff0c;可分别得…

SAP-PP: BOM选择标识不存在

在MM03 中选择生产版本无法打开 原因是未维护 BOM选择标识 配置路径&#xff1a;生产→物料需求计划→工厂参数→执行工厂参数总体维护→BOM/工艺路线选择 T-CD: OPPQ

flutter极光推送配置厂商通道(华为)笔记--进行中

一、基础集成按照下面官方文档进行 厂商通道相关参数申请教程 集成厂商 集成指南 官方文档&#xff1a;厂商通道回执配置指南 注意&#xff1a;不同厂商对app上架的要求不同&#xff0c;华为、荣耀 对app上架没有硬性要求 遇到问题 1、引入apply plugin: com.huawei.agconn…

Jenkins部署及应用

一. 简介 二. 下载地址源&#xff1a; …

Docker部署Stable-Diffusion-webui

前排提示&#xff1a;如果不想折腾&#xff0c;可直接跳到最后获取封装好的容器&#xff0c;一键运行 :D 前言 乘上AI生成的快车&#xff0c;一同看看沿途的风景。 启一个miniconda容器 docker run -itd -v 宿主机内SD项目路径:/tmp --gpus all --ipc host -p 7860:7860 con…

机器学习---可能近似正确(PAC)、出错界限框架

1. 计算学习理论概述 从理论上刻画了若干类型的机器学习问题中的困难和若干类型的机器学习算法的能力 这个理论要回答的问题是&#xff1a; 在什么样的条件下成功的学习是可能的&#xff1f; 在什么条件下某个特定的学习算法可保证成功运行&#xff1f; 这里考虑两种框架&…

《SPSS统计学基础与实证研究应用精解》视频讲解:数据结构重组(数据重组方式的选择、由变量组到样本观测值组的重组、由样本观测值组到变量组的重组)

《SPSS统计学基础与实证研究应用精解》4.11 视频讲解 视频为《SPSS统计学基础与实证研究应用精解》张甜 杨维忠著 清华大学出版社 一书的随书赠送视频讲解4.11节内容。本书已正式出版上市&#xff0c;当当、京东、淘宝等平台热销中&#xff0c;搜索书名即可。本书旨在手把手教会…

2024年阿里云幻兽帕鲁Palworld游戏服务器优惠价格表

自建幻兽帕鲁服务器租用价格表&#xff0c;2024阿里云推出专属幻兽帕鲁Palworld游戏优惠服务器&#xff0c;配置分为4核16G和4核32G服务器&#xff0c;4核16G配置32.25元/1个月、10M带宽66.30元/1个月、4核32G配置113.24元/1个月&#xff0c;4核32G配置3个月339.72元。ECS云服务…

求x大于等于n的最小因子-codeforce round 921 div2 B

CF的round921div2的B题 题目简介与分析 有一堆废话我就不提了&#xff0c;直奔重点&#xff0c;然后是他问你x分成n个数相加的形式&#xff0c;然后要求这n个数的最大公因数最大&#xff0c;并问你最大时这个最大公因数是多少。 我的思路 我把x看成很多个质因数相乘得到&…

gdb调试std::list和std::vector等容器的方法

GDB中print方法并不能直接打印STL容器中保存的变量&#xff0c;其实只要http://www.yolinux.com/TUTORIALS/src/dbinit_stl_views-1.03.txt这个文件保存为~/.gdbinit 就可以使用它提供的方法方便调试容器 指定启动文件&#xff1a;~/.gdbinit&#xff0c;下面的方法任选其一。…

2024年华为OD机试真题-围棋的气-Python-OD统一考试(C卷)

题目描述: 围棋棋盘由纵横各19条线垂直相交组成,棋盘上一共19x19=361个交点,对弈双方一方执白棋,一方执黑棋,落子时只能将棋子置于交点上。 “气”是围棋中很重要的一个概念,某个棋子有几口气,是指其上下左右方向四个相邻的交叉点中,有几个交叉点没有棋子,由此可知: …

Debian 12.x apt方式快速部署LNMP

一.前期准备 1.建议服务器以最小化方式安装Debian 12。 何为Debian 12最小化安装呢&#xff1f;就是在安装Debian 12选择软件时只勾选SSH server和standard system utilities即可。另外&#xff0c;在分区时建议分一个/data分区&#xff0c;为服务器的数据目录。 2.配置源 #cd …

ffmpeg4.0.4 api-threadmessage-test.c

使用FFmpeg库模拟消息传递的C程序。它创建了一个消息队列以及多个发送者和接收者线程&#xff0c;这些线程在队列中推送和弹出消息。 程序的主要功能包括&#xff1a; 定义了发送者和接收者数据的结构&#xff0c;以及消息的结构。 free_frame函数用于释放消息帧的内存。 sen…

《动手学深度学习(PyTorch版)》笔记4.9

Chapter4 Multilayer Perceptron 4.9 Environment and Distribution Shift 4.9.1 Types of Distribution Shift 在一个经典的情景中&#xff0c;假设训练数据是从某个分布 p S ( x , y ) p_S(\mathbf{x},y) pS​(x,y)中采样的&#xff0c;但是测试数据将包含从不同分布 p T …

leetcode 字符串相关题目

344. 反转字符串 - 力扣&#xff08;LeetCode&#xff09; 题解&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 541. 反转字符串 II - 力扣&#xff08;LeetCode&#xff09; 题解&#xff1a;https://leetcode.cn/problems/reverse-s…