第五章 数组

5.1 一维数组

void main()
{
    int A[5],i,min,min_index;

    for(i=0;i<5;i++)
    {
        scanf("%d",&A[i]);
    }

    min = A[0],min_index = 0;

    for(i=1;i<5;i++)
    {
        if(min > A[i])
        {
            min = A[i];
            min_index = i;
        }
    }

    printf("No:%d:%d\n",min_index,min);
    system("pause");
}

求最小数

时间: 2024-10-11 16:54:19

第五章 数组的相关文章

数据结构期末复习第五章数组和广义表

数据结构期末复习第五章 数组和广义表 二维数组A[m][n]按行优先 寻址计算方法,每个数组元素占据d 个地址单元.     设数组的基址为LOC(a11) :LOC(aij)=LOC(a11)+((i-1)*n+j-1)*d     设数组的基址为LOC(a00) :LOC(aij)=LOC(a00)+( i*n+j )*d    二维数组A[m][n]按列优先 寻址计算方法,每个数组元素占据d 个地址单元.     设数组的基址为LOC(a11) :LOC(aij)=LOC(a11)+((j

Java基础知识二次学习--第五章 数组

第五章 数组 时间:2017年4月26日15:11:30~2017年4月26日15:15:54 章节:05章_01节  视频长度:09:30 内容:一维数组的内存分析 心得: Java中数组是引用类型 栈里面存的数组的引用 实际对象在堆内存里面 (C与C++是分配在栈里的) 内存图: 元素为引用数据类型的数组 引用类型的数组如上图 时间:2017年4月26日15:16:22~2017年4月26日15:19:00 章节:05章_02节  视频长度:05:25 内容:数组元素的创建与使用 心得: 首

第五章 数组(1):数组声明和初始化

搞了一年多的android ,现在又回到c语言了,最基础的都不知道了,今天声明数据居然还用变量做大小,罪过啊 数组(array)是若干同类变量的聚合,允许通过统一的名字引用其中的变量.其特定元素通过下标(index)访问.C语言的数组由连续的内存区构成,最低地址对应首元素,最高地址对应末元素. 保存数组所需要的内存量直接与基类型和数组大小有关.对一维数组而言,以字节为单位的总内存量可以这样来确定: 总字节数 = sizeof (基类型)×数组长度 例如,一维数组x int x[100]; 它所占

JAVA-初步认识-第五章-数组-常见操作-选择排序

一. 排序 元素有很多的情况下,我们都希望元素按照指定的方式有一个顺序,比如说由小到大.排序的方式有很多种,我们讲解其中一种. 例子: 对上面的数组中的元素排个序,从小到大.这个想不出来,之前谈论的是两个数比较,得到大的数. 听了视频的一点讲解,突然有了思路,角标0和角标1进行比较后,将元素的大小做了调换,再继续将角标0和剩余角标的元素进行比较,最终保证角标0中的元素是所有角标中最小的.接着重复将角标1和后面角标中的元素进行比较,再得出一个最小的值,如此往复.这里排序的时候,有一点是要注意的,角

JAVA-初步认识-第五章-数组-常见操作-最值

一. 最值 在视频没有讲解怎么做之前,我先提供一个思路.得出最值肯定是一个一个地比较出来的,这种多次的比较操作,那肯定用到循环结构.每一次操作都要得出两个数中的最大值,也就是说还有判断的if语句.相当于说在循环结构语句中嵌套if判断语句.和视频的讲解对比,我唯一欠缺的是没有说明每次比较的数值是个变量. 同视频讲解对比,自己的思路中没有提到功能化函数.我推测的原因是,需求是要获取最大值,而非我想像的输出最大值,输入数组直接得到最大值,这是一种功能. 注解:这上面求解最值,有两种思路.一种是拿元素进

JAVA-初步认识-第五章-数组-第二种定义格式

一. 数组书写的第二种格式 事物为什么会有不同的种类的出现?一定要用发展的眼光看问题. 数组格式1的问题在于,内存中开辟数组空间时,没有定义内部数据的大小,都是默认值.格式2(常规地初始化数组的方式)为了克服这一点,在定义时,直接将数据大小输入数组. 创建数组的同时,指定好了数组中每一个角标位置上的元素. 上面的截图中还显示了格式2的一个便捷写法(静态初始化方式),但是它和格式2稍微有点小区别,后面会谈论到. 二 格式1:需要一个容器,但不明确容器中的具体数据. 格式2:需要一个容器,存储已知的

JAVA-初步认识-第五章-数组-常见操作-遍历

一. 数组操作 定义好数组后,要存储在数组中的数据拿出来操作.怎么取? 对于数组操作最重要的操作有两种,一个是存,另一个是取.同时,基于这两个操作又衍生出常见的功能性操作. 存取的核心思想:对角标的操作. 二. 之前要求的都是输出数组中的单个数据,如果要求输出数据中的全部数据,仔细观看下面的操作.为了提高复用性,可以采用循环结构来书写语句,while和for都可以,但是for定义的局部代码块可以释放变量.数组操作完,就结束了,称为了垃圾,采用for更好. 如果数组内的元素数目特别多,我们要想全部

JAVA-初步认识-第五章-数组-常见操作-冒泡排序

一. 冒泡排序 这里介绍了另一种排序的方法,冒泡排序法.选择排序法比较接近人们正常的思维,一个数据和剩下的说有数据比较. 冒泡排序法是临近的数据间进行比较,大的数据就调到右侧,角标1-2的数据对比,角标2-3的数据对比...... 无论是选择排序还是冒泡排序都是先求最值. 冒泡排序法,是一轮一轮地进行左右两侧的数据进行对比.第一轮将所有数据中最大的数据移动到了最右侧,这种操作的核心在于:一直保证大的数据在右侧,那么经过不断地对调,最大的数据肯定在最后一位中.第一轮将最大的数据移动到了最右边,接下

JAVA-初步认识-第五章-数组-常见操作-排序位置

一. 本节是接着前面的冒泡排序的两种书写格式而来的,是以视频中的两种书写格式为基础讲解的,对于我自己琢磨的不适合.注重视频中讲解的思想. 视频中两种书写格式中,内循环都是一样的,为了他提高复用性,将相同的内循环里的执行语句给功能化. →上面理解错了,无论是选择排序还是冒泡排序,有一个通用的操作,就是调换不同索引位置上的数据. 先不对这个做说明, 二. 深入研究两种排序的源代码书写 经过DOS检验没有问题. 这里再对冒泡排序内循环语句的书写做一个解析,(这个数组操作的这一块知识点,均是建立在循环结