有以下程序: #include main() {int x[]={8,2,6,12,5,15},f1,f2; int *p=x: f1=f2=x[0]; for(;p

admin2016-04-07  20

问题 有以下程序:
    #include
    main()
    {int x[]={8,2,6,12,5,15},f1,f2;
    int *p=x:
    f1=f2=x[0];
    for(;p<=x+5;p++)
    {if(f1<*p)f1=*p;
    if(f2>*p)t2=*p;
    }
    printf("%d,%d\n",f1,t2);
    }
    程序的运行结果是(    )。

选项 A、15,2
B、15,15
C、2,15
D、8,8

答案A

解析 本题的用意是求数组的最大值和最小值,首先把数组x首地址的值赋给指针p,故*p初始值为8,而p是地址值,p+1相当于数组中下一元素的地址,在for循环,是求数组x对应的最大值和最小值,fl为最大值,f2为最小值。因此输出为15,2,答案为A选项。
转载请注明原文地址:https://kaotiyun.com/show/3tDp777K
0

最新回复(0)