找出一维数组中最大最小的数,数组在内存中的存储地址

 

找出一维数组中最大最小的数
#include <stdio.h>
//找出一维数组中最大最小的数
int main()
{
    int a[] = {1, 2, 4, 7, 10, 15, 17, 20, 100, 90, -1, 1000, 20001, -99};
    printf("%p\n", &a);
    printf("%p\n", a);
    printf("%p\n", &a[0]); //这三个printf输出的结果会一模一样

    int min, max;
    int len;
    min = a[0];
    max = a[0];
    len = sizeof(a) / sizeof(a[0]);
    printf("len=%d\n", len);
    for (int i=1; i<len; i++) {
        if (min > a[i])
            min = a[i];
        if (max < a[i])
            max = a[i];
    }
    printf("max=%d, min=%d\n", max, min);
    return 0;
}

 

在我的Linux系统上输出的结果为:

0x7fff5f527ff0
0x7fff5f527ff0
0x7fff5f527ff0
len=14
max=20001, min=-99

 

printf("%p\n", &a) 中,&a, a, &a[0],结果都一样。

 

posted @ 2020-04-30 20:13  profesor  阅读(332)  评论(0编辑  收藏  举报