C语言输入共 n+2 行。 第一行一个正整数 n ,保证 1≤n≤100 ; 接下来 n 行,每行 n 个整数,表示 n 阶方阵 A ,保证每个数的绝对值不超过 100 ; 接下来一行, n 个整数,表示 n 维向量 x ,保证每个数的绝对值不超过 100 。 输出 输出一行一个数,表示二次型 xTAx 的值。
时间: 2023-06-23 07:09:13 浏览: 131
C语言数据结构课程设计报告
这道题目需要我们读入矩阵和向量,然后计算二次型的值。
C语言的代码如下:
```c
#include <stdio.h>
int main()
{
int n;
scanf("%d", &n); // 读入 n
int A[101][101], x[101];
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
scanf("%d", &A[i][j]); // 读入矩阵 A
}
}
for (int i = 0; i < n; i++) {
scanf("%d", &x[i]); // 读入向量 x
}
// 计算二次型的值
int ans = 0;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
ans += A[i][j] * x[i] * x[j];
}
}
printf("%d\n", ans); // 输出答案
return 0;
}
```
首先我们读入矩阵 A 和向量 x,然后通过两层循环计算二次型的值。最后输出答案即可。
阅读全文