c语言结构体输入学生信息并求平均值

学生信息输入

C语言中,我们可以使用结构体来保存一组相关的数据。在下面的示例中,我们将使用结构体来输入学生的基本信息,包括姓名、学号、成绩等。

首先,我们需要定义一个结构体类型,如下所示:

struct Student {
    char name[20];       // 学生姓名
    int num;             // 学生学号
    float score[3];      // 学生成绩
    float avg;           // 学生平均成绩
};

在定义结构体类型之后,我们可以使用该类型来声明一个或多个结构体对象,如下所示:

int main()
{
    struct Student stu1, stu2;
    // 其他操作..
}

接下来,我们可以使用scanf函数来输入学生信息,如下所示:

scanf("%s %d %f %f %f", stu1.name, &stu1.num, &stu1.score[0], &stu1.score[1], &stu1.score[2]);

以上代码将会按照格式字符串中的顺序依次输入学生姓名、学号和3科成绩。同理,我们也可以输入stu2的信息,然后计算每位学生的平均成绩。

计算平均成绩

计算学生平均成绩的公式为:平均成绩 = (第一科成绩+第二科成绩+第三科成绩)/3。我们可以通过下面的代码来实现平均成绩的计算:

stu1.avg = (stu1.score[0] + stu1.score[1] + stu1.score[2]) / 3;
stu2.avg = (stu2.score[0] + stu2.score[1] + stu2.score[2]) / 3;

以上代码将计算出每位学生的平均成绩,并将结果存储在avg字段中。然后我们可以使用printf函数打印出每位学生的信息和平均成绩。

输出学生信息和平均成绩

使用函数printf来输出每位学生的信息和平均成绩,如下所示:

printf("%s %d %.2f %.2f %.2f %.2fn", stu1.name, stu1.num, stu1.score[0], stu1.score[1], stu1.score[2], stu1.avg);
printf("%s %d %.2f %.2f %.2f %.2fn", stu2.name, stu2.num, stu2.score[0], stu2.score[1], stu2.score[2], stu2.avg);

以上代码将按照格式字符串的顺序打印出每位学生的信息和平均成绩,其中“%s”表示打印字符串类型,而“%d”和“%f”分别表示打印整数和浮点数类型。最后,我们可以得到类似下面的输出结果:

John 1 80.50 90.00 88.00 86.17
Mike 2 70.00 82.50 75.50 76.33

以上就是如何使用C语言结构体来输入学生信息并计算平均成绩的方法。通过这篇文章,相信读者已经了解了如何定义结构体类型、声明结构体对象、输入数据、计算平均值和输出结果等基本操作。希望读者可以在实际编程中灵活运用该知识,实现更加复杂的数据处理任务。

本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/cpp6ht7.html

郑重声明:

本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

我们不承担任何技术及版权问题,且不对任何资源负法律责任。

如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。

如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!

(0)
上一篇 2023年4月16日 下午7:09
下一篇 2023年4月16日 下午7:09

猜你喜欢