C语言程序:查找并输出指定学生成绩

需积分: 9 1 下载量 126 浏览量 更新于2024-08-16 收藏 633KB PPT 举报
本篇C语言学习资料主要介绍如何在程序中实现输出某个学生的成绩。首先,我们有一个二维数组`score`,它是一个包含5行3列的成绩表,每个元素代表一个学生的三门课程成绩。数组定义如下: ``` float score[5][3] = {{65, 98, 76}, {78, 69, 87}, {67, 68, 81}, {80, 65, 98}, {64, 83, 79}}; ``` 程序的核心部分是`find`函数,它接受一个指向二维数组的指针和一个整数`n`作为输入。这个函数的目的是找到数组中第n行的首地址,也就是对应学生的成绩信息。函数实现如下: ```c float *find(float (*pointer)[3], int n) { float *pt; pt = *(pointer + n); // 计算第n行的首地址并返回 return pt; } ``` 在`main`函数中,用户被提示输入要查找的学生编号`m`,然后通过调用`find`函数获取该学生所在行的首地址。获取到地址后,通过一个for循环遍历这行的3个元素(即三门课程的成绩),并使用`printf`函数以格式化的方式输出成绩,保留两位小数: ```c printf("the score of NO.%d are:\n", m); p = find(score, m); // 调用函数获取第m行地址 for (i = 0; i < 3; i++) { printf("%5.2f\t", *(p + i)); // 输出成绩 } ``` 这段代码演示了如何使用C语言中的指针和二维数组来组织和检索学生成绩数据。通过输入学生编号,程序能够快速定位并显示指定学生的具体成绩,这对于管理和分析学生成绩信息非常实用。同时,这段代码也展示了函数的参数传递和返回指针值的基本概念。