📄 al9_11.c
字号:
/*案例代码文件名:AL9_11.C*/
/*程序功能:指针函数应用示例*/
/****************************************************************/
/*seek()函数:判断是否有不合格成绩 */
/*形参:1个,指向由3个int型元素组成的1维数组的行指针变量 */
/*返回值:(1)有不合格成绩,则返回指向本行首列的一个(列)指针; */
/* (2)没有有不合格成绩,返回值为指向下一行的一个(列)指针 */
/****************************************************************/
int *seek( int (*pnt_row)[3] )
{ int i=0, *pnt_col; /*定义一个(列)指针变量pnt_col */
pnt_col=*(pnt_row+1); /*使pnt_col指向下一行之首(作标志用)*/
for(; i<3; i++)
if(*(*pnt_row+i)<60) /*某项成绩不合格*/
{ pnt_col=*pnt_row; /*使pnt_col指向本行之首*/
break; /*退出循环*/
}
return(pnt_col);
}
/*主函数main()*/
main()
{ static int grade[3][3]={{55,65,75},{65,75,85},{75,80,90}};
int i,j,*pointer; /*定义一个(列)指针变量pointer */
for(i=0; i<3; i++) /*控制每个学生*/
{ pointer=seek(grade+i); /*用行指针作实参,调用seek()函数*/
if(pointer==*(grade+i)) /*该学生至少有一项成绩不合格*/
{ /*输出该学生的序号和各项成绩*/
printf("No.%d grade list: ", i+1);
for(j=0; j<3; j++) printf("%d ",*(pointer+j));
printf("\n");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -