函 float *search(float(*pointer)[4],int n)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/andrewgithub/article/details/56487987

书本277页返回指针值的函数,调用函数输出一个学生的全部科目的成绩。
返回指针值函数的妙用

#include <stdio.h>

int main() {
   float score[][4]={{60,70,80,90},{56,68,98,87},{34,65,87,90}};
    float *search(float(*pointer)[4],int n);
    float *p;
    int i,k;
    printf("enter the number of students:");
    scanf("%d",&k);
    printf("The scores of No.%d are:\n",k);
    p=search(score,k);  //调用search函数,返回score[k][0]的地址,并将这一个首地址赋值给一个指针变量
    for(i=0;i<4;i++)
    {
        printf("%d5.2f\t",*(p+i));
        printf("\n");

    }
    return 0;

}
float *search(float(*pointer)[4],int n)   //形参pointer是指向一维数组的指针变量
{
    float *pt;
    pt=*(pointer+n);          //pt的值是&score[k][0]
    return (pt);
    //return (*(pointer+n));
}


猜你喜欢

转载自blog.csdn.net/andrewgithub/article/details/56487987