编写函数实现交换两个变量的值。 2.有10个学生,每个学生的数据包括学量(num)、姓名(name[9])、三门课成绩(score[3])、总分 sum、平均分aYB数count()计算总分和平均分,
时间: 2024-09-07 18:02:22 浏览: 49
编写一个函数来交换两个变量的值是编程中常见的操作。以下是一个在C语言中交换两个整数变量值的示例函数:
```c
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
```
在这个函数中,我们使用了一个临时变量`temp`来保存一个变量的值,然后将另一个变量的值赋给第一个变量,最后将临时变量中的值赋给第二个变量。
关于您提到的学生数据处理的需求,我们可以设计一个结构体来存储每个学生的信息,并编写相应的函数来计算每个学生的总分和平均分。下面是一个简单的示例:
```c
#include <stdio.h>
#define STUDENT_COUNT 10
#define NAME_LENGTH 9
#define COURSE_COUNT 3
// 定义学生结构体
typedef struct {
int num; // 学号
char name[NAME_LENGTH + 1]; // 姓名
int score[COURSE_COUNT]; // 三门课成绩
int sum; // 总分
float avg; // 平均分
} Student;
// 函数声明
void count(Student *students, int length);
void printStudent(const Student *student);
int main() {
// 假设已有10个学生的数据
Student students[STUDENT_COUNT];
// 初始化学生数据
// ...
// 计算每个学生的总分和平均分
count(students, STUDENT_COUNT);
// 打印学生信息
for (int i = 0; i < STUDENT_COUNT; i++) {
printStudent(&students[i]);
}
return 0;
}
// 计算总分和平均分的函数实现
void count(Student *students, int length) {
for (int i = 0; i < length; i++) {
students[i].sum = 0;
for (int j = 0; j < COURSE_COUNT; j++) {
students[i].sum += students[i].score[j];
}
students[i].avg = (float)students[i].sum / COURSE_COUNT;
}
}
// 打印学生信息的函数实现
void printStudent(const Student *student) {
printf("学号:%d, 姓名:%s, 总分:%d, 平均分:%.2f\n",
student->num, student->name, student->sum, student->avg);
}
```
在这个示例中,我们定义了一个`Student`结构体来存储学生的各项数据,然后通过`count`函数计算每个学生的总分和平均分。最后,在`main`函数中初始化学生数据,调用`count`函数进行计算,并使用`printStudent`函数打印每个学生的信息。
阅读全文