首页 > 其他分享 >数组的定义和引用

数组的定义和引用

时间:2024-07-22 20:24:59浏览次数:9  
标签:定义 int len ++ 引用 数组 sizeof 常量

一、一维数组的定义

1、定义方式:类型说明符  数组名[常量表达式];

(1)数组名的命名规则和变量名相同,遵循标识符命名规则。

(2)在定义数组时,需要指定数组元素的个数,方括号的常量表达式用来表示元素的个数,即数组长度。

(3)常量表达式中可以包括常量和符号常量,不能包含程序运行中可变的值。

2、数组必须先定义,然后使用。

(1)数组元素的表示形式为   数组名[下标]

3、初始化

(1)在定义数组时对数组元素赋予初值,用花括号

(2)可以只给一部分元素赋值

(4)在对全部数组元素赋初值时,由于数据的个数已经确定,因此可以不指定数组长度

4、排序方式

选择排序

int main()
{
    int a[]={2,46,24,21,511,14,22,3,4};
    int len = sizeof(a) / sizeof(a[0]);
    int i,j;
    for(i = 0;i < len - 1;++i)
    {
        for(j = i + 1;j < len;++j)
        {
            if(a[i] > a[j])
            {
                int n;
                n = a[i];
                a[i] = a[j];
                a[j] = n;
            }
        }
    }
    for(i = 0;i < len;++i)
    {
        printf("%d\n",a[i]);
    }
    return 0;
}

冒泡排序

int main()
{
    int a[]={2,46,24,21,511,14,22,3,4};
    int len = sizeof(a) / sizeof(a[0]);
    int i,j;
    for(j = len - 1;j > 0;--j)
    {
        for(i = 0;i < j;++i)
        {
            if(a[i] > a[i + 1])
            {
                int t;
                t = a[i];
                a[i] = a[i + 1];
                a[i + 1] = t;
            }
        }
    }
    for(i = 0;i < len;++i)
    {
        printf("%d\n",a[i]);
    }
    return 0;
}

插入排序 

 

int main()
{
    int a[]={2,46,24,21,511,14,22,3,4};
    int len = sizeof(a) / sizeof(a[0]);
    int i;
    for(i = 1;i < len;++i)
    {
        int j;
        int t = a[i];
        j = i;
        while(j > 0 && a[j - 1] > t)
        {
            a[j] = a[j - 1];
            --j;
        }
        a[j] = t;
    }
    for(i = 0;i < len;++i)
    {
        printf("%d\n",a[i]);
    }
    return 0;
}

标签:定义,int,len,++,引用,数组,sizeof,常量
From: https://blog.csdn.net/m0_63935612/article/details/140618660

相关文章

  • 数组模拟列表
    数组模拟列表:数组下标对应节点data 4 10 5 6R   2  1 2 3 41#include<bits/stdc++.h>2usingnamespacestd;3constintN=110;4intdata[N],L[N],R[N];5inthead=1;6voidlink(intx,inty)7{8R[x]=y;......
  • ##笔记day06-C语言基础:随机数、一维、二维数组、字符数组
    day07笔记1)rand生成随机数1)rand()随机函数头文件:#include<stdlib.h>函数原型:intrand(void);函数功能:生成大于等于0的随机整数参数:void返回值:生成的随机整数2)srand更新随机数种子(srand()函数用于给rand()函数设定种子)头文件:......
  • 【代码随想录训练营第42期 Day6打卡 LeetCode 242.有效的字母异位词 349.两个数组的交
    目录一、序言二、哈希表的相关知识1.基本概念2.常见的哈希结构3.总结三、题目及其题解242.有效的字母异位词题目链接题解思路1思路2思路3349.两个数组的交集题目链接题解202.快乐数题目链接题解1.两数之和题目链接题解思路1思路2四、小结一、序言......
  • 定制化智能:Mojo模型与自定义损失函数的深度融合
    定制化智能:Mojo模型与自定义损失函数的深度融合在机器学习领域,损失函数是衡量模型预测值与实际值差异的关键指标,它直接影响到模型训练的效果和最终性能。Mojo模型,作为一种高效的模型部署方式,其对自定义损失函数的支持是实现高级机器学习应用的重要特性。本文将详细探讨Mojo......
  • php通用防伪溯源查询系统可自定义字段
    性能描述:1.适合中小规模查询,建议100万条以内(具体视服务器配置)。2.自定义前台是否使用验证码,即可以自行开启/关闭验证码。3.灵活支持N列内容,只要前几列按照规则;其余列均自定义内容。4.可单个新加,也可以批量外部导入。。。后台功能:1.单管理员登录页面,修改密码页面......
  • 自定义测试器
    测试器测试器总是返回一个布尔值,它可以用来测试一个变量或者表达式,使用”is”关键字来进行测试。{%setname='ab'%}{%ifnameislower%}<h2>"{{name}}"arealllowercase.</h2>{%endif%}测试器本质上也是一个函数,它的第一个参数就是待测试的变量,在模板中使......
  • ELK用途及定义
    文章目录一、ELK的组成1.Elasticsearch2.Logstash3.Kibana二、ELK的应用场景三、ELK的扩展与优势小结ELK是Elasticsearch、Logstash、Kibana三个开源软件的缩写,它们都是开源软件,通常配合使用,并且都先后归于Elastic.co企业名下,故被简称为ELK协议栈。一、EL......
  • 后端API接口定义返回编码规则
    code状态码code返回状态码,一般小伙伴们是在开发的时候需要什么,就添加什么。如接口要返回用户权限异常,我们加一个状态码为101吧,下一次又要加一个数据参数异常,就加一个102的状态码。这样虽然能够照常满足业务,但状态码太凌乱了。我们应该可以参考HTTP请求返回的状态码(下面是常见的......
  • JAVA值传递和引用传递
    值传递在调用方法时,将实参传递给了形参,但方法中无法通过改变形参直接改变实参。//值传递publicclassDemo{publicstaticvoidmain(String[]args){inta=1;System.out.println(a);//1Demo04.change(a);System.out.println(a);......
  • 当我在 MongoDB 上使用 $push 更新数组时避免出现重复值
    我想使用Python将一些值推入数组。也许下次当我更新数组时,它会插入一些存在的值,因此它会得到一些重复的值。我想知道是否有可以避免的重复值。我应该使用db.collection.find()来确定是否应该插入吗?db.graph.insert_one({"user_id":a.url},)forjina.followe......