Tìm vị trí của phần tử nhỏ nhất trong mảng 1 chiều

Yêu cầu:

Tìm vị trí của phần tử nhỏ nhất trong mảng các số nguyên.

Thuật toán:

Viết hàm với tham số đầu vào là mảng 1 chiều, giá trị trả về là vị trí của phần tử nhỏ nhất trong mảng.

Code:

/************************************************************
* Author: VNCODING
* History 
* 2014/10/05 first create VNCODING
*************************************************************/
#include "stdio.h"
#include "conio.h"

#define LEN_MAX 100 // do dai toi da cua mang

int srchMinPos(int A[], int len);

void main()
{
    int arr[LEN_MAX];
    int n;
    int i;
    do 
    {
        printf("\nNhap kich thuoc mang: ");
        scanf("%d", &n);
    }
    while (n > LEN_MAX);

    for (i = 0; i < n;i++)
    {
        printf("\nA[%d] = ", i);
        scanf("%d", &arr[i]);
    }

    printf("\nPhan tu nho nhat xuat hien tai vi tri %d trong mang A", srchMinPos(arr, n));

    getch();
}

int srchMinPos(int A[], int len)
{
    int i, pos = 0;
    int temp;
    temp = A[0];
    for (i = 0; i < len; i++)
    {
        if (temp > A[i])
        {
            temp = A[i];
            pos = i;
        }
    }
    return (pos+1);
}

Kết quả:

Nhap kich thuoc mang: 5
A[0] = 1
A[1] = -3
A[2] = -4
A[3] = 2
A[4] = 7
Phan tu nho nhat xuat hien tai vi tri 3 trong mang A

Be the first to comment

Leave a Reply