c语言结构体编程题

  • 格式:pdf
  • 大小:74.71 KB
  • 文档页数:2

题目:编写一个程序,使用结构体表示一个学生的信息,包括姓名、年龄、学号和成绩,并提供相应的函

数进行信息输入、输出和计算平均成绩。

c复制代码

#include

#include

struct student {

char name[20];

int age;

int id;

float score;

};

void input_student(struct student *s) {

printf("请输入学生姓名:");

scanf("%s", s->name);

printf("请输入学生年龄:");

scanf("%d", &s->age);

printf("请输入学生学号:");

scanf("%d", &s->id);

printf("请输入学生成绩:");

scanf("%f", &s->score);

}

void output_student(const struct student *s) {

printf("学生姓名:%s\n", s->name);

printf("学生年龄:%d\n", s->age);

printf("学生学号:%d\n", s->id);

printf("学生成绩:%.2f\n", s->score);

}

float average_score(const struct student *s, int n) {

float sum = 0;

for (int i = 0; i < n; i++) {

sum += s[i].score;

}

return sum / n;

}

int main() {

struct student s[3];

input_student(&s[0]);

input_student(&s[1]);

input_student(&s[2]);

printf("平均成绩为:%.2f\n", average_score(s, 3));

output_student(&s[0]);

output_student(&s[1]);

output_student(&s[2]);

return 0;

}

在这个示例中,我们定义了一个结构体

student来表示学生的信息,包括姓名、年龄、学号和成绩。然

后,我们定义了三个函数

input_student、

output_student和

average_score来分别进行信息输入、输出

和计算平均成绩的操作。在主函数中,我们声明了一个包含三个学生的结构体数组,并使用

input_student函数分别输入三个学生的信息。接着,我们使用average_score函数计算三个学生的平均

成绩,并使用

output_student函数输出三个学生的信息。