c语言实现找最大值最小值位置查找

找最大值最小值位置
从键盘任意输入10个整数,计算并输出最大值和最小值及其它们在数组中的下标位置。

程序运行结果示例1:

Input 10 numbers:1 2 3 4 5 6 7 8 9 10

max=10,pos=9

min=1,pos=0

程序运行结果示例2:

Input 10 numbers:2 4 5 6 8 10 1 3 5 7 9

max=10,pos=5

min=1,pos=6

程序:

#include <stdio.h>
int FindMax(int a[], int n, int *pMaxPos);
int FindMin(int a[], int n, int *pMinPos);
int main()
{
  int a[10], maxValue, maxPos, minValue, minPos, i;
  printf("Input 10 numbers:");
  for (i=0; i<10; i++)
  {
    scanf("%d", &a[i]);       // 输入10个数
  }

  maxValue = FindMax(a, 10, &maxPos); // 找最大值及其所在下标位置
  minValue = FindMin(a, 10, &minPos); // 找最小值及其所在下标位置
  printf("max=%d,pos=%d\n", maxValue, maxPos);
  printf("min=%d,pos=%d\n", minValue, minPos);
  return 0;
}

//函数功能:求有n个元素的整型数组a中的最大值及其所在下标位置,函数返回最大值
int FindMax(int a[], int n, int *pMaxPos)
{
  int i, max;
  max = a[0];       //假设a[0]为最大值
  *pMaxPos = 0;      //假设最大值在数组中的下标位置为0

  for (i=1; i<n; i++)
  {
    if (a[i] > max)
    {
      max = a[i];
      *pMaxPos = i;   //pMaxPos指向最大值数组元素的下标位置
    }
  }
  return max ;
}

//函数功能:求有n个元素的整型数组a中的最小值及其所在下标位置,函数返回最小值
int FindMin(int a[], int n, int *pMinPos)
{
  int i, min;
  min = a[0];       //假设a[0]为最小
  *pMinPos = 0;      //假设最小值在数组中的下标位置为0

  for (i=1; i<10; i++)
  {
    if (a[i] < min)
    {
      min = a[i];
      *pMinPos = i; //pMinPos指向最小值数组元素的下标位置
    }
  }
  return min ;
}

到此这篇关于c语言实现找最大值最小值位置查找的文章就介绍到这了,更多相关c语言 最大值最小值内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • c++通过引用实现三个数字求最大值

    通过这个例子来说明引用的作为函数参数的使用方法. 请看代码: 复制代码 代码如下: #include<iostream>using namespace std;int main(){ void max(int &, int &);//当引用作为函数参数时,声明函数的方法  int a[3]; cout<<"please input three numbers:"; cin>>a[0]>>a[1]>>a[2]; 

  • c语言实现找最大值最小值位置查找

    找最大值最小值位置 从键盘任意输入10个整数,计算并输出最大值和最小值及其它们在数组中的下标位置. 程序运行结果示例1: Input 10 numbers:1 2 3 4 5 6 7 8 9 10 max=10,pos=9 min=1,pos=0 程序运行结果示例2: Input 10 numbers:2 4 5 6 8 10 1 3 5 7 9 max=10,pos=5 min=1,pos=6 程序: #include <stdio.h> int FindMax(int a[], int n

  • java数组算法例题代码详解(冒泡排序,选择排序,找最大值、最小值,添加、删除元素等)

    数组算法例题 1.数组逆序 第一个和最后一个互换,第二个和倒数第二个互换,就相当于把数组想下图一样,进行对折互换,如果数组个数为奇数,则中间保持不变其余元素互换即可 import java.util.Arrays; class Demo12 { public static void main (String[] args) { int[] arr = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; System.out.println(Arrays.toString(arr));

  • numpy找出array中的最大值,最小值实例

    在python中利用numpy创建一个array, 然后我们想获取array的最大值,最小值.可以使用一下方法: 一.创建数组 这样就可以获得一个array的最大值和最小值了. 并且可以利用np.where(np.max(a))来获得最大值,最小值的行和列数. 二.python下对文件的操作 1.移动一个文件夹到另一个文件夹下 首先 import os, skutil 复制文件: shutil.copyfile('oldfile', 'newfile') oldfile和newfile都只能是文

  • C语言编程之初识数组线性查找和二分查找

    目录 线性查找 二分查找 先来了解一下什么是查找, 额,好吧,这没什么可了解的, 就是查找数组中的某个元素的位置或是否存在. 就这,没了.直接了解查找算法吧. 线性查找 线性查找与二分查找有些差别. 数组内元素可以是混乱无序的,即没有按顺序储存.这方法很简单,就是从首元素开始,依此向后查找,比较.仅此而已.运用循环,依次对比. 看代码吧. #include <stdio.h> int main(void) { int arr[] = { 5,4,6,8,7,9,10,2,3,1 }; int

  • C语言实现顺序表的顺序查找和折半查找

    本文实例为大家分享了C语言实现顺序表的顺序查找和折半查找的具体代码,供大家参考,具体内容如下 顺序查找: #include <iostream> using namespace std; int SeqSearch(int r[],int n,int k) { r[0]=k;//下标0用作哨兵存放要查询的数 int i=n; while(r[i]!=k)//不用判断下标i是否越界 { i--; } return i; } int main() { int n; cout<<&quo

  • C语言数据结构之单链表的查找和建立

    目录 单链表的查找 按位查找 按值查找 单链表的建立 尾插法 头插法建立单链表 单链表的查找 其实在单链表的插入和删除中,我们已经使用过单链表的查找方法,因为插入和删除的前提都是先找到对应的结点,所以这里就不再多解释 按位查找 GetElem(L, i):按位查找操作.获取表 L 中第 i 个位置的元素的值 //按位查找 LNode * GetElem(LinkList L, int i) { if (i < 0) return false; LNode *p; //指针p指向当前扫描到的结点

  • C语言二维数组中的查找的实例

    C语言二维数组中的查找的实例 题目描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数 思路描述:一个数字的下方和右方是比它本身大的区域,而左方和上方时比它本身小的区域.选取右上角的数字进行比较,当该数大于指定的数时,舍去该列,当该数小于指定的数时,舍去该行,当相等时,则表示找到 C语言实现: #include<stdio.h> #include<stdlib.h>

  • C语言实现找出二叉树中某个值的所有路径的方法

    本文实例讲述了C语言实现找出二叉树中某个值的所有路径的方法,是非常常用的一个实用算法技巧.分享给大家供大家参考. 具体实现方法如下: #include <iostream> #include <vector> #include <iterator> #include <algorithm> using namespace std; vector<int> result; struct Node { Node(int i = 0, Node *pl

  • C语言实现输入一颗二元查找树并将该树转换为它的镜像

    本文实例讲述了C语言实现输入一颗二元查找树并将该树转换为它的镜像的方法,分享给大家供大家参考.具体实现方法如下: 采用递归方法实现代码如下: /* * Copyright (c) 2011 alexingcool. All Rights Reserved. */ #include <iostream> #include <iterator> #include <algorithm> using namespace std; struct Node { Node(int

  • python求最大值最小值方法总结

    方法一(常规): 代码: count = int(input('输入数据个数:\n')) a = 1 while a <= count: num = int(input('请输入第{}个数:'.format(a))) #字符串中的方法 if a == 1: #这句一定会执行,而且只执行一次,目的就是让你输入的第一个数作为根据与之后的数比较 max = min = num #第二个及以后的数都会走else, else: #第一次走else时,比较中的min和max都是你第一次输入的数,以后走els

随机推荐