C++求功能是什么,答案不是固定的吧

来源:百度知道 编辑:UC知道 时间:2024/06/05 16:40:39
#include <stdio.h>
int *seek(int (*pnt_row)[3])
{
int i=0,*pnt_col;
pnt_col=*(pnt_row+1);
for(;i<3;i++)
if(*(*pnt_row+i)>60)
{
pnt_col=*pnt_row;
break;
}
return(pnt_col);
}
main ()
{
static int grade[3][3]={{55,65,75},{65,75,85},{75,80,90}};
int i,j,*pointer;
for(i=0;i<3;i++)
{pointer=seek(grade+i);
if(pointer==*(grade+i))
{
for(j=0;j<3;j++) printf("%d ",*(grade+j));
printf("\n");
}
}
while(1);
}

#include <stdio.h>
//首先我猜测了col = column 纵队的意思 row 行,排的意思

int *seek(int (*pnt_row)[3]) //这是一个数组,数组的容量是3,元素是指针
{
int i=0,*pnt_col;
pnt_col=*(pnt_row+1); //pnt_row是指向参数中数组的第一个元素的指针 +1表示指向第二个元素
//pnt_col表示参数第二个元素。pnt_col则为指向{65,75,85}的指针
for(;i<3;i++)
if(*(*pnt_row+i)>60) //循环 pnt_row依然是指向{55,65,75}的指针 +i并在外面用*表示数值依次取 55 65 75
{ //如果这个数字大于60 那么把 就把整个数组的指针赋值给pnt_col
pnt_col=*pnt_row;
break; //然后直接跳出
}
return(pnt_col); //然后返回这个数组的指针 所以此时返回的是指向{55,65,75}的指针
}
void main ()
{
static int grade[3][3]={{55,65,65},{65,75,85},{75,80,90}}; //定义一个二维数组并初始化数值
int i,j,*pointer;
for(i=0;i<3;i++)
{
pointer=seek(grade+i); //grade此时指向的是{55,65,75}
//pointer此时应该是指向{55,65,75}的指针
if(pointer==*(grade+i)) //当此时pointer和grade+i就是传递给seek的指针指向的指针相同则执行下面的程序
{
for(j=0;j<3;j++) printf("%d &qu