用指针法求学号,姓名和成绩和
时间: 2024-09-11 18:05:14 浏览: 38
C语言 结构体和指针详解及简单示例
指针法求学号、姓名和成绩和通常涉及到C语言中的结构体和指针操作。首先需要定义一个结构体来存储学生信息,包括学号、姓名和成绩,然后通过指针操作这些结构体数组,计算成绩的总和。
以下是一个简单的示例代码:
```c
#include <stdio.h>
// 定义学生结构体
typedef struct {
char studentID[20]; // 学号
char name[50]; // 姓名
int score; // 成绩
} Student;
int main() {
// 创建一个学生数组
Student students[] = {
{"2019001", "张三", 85},
{"2019002", "李四", 90},
{"2019003", "王五", 78}
};
int totalScore = 0; // 成绩总和
int length = sizeof(students) / sizeof(students[0]); // 学生数组的长度
// 使用指针遍历学生数组,并计算成绩总和
for (Student *ptr = students; ptr < students + length; ptr++) {
totalScore += ptr->score; // 使用指针访问结构体成员
}
// 输出成绩总和
printf("所有学生的成绩总和为: %d\n", totalScore);
return 0;
}
```
在这个例子中,我们首先定义了一个名为`Student`的结构体,包含三个成员:`studentID`(学号),`name`(姓名)和`score`(成绩)。然后创建了一个`Student`类型的数组`students`,并初始化了一些学生数据。接下来,通过一个指针`ptr`遍历这个数组,并将每个学生的成绩累加到`totalScore`变量中。最后,输出所有学生成绩的总和。
阅读全文