期中考试过后,李玲语文和数学平均成绩为91分,语文和英语平均成绩88分,数学和英语平均成绩93分,李玲三门功课各得多少分?
时间: 2023-12-13 20:28:58 浏览: 76
设李玲语文、数学、英语三门功课的成绩分别为 $x$、$y$、$z$。
根据题意,我们可以列出以下三个方程组成的线性方程组:
$$
\begin{cases}
\dfrac{x+y}{2}=91 \\
\dfrac{x+z}{2}=88 \\
\dfrac{y+z}{2}=93
\end{cases}
$$
将上述方程组写成矩阵形式为:
$$
\begin{pmatrix}
1 & 1 & 0 \\
1 & 0 & 1 \\
0 & 1 & 1
\end{pmatrix}
\begin{pmatrix}
x \\
y \\
z
\end{pmatrix}
=
\begin{pmatrix}
182 \\
176 \\
186
\end{pmatrix}
$$
对上述线性方程组进行求解,得到 $x=90, y=92, z=94$。
因此,李玲的语文、数学、英语三门功课的成绩分别为 $90$ 分、$92$ 分和 $94$ 分。
相关问题
定义结构体student,包括学号、姓名、年龄、3门课的成绩和总成绩,输入3名同学的信息,计算每个学生的总成绩并输出。 输入 3个学生的信息,每个学生信息各占一行。 输出 每个学生的学号及总成绩,学号与总成绩之间用空格间隔,每个成绩的输出各占一行。 样例输入 复制 2009001 赵岩 18 86 90 82 2009002 王洋 19 92 88 89 2009003 李玲 18 80 85 79 样例输出 复制 2009001 258 2009002 269 2009003 244
好的,请看以下代码实现:
```c++
#include <iostream>
#include <string>
#include <iomanip>
using namespace std;
struct student {
string id; // 学号
string name; // 姓名
int age; // 年龄
int grade[3]; // 3门课的成绩
int sum; // 总成绩
};
int main() {
student stu[3]; // 存放3个学生信息的结构体数组
// 输入3名学生信息
for (int i = 0; i < 3; i++) {
cin >> stu[i].id >> stu[i].name >> stu[i].age;
for (int j = 0; j < 3; j++) {
cin >> stu[i].grade[j];
stu[i].sum += stu[i].grade[j]; // 计算总成绩
}
}
// 输出每个学生的学号及总成绩
for (int i = 0; i < 3; i++) {
cout << stu[i].id << " " << stu[i].sum << endl;
}
// 输出每个学生的成绩
for (int i = 0; i < 3; i++) {
cout << stu[i].id << endl;
for (int j = 0; j < 3; j++) {
cout << setw(4) << stu[i].grade[j] << endl;
}
}
return 0;
}
```
注意:这里使用了 `setw()` 函数来控制输出每个成绩的宽度为4个字符,以便让输出更加整齐。