📜  C程序使用动态内存分配查找最大数量

📅  最后修改于: 2020-10-04 11:23:10             🧑  作者: Mango

在此示例中,您将学习在动态分配的内存中查找用户输入的最大数字。

在动态分配的内存中找到最大的元素
#include 
#include 
int main() {
    int num;
    float *data;
    printf("Enter the total number of elements: ");
    scanf("%d", &num);

    // Allocating memory for num elements
    data = (float *)calloc(num, sizeof(float));
    if (data == NULL) {
        printf("Error!!! memory not allocated.");
        exit(0);
    }

    // Storing numbers entered by the user.
    for (int i = 0; i < num; ++i) {
        printf("Enter Number %d: ", i + 1);
        scanf("%f", data + i);
    }

    // Finding the largest number
    for (int i = 1; i < num; ++i) {
        if (*data < *(data + i))
            *data = *(data + i);
    }
    printf("Largest number = %.2f", *data);

    return 0;
}

输出

Enter the total number of elements: 5
Enter Number 1: 3.4
Enter Number 2: 2.4
Enter Number 3: -5
Enter Number 4: 24.2
Enter Number 5: 6.7
Largest number = 24.20

在程序中,要求用户输入元素数,该元素数存储在变量num中 。我们将为num个浮点值分配内存。

然后,用户被要求输入NUM数字。这些数字存储在动态分配的内存中。

最后,确定这些数字中最大的数字并将其打印在屏幕上。