用c语言编程已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写函数 fun,函数的功能是:找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。
时间: 2024-06-06 07:06:56 浏览: 64
void fun(struct student a[],struct student *max)
{
*max = a[0]; // 假设第一个学生的成绩最高
int i;
for(i = 1; i < N; i++)
{
if(a[i].score > max->score) // 如果后面的学生成绩更高
{
*max = a[i]; // 更新最高分学生记录
}
}
}
相关问题
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写函数fun,函数的功能是:找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)。请用c语言完成该函数。
```c
void fun(struct student a[], int n, struct student *p)
{
int i;
*p = a[0]; // 先初始化指针p指向第一个学生记录
for (i = 1; i < n; i++)
{
if (a[i].score > p->score)
{
*p = a[i]; // 更新指针p指向最高分的学生记录
}
}
}
```
用C语言编写一个已知学生的记录,由学号和学习成绩构成,n名学生的数据已存入A结构体数组中,请编写函数fun,该函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定,只有一个最低分),
以下是用C语言编写函数`fun`的代码实现:
```c
#include <stdio.h>
#define N 100 // 最大学生数
typedef struct student {
int num; // 学号
int score; // 成绩
} Student;
void fun(Student A[], int n, Student *p) {
int i;
*p = A[0]; // 初始化最低分学生为数组第一个学生
for (i = 1; i < n; i++) {
if (A[i].score < p->score) { // 如果当前学生的成绩比最低分学生的成绩更低
*p = A[i]; // 更新最低分学生为当前学生
}
}
}
int main() {
Student A[N] = {{1, 80}, {2, 90}, {3, 70}}; // 初始化学生数组
int n = 3; // 学生数
Student p; // 最低分学生
fun(A, n, &p); // 找出最低分学生
printf("Number: %d, Score: %d\n", p.num, p.score); // 输出最低分学生的学号和成绩
return 0;
}
```
在主函数中,首先定义了一个`Student`类型的数组`A`,并初始化了其中的学生记录。然后,定义了一个`Student`类型的变量`p`,用于接收最低分学生的记录。接着,调用函数`fun`,将学生数组`A`、学生数`n`和指向最低分学生记录的指针`&p`传入函数中。函数`fun`的实现过程是:先将最低分学生记录初始化为数组中的第一个学生记录,然后遍历整个学生数组,如果当前学生的成绩比最低分学生的成绩更低,就更新最低分学生为当前学生。最后,在主函数中输出最低分学生的学号和成绩。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)