【C语言】案例三十 【数组】最大值和最小值

编程入门 行业动态 更新时间:2024-10-09 11:19:30

【C语言】案例三十 【数组】<a href=https://www.elefans.com/category/jswz/34/1768932.html style=最大值和最小值"/>

【C语言】案例三十 【数组】最大值和最小值

案例描述
本案例要求先输入数组的大小和各个数组元素,然后求出数组中的最大值和最小值以及他们所在的位置,依次输出到屏幕上

案例分析
本案例是应用一位数组的典型案例。C语言中规定,只能逐个引用数组中的元素,而不能引用整个数组。在对数组进行判断时,只能通过循环对数组元素进行逐个引用,获取每一个元素值进行两两比较,找出其中的最大和最小元素。

必备知识

  1. 一维数组的定义与初始化
    一位数组也称向量,他以组织具有一位顺序关系的一组同类型数据。在C语言中,一维数组的定义方式如下所示:
数据类型 数组名[常量表达式] 

在上述语法格式中,类型说明符表示数组中所有数据的数据类型,常量表达式是数组的长度,也就是数组中存放元素的个数。例如:

int arr[5] ;

上述代码定义了一个数组,编译器为数组分配储存空间。其中,int是数组的类型,arr是数组的名称,5是数组的长度。值得注意的是:数组占用的内存空间是连续,这样很容易计算数据占用的内存大小和每个元素对应的内存首地址。例如对上式来说,占据的内空间为:5*sizeof(int);

完成数组的定义后,编译器为数组的分配储存空间。这时,如果想使用数组操作数据,还要对数组进行初始化。数组初始化元素值的常见方式有如下三种:
1)直接对数组中的所有元素赋初始值,实例代码如下:

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

2)直接对数组中的部分元素赋初始值,实例代码如下:

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

其他元素的值会被默认为0;

3)对数组全部元素赋值,但不指定长度,示例代码如下:

int arr[] ={1,2,3};

数组长度即为元素个数。

  1. 一维数组的引用
    在程序中 ,经常需要访问数组中的一些元素,因为数组名的本质是存放在内存中地址的常量,所以无法进行任何计算,这时可以通过数组名和下标来引用数组中的元素。一位数组元素的引用方式如下所示:
数组名 [下标] ; 

在上述方式中,下标指的是数组元素的位置,数组元素的下标从0开始,例如,引用数组中第三个元素的方式是:x[2].

案例实现
1.案例设计
(1)先输入数组大小;
(2)利用for循环依次输入数组中的各个元素
(3)分别求出数组元素中的最大值和最小值,并输入到屏幕上

2.完整代码

#include <stdlib.h>
#include <stdio.h>
#include <Windows.h>int main(){int a[50];int MAX,MIN;int i,n;int j = 0 ;int k = 0 ;printf("请输入数组的长度\n");scanf("%d",&n);printf("请依次输入数组中的元素\n");for(i = 0;i < n; i++)scanf("%d",&a[i]);MIN = a[0];for(i = 0;i < n; i++){if (a[i] < MIN){MIN = a[i];j = i + 1;}}MAX = a[0];for(i = 0;i < n; i++){if (a[i] > MAX){MAX = a[i];k = i + 1;}}printf("请输入最小值所在的位置:%d\n",j);printf("最小值是%d\n",MIN);printf("请输入最大值所在的位置:%d\n",k);printf("最大值是%d\n",MAX);system ("pause");return 0;
}

代码运行如下:

OK 结束圆满的一天!

更多推荐

【C语言】案例三十 【数组】最大值和最小值

本文发布于:2024-03-04 14:08:59,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1709473.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:最大值   数组   最小值   案例   语言

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!